Spring Boot 集成 mybatis(二)
1.Idea中配置maven
- 点击Configure中的Settings按钮
-
查找maven
-
修改idea中的maven配置
- Maven home directory:是Maven压缩包解压的地址。
- User setting files:是指Maven压缩包的中的setting文件。
- Local repository:是指依赖包下载路径。
2.新建工程
- 创建一个新工程
- 选择Spring Initialer -> 点击Next
- 修改Group和Artifact->点击next
- 选择web和sql
- 工程结构图
-
工程目录说明:
-
generator:mybatis反向工程的配置(下面会将如何自动生成代码)
-
<?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="E:\developer\mybatis-generator-core-1.3.2\lib\mysql-connector-java-5.1.25-bin.jar"/> <context id="DB2Tables" targetRuntime="MyBatis3"> <commentGenerator> <property name="suppressDate" value="true"/> <!-- 是否去除自动生成的注释 true:是 : false:否 --> <property name="suppressAllComments" value="true"/> </commentGenerator> <!--数据库链接URL,用户名、密码 --> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1/mytest" userId="root" password="1234"> </jdbcConnection> <javaTypeResolver> <property name="forceBigDecimals" value="false"/> </javaTypeResolver> <!-- 生成模型的包名和位置--> <javaModelGenerator targetPackage="com.lx.master.entity" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> <property name="trimStrings" value="true"/> </javaModelGenerator> <!-- 生成映射文件的包名和位置--> <sqlMapGenerator targetPackage="mapping" targetProject="src/main/resources"> <property name="enableSubPackages" value="true"/> </sqlMapGenerator> <!-- 生成DAO的包名和位置--> <javaClientGenerator type="XMLMAPPER" targetPackage="com.lx.master.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>
3.添加pom依赖
- 这里的依赖是分页和****的依赖
-
<!--****--> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.2</version> <configuration> <configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile> <overwrite>true</overwrite> <verbose>true</verbose> </configuration> </plugin> <!--分页插件--> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.3</version> </dependency>
4.****
- 第一步点击run-》edit configurations
- 第二步 进入页面没有maven选项,我们点击“+”号添加maven
- 添加后
在命令行输入:
mybatis-generator:generate -e 保存配置
- 点击运行
- 查看代码是否生成
5.添加application-dev.yml配置
server:
port: 8080
spring:
datasource:
driverClassName: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/contract?serverTimezone=GMT%2B8
username: root
password: 1234
jpa:
hibernate:
ddl-auto: update
showsql: true
mybatis:
# 所有mapping地址
mapper-locations: classpath:mapping/*.xml
6.添加扫描mapper注解
@SpringBootApplication
//扫描mapper
@MapperScan("com.lx.master.mapper")
public class MasterApplication {
public static void main(String[] args) {
SpringApplication.run(MasterApplication.class, args);
}
}
7.编写一个查询api
- api:
@RestController
public class ContractController {
@Autowired
ContractService contractService;
@GetMapping(value = "/contract/{id}")
public com.lx.master.entity.contract selectByPrimaryKey(@PathVariable("id")int id){
return contractService.selectByPrimaryKey(id);
}
- service
-
package com.lx.master.service; import com.lx.master.entity.contract; import com.lx.master.mapper.contractMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service public class ContractService { @Autowired contractMapper contract; public contract selectByPrimaryKey(int id){ return contract.selectByPrimaryKey(id); } }
8.访问api