mybatis mapper代理

使用mapper代理需要遵循一定的规范

1、在mapper.xml中namespace等于mapper接口全限定名

<mapper namespace="mapper.UserMapper">

2、mapper.xml中的statement  id和mapper接口中的方法名一致

3、mapper.xml中的statement parameterType和mapper接口中的参数类型一致

4、mapper.xml中的statement resultType和mapper接口中的返回类型一致

<pre name="code" class="html"><?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="mapper.UserMapper">
	<select id="findUserById" parameterType="int" resultType="model.User">
		Select * from users where id = #{id}
	</select>
</mapper>


 
<pre name="code" class="html">package mapper;

import model.User;

public interface UserMapper {
	public User findUserById(Integer id) throws Exception;
}


 

sqlmapconfig配置文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD SQL Map Config 3.0//EN"  
	"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
	<!-- 这个为没有与其他框架进行整合的配置方式,与其他框架整合后配置方式不同 -->
	<environments default="development">
		<environment id="development">
			<!-- 使用JDBC事务管理 -->
			<transactionManager type="JDBC"></transactionManager>
			<!-- 数据库连接池 -->
			<dataSource type="POOLED">
				<property name="driver" value="com.mysql.jdbc.Driver"/>
				<property name="url" value="jdbc:mysql://localhost:3306/test?characterEncoding=gbk"/>
				<property name="username" value="root"/>
				<property name="password" value="root"/>
			</dataSource>
		</environment>
	</environments>
	<mappers>
		<!-- <mapper resource="mapper/User.xml"/> -->
		<mapper resource="mapper/UserMapper.xml"/>
	</mappers>
</configuration>

test类

	@Test
	public void findUserById() throws Exception{
		//sqlMapConfig的位置和名称
				String resource = "sqlMapConfig.xml";
				//获取sqlMapConfig配置文件流
				InputStream inputstream = Resources.getResourceAsStream(resource);
				//获得SqlSessionFactory工厂
				SqlSessionFactory factory =new  SqlSessionFactoryBuilder().build(inputstream);
				SqlSession session = factory.openSession();
				UserMapper userMapper = session.getMapper(UserMapper.class);
				User user = userMapper.findUserById(3);
				System.out.println(user);
	}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值