springboot学习day04

96 阅读1分钟

整合mybatis

  • 添加pom.xml
<dependency>  
<groupId>org.mybatis.spring.boot</groupId>  
<artifactId>mybatis-spring-boot-starter</artifactId>  
<version>2.1.4</version>  
</dependency>  
  
<dependency>  
<groupId>mysql</groupId>  
<artifactId>mysql-connector-java</artifactId>  
<version>8.0.29</version>  
<!-- <scope>runtime</scope>-->  
</dependency>
  • 配置 yml
server:  
    port: 8081  
spring:  
    config:  
        activate:  
            on-profile: dev  
    data:  
        redis:  
            host: 127.0.0.1  
            port: 6379  
    datasource:  
        url: jdbc:mysql://localhost:3306/user?serverTimezone=serverTimezone=GMT%2B8&characterEncoding=utf8&useSSL=true  
        username: root  
        password: root  
        driver-class-name: com.mysql.cj.jdbc.Driver
  • 配置mybatis-config.xml
<?xml version="1.0" encoding="UTF-8"?>  
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"  
"http://mybatis.org/dtd/mybatis-3-config.dtd">  
<configuration>  
<environments default="development">  
<environment id="development">  
<transactionManager type="JDBC"/>  
<dataSource type="POOLED">  
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>  
<property name="url" value="jdbc:mysql://localhost:3306/user"/>  
<property name="username" value="root"/>  
<property name="password" value="root"/>  
</dataSource>  
</environment>  
</environments>  
<mappers>  
<mapper resource="mapper/UserMapper.xml"></mapper>  
</mappers>  
</configuration>
  • 配置 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.ivan.mapper.UserMapper">  
    <select id="findAll" resultType="com.ivan.domain.User">  
    select * from user  
    </select>  
</mapper>
  • 新建User实体类
package com.ivan.domain;  
import org.springframework.stereotype.Component;  
//@Component  
public class User {  
private int id;  
private String username;  
private String password;  
public int getId() {  
return id;  
}  
  
public void setId(int id) {  
this.id = id;  
}  
  
public String getUsername() {  
return username;  
}  
  
public void setUsername(String username) {  
this.username = username;  
}  
  
public String getPassword() {  
return password;  
}  
  
public void setPassword(String password) {  
this.password = password;  
}  
  
@Override  
public String toString() {  
return "User{" +  
"id=" + id +  
", username='" + username + '\'' +  
", password='" + password + '\'' +  
'}';  
}  
}
  • 新建UserMapper.java接口
package com.ivan.mapper;  
import com.ivan.domain.User;  
import org.apache.ibatis.annotations.Mapper;  
import org.springframework.stereotype.Repository;  
import java.util.List;  
//@Mapper  
//@Repository  
public interface UserMapper {  
    // @Select("select * from user")  
    public List<User> findAll();  

}
  • 创建数据库连接调用查询接口
String resource = "mybatis-config.xml";  
InputStream inputStream = Resources.getResourceAsStream(resource);  
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);  
SqlSession sqlSession =sqlSessionFactory.openSession();  
List<User> users =sqlSession.selectList("com.ivan.mapper.UserMapper.findAll");  
System.out.println(users);  
sqlSession.close();