1. Map
1.mapper.xml
<insert id="addUser2" parameterType="map" >
insert into mybatis.user (id,name,pwd) values (#{userid},#{userName},#{password});
</insert>
2.mapper接口
int addUser2(Map<String,Object>map);
3.Test类
@Test
public void addUser2(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
Map<String, Object> map = new HashMap<String, Object>();
map.put("userid",5);
map.put("userName","zzx");
map.put("password","2323");
sqlSession.commit();
sqlSession.close();
}
如果说实体类,或者数据库中的参数过多,使用Map会更好
Map转递参数,从sql中取key值
对象传递参数,从sql中取对象属性
多个参数用Map或者注解
2.模糊查询
List<User>getUserLike(String value);
<select id="getUserLike" resultType="com.zzt.pojo.User">
select * from mybatis.user where name like #{value};
</select>
@Test
public void getUserLike(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
List<User> userList = mapper.getUserLike("zz%");
for (User user : userList) {
System.out.println(user);
}
sqlSession.close();
}
模糊查询 java代码不要忘记加%%通配符或者在sql中使用通配符%{value}%