xml型单数据源Mybatis.md

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/marvHuang/article/details/82916703

  1. 实例需求:用户信息(用户名、别名、密码、性别、邮箱、创建时间),实现简单增删改查

  2. 技术要点:

  1. 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>

  1. 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

  1. 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

  1. 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);
	}
}
  1. 进行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>


猜你喜欢

转载自blog.csdn.net/marvHuang/article/details/82916703