文章目录
SpringBoot整合持久层框架
一、创建SpringBoot项目
二、在 pom.xml 文件中添加依赖
添加Mybatis依赖、数据库驱动依赖、数据库连接池依赖。
<!-- Mybatis 启动器 -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency>
<!-- mysql 数据库驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- druid 数据库连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.0.9</version>
</dependency>
三、创建数据库表
CREATE TABLE `book` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(128) DEFAULT NULL,
`author` varchar(64) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
insert into book(id, name, author)values(1, '三国演义', '罗贯中');
四、配置数据源及连接数据库的4大参数
#配置连接数据库的一些信息
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.url=dbc:mysql://localhost:3306/entryLevel?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
spring.datasource.username=root
spring.datasource.password=root
#配置数据源,数据源的全称
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
五、使用代码生成器生成实体类和数据库访问层
public class Book {
private String name;
private String author;
}
@Mapper
public interface BookMapper {
void insertBook(Book book);
List<Book> selectBookAll();
Book selectBookById(Integer id);
void updateBook(Book book);
void deleteBookById(Integer id);
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- namespace="" 必须和接口的名称相同 -->
<mapper namespace="com.company.entryLevel.mapper.BookMapper">
<insert id="insertBook" parameterType="com.example.demo01.book.bean.Book">
insert into book(name, author)values(#{name},#{author})
</insert>
<delete id="deleteBookById">
delete from book where id = #{id}
</delete>
</mapper>
六、创建Service和Controller
//这是Service接口,实现类在次不写;
public interface BookService {
// 新增书籍
int addBook(Book book);
// 查询所有书籍
public List<Book> findBookAll();
// 通过ID查询书籍
public Book findBookById(Integer id);
//通过ID删除书籍信息
public int deleteBookById(Integer id);
//修改书籍信息
public int updateBook(Book book);
}
@RestController
public class BookController {
@GetMapping("/bookOps")
public void bookOps() {
Book bl = new Book();
bl.setName("西厢记");
bl.setAuthor("王实甫");
int i = bookService.addBook(bl);
System.out.println("addBook>>" + i);
List<Book> allBooks = bookService.findBookAll();
System.out.println("getAllBooks>>" + allBooks);
}
}
七、配置pom.xml
在Maven 工程中,XML 配置文件建议写在 resources 目录下,但是上文的 Mapper.xml 文件写在Mapper包下,Maven 项目在运行时会忽略Mapper包下的 XML 文件,因此需要在 pom .xml 文件中重新指明资源文件位置,配置如下
<build>
<!-- 重新指明资源文件的位置 -->
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
</build>