SpirngBoot 学习 整合mybatis
加入依赖
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| <!--JDBC--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <!--mybatis--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.0.1</version> </dependency> <!--Mysql--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency>
|
再下面的plugins 加入
1 2 3 4 5 6 7 8 9 10
| <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.1</version> <configuration> <configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile> <overwrite>true</overwrite> <verbose>true</verbose> </configuration> </plugin>
|
新建 application.yml
在 resources 文件夹下新建 application.yml
在配置文件里面不要使用中文注释,非常容易乱码
mysql://127.0.0.1/t?…. 这里的t修改为自己的数据库名字
?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8
这一段是使用了Unicode编码,另外把字符集编码设为utf-8防止乱码,服务器时间设为+8地区
(注意缩进问题)
1 2 3 4 5 6 7 8 9 10 11
| server: port: 8080 spring: datasource: url: jdbc:mysql://127.0.0.1/t?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMT%2B8 username: root password: root driver-class-name: com.mysql.cj.jdbc.Driver mybatis: mapper-locations: classpath:mapper/*.xml type-aliases-package: com.keac
|
建立 generator
在 resources 下面建立一个文件夹叫做 generator ,再在这个文件夹下面新建 generatorConfig.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| <?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"> <generatorConfiguration> <!-- 数据库驱动:选择你的本地硬盘上面的数据库驱动包--> <classPathEntry location="C:\Users\11765\.m2\repository\mysql\mysql-connector-java\8.0.15\mysql-connector-java-8.0.15.jar"/> <context id="DB2Tables" targetRuntime="MyBatis3"> <commentGenerator> <property name="suppressDate" value="true"/> <!-- 是否去除自动生成的注释 true:是 : false:否 --> <property name="suppressAllComments" value="false"/> </commentGenerator> <!--数据库连接驱动类,URL,用户名、密码 --> <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1/t?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf-8" userId="root" password="root"> <property name="nullCatalogMeansCurrent" value="true"/> </jdbcConnection> <javaTypeResolver> <property name="forceBigDecimals" value="false"/> </javaTypeResolver> <!-- 生成(实体)模型的包名和位置--> <javaModelGenerator targetPackage="com.keac.pojo" targetProject="src\main\java"> <property name="enableSubPackages" value="true"/> <property name="trimStrings" value="true"/> </javaModelGenerator> <!-- 生成XML映射文件的包名和位置--> <sqlMapGenerator targetPackage="resources.mapper" targetProject="src\main"> <property name="enableSubPackages" value="true"/> </sqlMapGenerator> <!-- 生成DAO接口的包名和位置--> <javaClientGenerator type="XMLMAPPER" targetPackage="com.keac.mapper" targetProject="src\main\java"> <property name="enableSubPackages" value="true"/> </javaClientGenerator> <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名--> <table tableName="user" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table> </context> </generatorConfiguration>
|
在这个地方可能会爆红

在设置里面添加以下

修改数据驱动包位置

复制自己驱动包的位置,放到 classPathEntry location=”” 这里面

按照注释修改下配置
在最后的table里面写入自己的表面
generator运行配置

新建一个Maven 命名为 generator 在里面 打上 mybatis-generator:generate -e

配置好之后运行 generator
之后就可以看到下多出了几个文件夹,可以看到mysql已经被映射为实体类了

在主函数上面加入,配置扫描mapper的文件路径
1
| @MapperScan(basePackages = "com.keac.mapper")
|
1 2 3 4 5 6
| @Autowired private UserMapper userMapper; @RequestMapping("/index") public String index(){ return userMapper.selectByPrimaryKey(1).getName(); }
|
访问/index后可以看到从数据库里面查出来的name
