引入druid
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.21</version>
</dependency>
修改yml配置数据源
server:
port: 8080
spring:
datasource: #数据源配置
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/dd?useUnicode=true&characterEncoding=utf8&useSSL=true&serverTimezone=UTC
username: root
password: root
druid:
max-active: 10
min-idle: 5
max-wait: 5000
initial-size: 5
validation-query: select 1
stat-view-servlet:
enabled: true
login-username: admin
login-password: admin
allow:
deny:
url-pattern: "/druid/*"
排除DataSourceAutoConfiguration配置数据源
创建User
package com.sxt.domain;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User implements Serializable {
private Integer id;
private String name;
private String address;
private Date birth;
}
使用纯注解整合
创建UserMapper
package com.sxt.mapper;
import com.sxt.domain.User;
import org.apache.ibatis.annotations.*;
import java.util.List;
//@Mapper
public interface UserMapper {
@Delete("delete from sys_user where id=#{id}")
int deleteByPrimaryKey(@Param("id")Integer id);
@Insert("insert into sys_user(name,address,birth) values(#{name},#{address},#{birth})")
int insert(User user);
@Select("select * from sys_user where id=#{value}")
User selectByPrimaryKey(@Param("id")Integer id);
@Update("update sys_user set name=#{name},address=#{address},birth=#{birth} where id=#{id}")
int updateByPrimaryKey(User user);
@Select("select * from sys_user")
List<User> queryAllUser();
}
配置扫描
方式1在每一个Mapper上加@Mapper
方式2在启动类上加@MapperScan(basePackage={“com.sxt.mapper”})
测试
使用Mapper+Mapper.xml整合
修改UserMapper去掉注解
package com.sxt.mapper;
import com.sxt.domain.User;
import org.apache.ibatis.annotations.*;
import java.util.List;
public interface UserMapper {
int deleteByPrimaryKey(@Param("id")Integer id);
int insert(User user);
User selectByPrimaryKey(@Param("id")Integer id);
int updateByPrimaryKey(User user);
List<User> queryAllUser();
}
创建resources/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.sxt.mapper.UserMapper">
<!--删除-->
<delete id="deleteByPrimaryKey" >
delete from sys_user where id=#{id}
</delete>
<!--添加-->
<insert id="insert">
insert into sys_user(name,address,birth) values(#{name},#{address},#{birth})
</insert>
<!--查询一个-->
<select id="selectByPrimaryKey" resultType="com.sxt.domain.User">
select * from sys_user where id=#{value}
</select>
<!--修改-->
<update id="updateByPrimaryKey">
update sys_user set name=#{name},address=#{address},birth=#{birth} where id=#{id}
</update>
<!--全查询-->
<select id="queryAllUser" resultType="com.sxt.domain.User">
select * from sys_user
</select>
</mapper>
修改yml
测试
创建mybatis.cfg.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>
<settings>
<setting name="logImpl" value="LOG4J"/>
</settings>
<mappers>
<mapper resource="mapper/UserMapper.xml"></mapper>
</mappers>
</configuration>