Mybatis代理对象的生成

public interface UserMapper {
//遵循四大原则
//接口方法名 ==user.xml中的id名字
//返回值类型 与Mapper.xml中的返回值类型一样
//方法的入参与Mapper.xml中入参的类型要一样
public User findUserById(Integer id);

}

--------------------------------------------------------------------------------------

<mapper namespace="Mapper.UserMapper">
<select id="findUserById" parameterType="Integer" resultType="Bean.User">
select * from user where id=#{v}
</select>
</mapper>

--------------------------------------------------------------------------

@Test
public void testmy() throws IOException {
String resource="SqlMapConfig.xml";
//加载核心配置文件
InputStream in = Resources.getResourceAsStream(resource);
//创建sqlsessionFactory工厂
SqlSessionFactory build = new SqlSessionFactoryBuilder().build(in);
//创建session
SqlSession Session = build.openSession();
//sqlsession帮我生成一个实现类
UserMapper mapper = Session.getMapper(UserMapper.class);
User user = mapper.findUserById(14);
System.out.println(user);
}

===========================引入外边的properties======================================

<configuration>
<properties resource="jdbc.properties"/>
<!-- 别名 包以其子包下所有类   头字母大小都行-->
<typeAliases>
<!-- <typeAlias type="com.itheima.mybatis.pojo.User" alias="User"/> -->
<package name="com.itheima.mybatis.pojo"/>
</typeAliases>
<!-- 和spring整合后 environments配置将废除    -->
<environments default="development">
<environment id="development">
<!-- 使用jdbc事务管理 -->
<transactionManager type="JDBC" />
<!-- 数据库连接池 -->
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driver}" />
<property name="url" value="jdbc:mysql://localhost:3306/mybatis" />
<property name="username" value="root" />
<property name="password" value="root" />
</dataSource>
</environment>
</environments>

<!-- Mapper的位置  Mapper.xml 写Sql语句的文件的位置 -->
<mappers>
<!-- <mapper resource="sqlmap/User.xml" class="" url=""/> -->
<!-- <mapper resource="sqlmap/User.xml" class="" url=""/> -->
<!-- <mapper class="mapper.UserMapper" /> -->
<!-- <mapper url="" /> -->

<package name="com.itheima.mybatis.mapper"/>
</mappers>
</configuration>

 

========================foreach标签================

<select id="selectIds" parameterType="java.util.ArrayList" resultType="Bean.User">
<include refid="selector"/>
<where>
id in
<!-- collection是属性的名字,如果穿进来的是集合的就写list数组就写array 
item这个随便写,遍历出来的变量名字
separator中间以什么隔开
open:开始添加什么
close:结束添加什么
-->

<foreach collection="list" item="id" separator="," open="(" close=")">
#{id}
</foreach>
</where>
</select>

 

@Test
public void testmysw() throws IOException {
String resource="SqlMapConfig.xml";
//加载核心配置文件
InputStream in = Resources.getResourceAsStream(resource);
//创建sqlsessionFactory工厂
SqlSessionFactory build = new SqlSessionFactoryBuilder().build(in);
//创建session
SqlSession Session = build.openSession();
//sqlsession帮我生成一个实现类
UserMapper mapper = Session.getMapper(UserMapper.class);
List<Integer> ids=new ArrayList<>();
ids.add(1);
ids.add(3);
List<User> user2 = mapper.selectIds(ids);
System.out.println(user2);
}

如果你喜欢,或者有帮助到你的地方可以关注我的微信公众号,田园折耳,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值