在进行整合之前,小编先提醒大家一下,一定要注意你所使用的jar包的版本!
注意jar包版本!
注意jar包版本!
注意jar包版本!
重要的事情说三遍,这个真的很重要,小编就在这个地方栽了很多跟头。
好了,废话不多说,下面进入正题:
第一步:配置pom.xml文件
<project xmlns=http://maven.apache.org/POM/4.0.0 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion>
<groupId>com.steven</groupId> <artifactId>spring-boot-mybatis</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging>
<name>spring-boot-mybatis</name> <url>http://maven.apache.org</url>
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.1.RELEASE</version> </parent>
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <!-- 指定jdk版本 --> <java.version>1.8</java.version> </properties>
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>test</scope> </dependency>
<!-- spring-boot-starter-web:MVC,AOP的依赖包 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
<!-- mysql驱动依赖 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency>
<!-- mybatis依赖 --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.0</version> </dependency>
<!-- 分页助手,如果需要的话,可以引入该依赖 --> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>4.1.0</version> </dependency> </dependencies> </project> |
第二步:在src/main/resources文件夹下创建一个application.properties文件,配置数据库信息
spring.datasource.url=jdbc:mysql://localhost:3306/springboot spring.datasource.username=root spring.datasource.password=root spring.datasource.driver-class-name=com.mysql.jdbc.Driver |
第三步:编写实体类Demo.java
public class Demo {
private long id; private String name; public long getId() { return id; } public void setId(long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } |
第四步:编写Controller类
@RestController public class DemoController {
@Autowired private DemoService demoService;
@RequestMapping("/likeName") public List<Demo> likeName(String name) { PageHelper.startPage(1, 2); //设置分页信息 return demoService.likeName(name); }
@RequestMapping("/save") public String save(Demo demo) { demoService.save(demo); return "保存成功"; } } |
第五步:编写Service层代码
@Service public class DemoService {
@Autowired private DemoMapper demoMapper;
public List<Demo> likeName(String name) { return demoMapper.likeName(name); }
@Transactional public void save(Demo demo) { demoMapper.save(demo); } } |
这里配置了事务的管理
第六步:编写Mapper类
public interface DemoMapper {
//#{name}:参数占位符 @Select("select * from Demo where name = #{name}") public List<Demo> likeName(String name);
@Select("select * from Demo where id = #{id}") public Demo getById(long id);
@Select("select name from Demo where id = #{id}") public String getNameById(long id);
@Insert("insert into Demo(name) values(#{name})") public void save(Demo demo); } |
第七步:将分页的配置信息注入进去(如果需要的话)
@Configuration public class MyBatisConfiguration { @Bean public PageHelper pageHelper() { PageHelper pageHelper = new PageHelper(); Properties p = new Properties(); p.setProperty("offsetAsPageNum", "true"); p.setProperty("rowBoundsWithCount", "true"); p.setProperty("reasonable", "true"); pageHelper.setProperties(p); return pageHelper; } } |
第八步:编写启动项
@SpringBootApplication @MapperScan("com.steven.*") //扫描,该包下相应的class,主要是Mybatis的持久化类。 public class App { public static void main( String[] args ) { SpringApplication.run(App.class, args); } } |
这里需要注意一下,要添加@MapperScan()对相应的类进行扫描,主要是扫描持久化类,即Mapper类。
由于没有编写表单,所以在访问的时候,要在地址栏中输入参数:http://localhost:8080/save?name=jack