Java第四十五天,SpringBoot框架系列,SpringBoot基础(五)

一、SpringBoot整合Mybatis

1.添加Mybatis的起步依赖(pom.xml文件)

<!--mybatis起步依赖-->
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>X.X.X</version>
</dependency

2.添加数据库驱动坐标(pom.xml文件)

<!-- MySQL连接驱动 -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
</dependency>

3.添加数据库连接信息(在resources目录下新建 *.properties 文件)

#DB Configuration:
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/[数据库名]?useUnicode=truecharacterEncoding=utf8
spring.datasource.username=[用户名]
spring.datasource.password=[密码]


//上面的键值不可以自定义;需要根据springBoot已经定义好的键值进行设置;其路径如下:

maven-store/org/springframework/boot/spring-boot-autoconfigure/X.X.X.RELEASE/spring-boot-autoconfigure-X.X.X.RELEASE.jar!/META-INF/spring-configuration-metadata.json

4.根据数据库的表创建实体类

-- ----------------------------
-- Table structure for `user`
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(50) DEFAULT NULL,
`password` varchar(50) DEFAULT NULL,
`name` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of user
-- ----------------------------
INSERT INTO `user` VALUES ('1', 'zhangsan', '123', '张三');
INSERT INTO `user` VALUES ('2', 'lisi', '123', '李四');
public class User {
    // 主键
    private Long id;
    // 用户名
    private String username;
    // 密码
    private String password;
    // 姓名
    private String name;

    ......(get、set方法)
}

5.在resource目录下新建Mapper文件(UserMapper.xml)

<?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" >

<mapper namespace="com.lanyue.mapper.UserMapper">
    <select id="queryUserList" resultType="user">
        select * from user
    </select>
</mapper>

6.完成 Dao 层的接口

// @Mapper标记该类是一个mybatis的mapper接口,可以被spring boot自动扫描到spring上下文中
@Mapper
public interface UserDao {
    public List<User> queryUserList();
}

7.在上面第三步中新添加的 *.properties 文件中添加以下信息

#spring集成Mybatis环境
#pojo别名扫描包
mybatis.type-aliases-package=com.lanyue.domain
#加载Mybatis映射文件
mybatis.mapper-locations=classpath:mapper/*Mapper.xml


# key 值已由 springboot 提供,不可以自定义,可根据以下路径查找
/maven-store/org/mybatis/spring/boot/mybatis-spring-boot-autoconfigure/X.X.X/mybatis-spring-boot-autoconfigure-X.X.X.jar!/META-INF/spring-configuration-metadata.json

8.定义 Controller 类,测试配置是否成功

@Controller
public class MapperController {

    @Autowired
    private UserMapper userMapper;

    @RequestMapping("/queryUser")
    @ResponseBody
    public List<User> queryUser(){
        List<User> users = userMapper.queryUserList();
        return users;
    }    
}

二、SpringBoot整合Junit

在 pom.xml 配置文件中添加如下依赖

<!--测试的起步依赖-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
</dependency>

三、SpringBoot整合Spring Data JPA

1.在 pom.xml 配置文件中添加如下起步依赖

<!-- springBoot JPA的起步依赖 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

<!-- MySQL连接驱动 -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
</dependency>

2.在上面新建的 *.properties 配置文件中添加如下 JPA 相关信息

#JPA Configuration:
spring.jpa.database=MySQL
spring.jpa.show-sql=true
spring.jpa.generate-ddl=true
spring.jpa.hibernate.ddl-auto=update
spring.jpa.hibernate.naming_strategy=org.hibernate.cfg.ImprovedNamingStrategy

四、SpringBoot整合Redis

1.在 pom.xml 文件中添加起步依赖

<!-- 配置使用redis启动器 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>

2.在上面生成的 *.properties 配置文件中添加如下信息

#Redis
spring.redis.host=127.0.0.1
spring.redis.port=6379
作者:蓝月

-------------------------------------------

个性签名:能我之人何其多,戒骄戒躁,脚踏实地地走好每一步

原文地址:https://www.cnblogs.com/viplanyue/p/13573705.html