您的位置:首页 > 编程语言 > Java开发

文本框输入值进行实体多属性查询

2017-04-06 18:01 176 查看
public Pagination findSubUserByParams(User user, int pageNo, int pageSize) {
StringBuilder hql = new StringBuilder("from com.notary.cloud.api.entity.User u where 1=1");
List<Object> params = new ArrayList<Object>();

if(user != null){
if(StringUtils.isNotBlank(user.getParentId())){
hql.append(" and u.parentId = ?");
params.add(user.getParentId());
}
/*if(StringUtils.isNotBlank(user.getLoginName())){
hql.append(" and u.loginName like ?");
params.add("%"+user.getLoginName()+"%");
}
if(StringUtils.isNotBlank(user.getUserRealName())){
hql.append(" and u.userRealName like ?");
params.add("%"+user.getUserRealName()+"%");
}*/
if(StringUtils.isNotBlank(user.getLoginName()) || StringUtils.isNotBlank(user.getUserRealName())){
hql.append(" and (u.loginName like ? or u.userRealName like ?)");
params.add("%"+user.getLoginName()+"%");
params.add("%"+user.getUserRealName()+"%");
}
}
return findPage(hql.toString(), params.toArray(), pageNo, pageSize);
}

Action:

@RequestMapping("v_findByParams.do")
public String findByParams(HttpServletRequest request , HttpServletResponse response , String pageNo)
{
User user = SessionMng.getUser(request.getSession());
if(StringUtils.isBlank(pageNo)){
pageNo="1";
}
Integer pageSize = 20;
User subUser = new User();
String name= request.getParameter("paramsName");
if(StringUtils.isNotBlank(name)){
subUser.setLoginName(name);
subUser.setUserRealName(name);
}
subUser.setParentId(user.getId());
Pagination pagination = userService.findSubUserByParams(subUser, Integer.valueOf(pageNo), pageSize);
request.setAttribute("value", pagination);
request.setAttribute("user", user);
return "alliance/subAccountMng";
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 或条件查询
相关文章推荐