版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/marvHuang/article/details/82916703
-
实例需求:用户信息(用户名、别名、密码、性别、邮箱、创建时间),实现简单增删改查
-
技术要点:
- mybatis类型别名设置
<?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>
<typeAliases>
<typeAlias alias="Integer" type="java.lang.Integer" />
<typeAlias alias="Long" type="java.lang.Long" />
<typeAlias alias="HashMap" type="java.util.HashMap" />
<typeAlias alias="LinkedHashMap" type="java.util.LinkedHashMap" />
<typeAlias alias="ArrayList" type="java.util.ArrayList" />
<typeAlias alias="LinkedList" type="java.util.LinkedList" />
</typeAliases>
</configuration>
- springboot集成mybatis配置
mybatis.config-locations:mybatis配置文件放置路径
mybatis.mapper-locations:mybatis对应mapper脚本映射路径
mybatis.type-aliases-package:mybatis对应实体包路径
mybatis.config-locations=classpath:mybatis/mybatis-config.xml
mybatis.mapper-locations=classpath:mybatis/mapper/*.xml
mybatis.type-aliases-package=com.lm.entity
- springboot单数据源配置
spring.datasource.driverClassName:数据源驱动类
spring.datasource.url:数据源url
spring.datasource.username:用户名
spring.datasource.password:密码
spring.datasource.driverClassName = com.mysql.jdbc.Driver
spring.datasource.url = jdbc:mysql://192.168.32.128:3306/test?useUnicode=true&characterEncoding=utf-8
spring.datasource.username = root
spring.datasource.password = root
- springboot与mybatis集成配置
在可执行文件下扫描mapper包
/**
* 应用启动
*
* @author liangming.deng
* @date 2017年6月20日
*
*/
@SpringBootApplication
@MapperScan("com.lm.mapper")
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}
- 进行controller层的开发:注入相应的Mapper接口进行操作
附上Mapper.xml和Mapper接口代码:
/**
* mybatis中mapper接口
* @author liangming.deng
* @date 2017年6月21日
*
*/
@Mapper
public interface UserMapper {
List<UserEntity> getAll();
UserEntity getUserById(Long id);
void insert(UserEntity user);
void update(UserEntity user);
void delete(Long 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" >
<mapper namespace="com.lm.mapper.test.UserMapper">
<resultMap id="BaseResultMap" type="com.lm.entity.UserEntity">
<id column="id" property="id" jdbcType="BIGINT" />
<result column="userName" property="userName" jdbcType="VARCHAR" />
<result column="nickName" property="nickName" jdbcType="VARCHAR" />
<result column="passWord" property="passWord" jdbcType="VARCHAR" />
<result column="email" property="email" jdbcType="VARCHAR" />
<result column="regTime" property="regTime" jdbcType="DATE" />
<result column="sex" property="sexEnums" javaType="com.lm.enums.SexEnums" />
</resultMap>
<sql id="Base_Column_List">
id, userName, nickName,passWord, email,regTime,sex
</sql>
<select id="getAll" resultMap="BaseResultMap">
SELECT
<include refid="Base_Column_List" />
FROM user
</select>
<select id="getUserById" parameterType="java.lang.Long" resultMap="BaseResultMap">
SELECT
<include refid="Base_Column_List" />
FROM user
WHERE id = #{id}
</select>
<insert id="insert" parameterType="com.lm.entity.UserEntity">
INSERT INTO
user
(userName, nickName,passWord, email,regTime,sex)
VALUES
(#{userName},#{nickName}, #{passWord},#{email}, #{regTime},#{sexEnums})
</insert>
<update id="update" parameterType="com.lm.entity.UserEntity">
UPDATE
user
SET
<if test="userName != null">userName = #{userName},</if>
<if test="passWord != null">passWord = #{passWord}</if>
WHERE
id = #{id}
</update>
<delete id="delete" parameterType="java.lang.Long">
DELETE FROM
user
WHERE
id =#{id}
</delete>
</mapper>