教程简介
本项目内容为Spring Boot教程样例。目的是通过学习本系列教程,读者可以从0到1掌握spring boot的知识,并且可以运用到项目中。如您觉得该项目对您有用,欢迎点击收藏和点赞按钮,给予支持!!教程连载中,欢迎持续关注!
环境
IDE: Eclipse Neon
Java: 1.8
Spring Boot: 1.5.12
数据库:MYSQL
本章简介
上一节介绍了Spring Boot JPA完成数据层访问,本节将介绍另外一种持久层框架MyBatis,并且将Spring Boot整合MyBatis完成数据层访问。
配置
基于教程(一)的项目进行操作,在pom.xml文件下面添加:
<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.3.2</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency>
修改application.properties
spring.datasource.url = jdbc:mysql://localhost:3306/demo?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8
spring.datasource.username = root
spring.datasource.password = 123456
spring.datasource.driverClassName = com.mysql.jdbc.Driver
创建数据库表
在MYSQL中demo数据库里面运行一下SQL:
DROP TABLE IF EXISTS `t_user`;
CREATE TABLE `t_user` (`id` BIGINT(20) NOT NULL AUTO_INCREMENT,`name` varchar(20) NOT NULL,`pass` varchar(8) NOT NULL,PRIMARY KEY (`id`)
)
创建实体和数据访问接口
创建包com.example.demo.model,创建实体User
public class User implements Serializable{private static final long serialVersionUID = -853504493430501564L;private Long id;private String name;private String pass;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;}public String getPass() {return pass;}public void setPass(String pass) {this.pass = pass;}}
创建包com.example.demo.mapper, 创建User映射的Mapper:UserMapper
@Mapper
public interface UserMapper {@Select("SELECT * FROM USER WHERE NAME = #{name}")User findByName(@Param("name") String name);@Insert("INSERT INTO USER(NAME, PASS) VALUES(#{name}, #{pass})")int save(@Param("name") String name, @Param("pass") String pass);}
创建控制器
在com.example.demo.api下面创建User控制器UserController, 用于测试web访问
@RestController
public class UserController {@Autowiredprivate UserMapper userMapper;@RequestMapping("/saveUser")public void save() {userMapper.save("ajay", "123456");}@RequestMapping("/findByName")public User findByName(String name) {return userMapper.findByName(name);}}
程序运行和调试
在Application类中,启动程序。浏览器输入http://localhost:8080/saveUser
http://localhost:8080/findByName?name=ajay
代码:gitee.com/shaojiepeng/SpringBootCourse