spring boot 集成mybatis xml 方式
目录结构:
application.yml
mybatis:
mapper-locations: classpath:mappers/*.xml
User.java
package com.example.demo.model;
import java.io.Serializable;
import java.util.Date;
public class User implements Serializable {
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column user.id
*
* @mbggenerated
*/
private String id;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column user.description
*
* @mbggenerated
*/
private String description;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column user.name
*
* @mbggenerated
*/
private String name;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column user.register_date
*
* @mbggenerated
*/
private Date registerDate;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column user.password
*
* @mbggenerated
*/
private String password;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database table user
*
* @mbggenerated
*/
private static final long serialVersionUID = 1L;
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column user.id
*
* @return the value of user.id
*
* @mbggenerated
*/
public String getId() {
return id;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column user.id
*
* @param id the value for user.id
*
* @mbggenerated
*/
public void setId(String id) {
this.id = id == null ? null : id.trim();
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column user.description
*
* @return the value of user.description
*
* @mbggenerated
*/
public String getDescription() {
return description;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column user.description
*
* @param description the value for user.description
*
* @mbggenerated
*/
public void setDescription(String description) {
this.description = description == null ? null : description.trim();
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column user.name
*
* @return the value of user.name
*
* @mbggenerated
*/
public String getName() {
return name;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column user.name
*
* @param name the value for user.name
*
* @mbggenerated
*/
public void setName(String name) {
this.name = name == null ? null : name.trim();
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column user.register_date
*
* @return the value of user.register_date
*
* @mbggenerated
*/
public Date getRegisterDate() {
return registerDate;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column user.register_date
*
* @param registerDate the value for user.register_date
*
* @mbggenerated
*/
public void setRegisterDate(Date registerDate) {
this.registerDate = registerDate;
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column user.password
*
* @return the value of user.password
*
* @mbggenerated
*/
public String getPassword() {
return password;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column user.password
*
* @param password the value for user.password
*
* @mbggenerated
*/
public void setPassword(String password) {
this.password = password == null ? null : password.trim();
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table user
*
* @mbggenerated
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", description=").append(description);
sb.append(", name=").append(name);
sb.append(", registerDate=").append(registerDate);
sb.append(", password=").append(password);
sb.append(", serialVersionUID=").append(serialVersionUID);
sb.append("]");
return sb.toString();
}
}
UserMapper.java
package com.example.demo.dao;
import com.example.demo.model.User;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
public interface UserMapper {
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table user
*
* @mbggenerated
*/
int deleteByPrimaryKey(String id);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table user
*
* @mbggenerated
*/
int insert(User record);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table user
*
* @mbggenerated
*/
User selectByPrimaryKey(String id);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table user
*
* @mbggenerated
*/
List<User> selectAll();
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table user
*
* @mbggenerated
*/
int updateByPrimaryKey(User record);
}
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.example.demo.dao.UserMapper">
<resultMap id="BaseResultMap" type="com.example.demo.model.User">
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
-->
<id column="id" jdbcType="VARCHAR" property="id" />
<result column="description" jdbcType="VARCHAR" property="description" />
<result column="name" jdbcType="VARCHAR" property="name" />
<result column="register_date" jdbcType="TIMESTAMP" property="registerDate" />
<result column="password" jdbcType="VARCHAR" property="password" />
</resultMap>
<delete id="deleteByPrimaryKey" parameterType="java.lang.String">
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
-->
delete from user
where id = #{id,jdbcType=VARCHAR}
</delete>
<insert id="insert" parameterType="com.example.demo.model.User">
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
-->
<selectKey keyProperty="id" order="AFTER" resultType="java.lang.String">
SELECT LAST_INSERT_ID()
</selectKey>
insert into user (description, `name`, register_date,
`password`)
values (#{description,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{registerDate,jdbcType=TIMESTAMP},
#{password,jdbcType=VARCHAR})
</insert>
<update id="updateByPrimaryKey" parameterType="com.example.demo.model.User">
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
-->
update user
set description = #{description,jdbcType=VARCHAR},
`name` = #{name,jdbcType=VARCHAR},
register_date = #{registerDate,jdbcType=TIMESTAMP},
`password` = #{password,jdbcType=VARCHAR}
where id = #{id,jdbcType=VARCHAR}
</update>
<select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
-->
select id, description, `name`, register_date, `password`
from user
where id = #{id,jdbcType=VARCHAR}
</select>
<select id="selectAll" resultMap="BaseResultMap">
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
-->
select id, description, `name`, register_date, `password`
from user
</select>
</mapper>
上面文件生成好后,最后需要在application中配置
@MapperScan(value = "com.example.demo.dao")扫描mapper.java文件