SSM框架的搭建环境(Spring,SpringMVC,Mybatis)
使用工具:maven、idea、tomcat用的是8、jdk版本1.8
一、整个项目的结构:
用户模块流程
pom.xml -> web.xml -> db->model (此处是User,与数据库中的字段名相同) -> UserMapper -> UserMapper.xml(这里是用的mybatis映射,直接动态实现dao接口的实现类) -> UserService -> UserServiceImpl -> UserController,这就是一个大体流程,下面开始介绍模块完成:
- 新建maven项目、按照自己的需要新建相关的文件夹:
- maven中的pom.xml文件添加依赖:
- 配置web.xml
- spring整合mybatis(dao层)的配置文件:spring-dao.xml
-
UserService层接口及实现类:UserService,UserServiceImpl
-
Spring整合Service层的配置文件:spring-service.xml
-
mybatis-config.xml配置文件
-
web层的实现(controller层,springmvc):UserController
-
Spring整合controller层的配置文件:spring-web.xml
-
JSP页面:login.jsp,fail.jsp,anotherpage.jsp,success.jsp
以上这些操作参考博文:SSM搭建(整合)+用户模块(登录和注销)实现
二、接下来介绍如何使用mybatis自动生成代码:
可以参考我之前的一篇:如何使用mybatis自动生成代码:
1、配置pom.xml:
添加plugin:
<!-- 自动生成代码插件 -->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
<!--指定配置文件的名称,默认是 ${basedir}/src/main/resources/generatorConfig.xml-->
<configurationFile>${mybatis.generator.generatorConfig.xml}</configurationFile>
<!--指定该参数,则生成java文件时,直接覆盖原来的文件.默认是false,即会对生成的java文件进行编号来标记不是相同的执行结果,由用户来自行合并java文件-->
<overwrite>true</overwrite>
<!--如果指定该参数,则会输出执行过程-->
<verbose>true</verbose>
</configuration>
</plugin>
设置配置文件的位置:
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
<!--设置mybatis-generator配置文件位置--><mybatis.generator.generatorConfig.xml>${basedir}/src/test/resources/generatorConfig.xml</mybatis.generator.generatorConfig.xml>
<mybatis.generator.generatorConfig.properties>file:///${basedir}/src/test/resources/generatorConfig.properties</mybatis.generator.generatorConfig.properties>
</properties>
2、配置文件generatorConfig.properties、generatorConfig.xml
generatorConfig.properties:
# 数据库驱动jar 路径
drive.class.path=E:/Java Web/maven/repositoryBus/mysql/mysql-connector-java/5.1.30/mysql-connector-java-5.1.30.jar
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/user?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
jdbc.username=root
jdbc.password=
# 包路径配置
model.package=com.gis.db.model
dao.package=com.gis.db.dao
xml.mapper.package=com.gis.db.dao
target.project=src/main
generatorConfig.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<!-- 配置Run As Maven build : Goals 参数 : mybatis-generator:generate -Dmybatis.generator.overwrite=true -->
<!-- 配置 tableName,使用 Run As Maven build 生成 dao model 层 -->
<generatorConfiguration>
<!-- 配置文件路径 -->
<properties url="${mybatis.generator.generatorConfig.properties}"/>
<!-- <properties resource="generatorConfig.properties"/>-->
<!--数据库驱动包路径 -->
<classPathEntry location="${drive.class.path}"/>
<context id="DB2Tables" targetRuntime="MyBatis3">
<!--关闭注释 -->
<commentGenerator>
<property name="suppressAllComments" value="true"/>
</commentGenerator>
<!--数据库连接信息 -->
<jdbcConnection driverClass="${jdbc.driver}" connectionURL="${jdbc.url}" userId="${jdbc.username}"
password="${jdbc.password}">
</jdbcConnection>
<!--生成的model 包路径 -->
<javaModelGenerator targetPackage="${model.package}" targetProject="${target.project}">
<property name="enableSubPackages" value="ture"/>
<property name="trimStrings" value="true"/>
</javaModelGenerator>
<!--生成xml mapper文件 路径 -->
<sqlMapGenerator targetPackage="${xml.mapper.package}" targetProject="${target.project}">
<property name="enableSubPackages" value="ture"/>
</sqlMapGenerator>
<!-- 生成的Dao接口 的包路径 -->
<javaClientGenerator type="XMLMAPPER" targetPackage="${dao.package}" targetProject="${target.project}">
<property name="enableSubPackages" value="ture"/>
</javaClientGenerator>
<!--对应数据库表名 -->
<table tableName="user" domainObjectName="User" >
</table>
</context>
</generatorConfiguration>
3、使用mybatis自动生成代码:
在Intellij IDEA添加一个“Run运行”选项,使用maven运行mybatis-generator-maven-plugin插件
点击 菜单run中Edit Configurations,会出现:
点击+号,选择maven,会出现
在name和Commond line分别填上如上图所示,apply和ok
最后点击generator,生成model,mapper,dao
源码地址:需要请留言~