例子:
QueryVo.java:
package com.wance.model.entity;
public class QueryVo {
private User user;
public QueryVo() {
}
public QueryVo(User user) {
this.user = user;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
@Override
public String toString() {
return "QueryVo{" +
"user=" + user +
'}';
}
}
UserDao.java:
public interface UserDao {
//根据QueryVo 中的条件查询用户
int findUserByVO(QueryVo vo);
}
配置文件(需要通过user.username来拿到username这个属性):
<!--根据queryVo的条件来查询用户 -->
<select id="findUserByVO" parameterType="com.wance.model.entity.QueryVo" resultType="int">
select * from user where username like #{user.username}
</select>
Dao实现类:
public int findUserByVO(QueryVo vo) {
SqlSession sqlSession = sqlSessionFactory.openSession();
UserDao userDao = sqlSession.getMapper(UserDao.class);
List<User> users=userDao.findByName("%"+vo.getUser().getUsername()+"%");
return users.size();
}
测试类:
@Test
public void findUserByVO() {
QueryVo queryVo=new QueryVo();
User user=new User();
user.setUsername("ing");
queryVo.setUser(user);
System.out.println("符合条件数量:"+udi.findUserByVO(queryVo));
}