ULT); Integer maxResults = (Integer) params.get(PageConstants.MAX_RESULTS); if (firstResult > 0) { query.setFirstResult(firstResult); } if (maxResults > 0) { query.setMaxResults(maxResults); } } /** * 执行查询语句 * * @param query * 查询对象 * @return 查询结果 */ protected List doQuery(Query query) { return query.list(); } public T unique(String hql) { List
list = list(hql,NOT_PAGE); T result = doGetFirst(list); return result; } public T unique(String hql, String key, Object value) { Map
params = createMap(key, value); return unique(hql, params); } public T unique(String hql, Pair... pair) { Map
params = createMap(pair); return unique(hql, params); } public T unique(String hql, Map
params) { List
list = list(hql, params,NOT_PAGE); T result = doGetFirst(list); return result; } protected T doGetFirst(List
list) { T result = null; if (EmptyUtils.notEmpty(list)) { result = list.get(0); } return result; } }
3.BasicSqlQueryUpdateDao
使用原生的SQL,而不是HQL,实现一些较为通用的功能,与BasicQueryUpdateDao类似。
更多功能,与上面的几个都差不多。只是封装程度不同而已。
4.BaseDao
更多类似的功能,还有
searchListByProperty: 根据一个或多个键值对模糊搜索符合条件的结果集
findListByProperty:根据一个键值对精确查找对象
findByPropertyUnique:根据1个键值对精确查找一个对象
countFindByPropertyListAnd:计算查询记录的个数count
5.More API
更多功能需要结合实际需求,整理了...
小结
网站开发最基础最常用的功能就是增删改查CRUD。
无论是用Hibernate还是Mybatis,都会有自己的优势和不足。
如果只是站在开发和技术的角度想问题,永远有做不完的问题,数不清的重复代码。
不去思考和总结,高富帅级的程序员也会被弄成码农,被折磨。
原文链接:http://blog.fansunion.cn/articles/3624(小雷博客-blog.fansunion.cn)