hibernate 常用总结

来源:互联网 发布:topcoder算法 编辑:程序博客网 时间:2024/06/06 09:45

【1】 获取记录条数

public Long getCount() {Session session = getSession() ;Criteria criteria = session.createCriteria(WebSiteEntity.class) ;criteria.setProjection(Projections.rowCount()) ;Long count = (Long) criteria.uniqueResult() ;return count ;}

【2】分页

public List<WebSiteEntity> getWebSiteList(int pageNumber, int pagePreNumber) {Session session = getSession() ;    Criteria criteria = session.createCriteria(WebSiteEntity.class) ;    criteria.setFirstResult((pageNumber - 1) * pagePreNumber) ;    criteria.setMaxResults(pagePreNumber) ;    List<WebSiteEntity> ret =  criteria.list() ; return  ret ;}

【3】Transformers.ALIAS_TO_ENTITY_MAP

public List<Map<String, String>> getWebSiteList() {Session session = getSession() ;StringBuffer sql = new StringBuffer() ;sql.append("select * from website") ;Query query = session.createSQLQuery(sql.toString())              .setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP) ; List<Map<String , String>> ret = query.list() ;return ret  ;}
Map的key为列名

【4】  

List<Map<String, String>> 

public List<Map<String, String>> getMlist() {Session session = getSession() ;String sql = "select id  as ids , web_name  as web_names , web_url as web_urls from website where update_time = :updated " ;Query query = null;try {query = session.createSQLQuery(sql)               .addScalar("ids",  StandardBasicTypes.STRING)               .addScalar("web_names",  StandardBasicTypes.STRING)                .addScalar("web_urls",  StandardBasicTypes.STRING)                .setDate("updated" , DateUtil.parse("2016-07-05") )               .setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);} catch (ParseException e) {}return query.list() ;}
        @Overridepublic List<Map<String, String>> getMlist() {Session session = getSession() ;String sql = "select id  ids , web_name  web_names , web_url  web_urls from website where update_time = :updated " ;Query query  = session.createSQLQuery(sql)               .addScalar("ids",  StandardBasicTypes.STRING)               .addScalar("web_names",  StandardBasicTypes.STRING)                .addScalar("web_urls",  StandardBasicTypes.STRING)                .setString("updated", "2016-07-05")               .setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP)  ;return query.list() ;}

public List<Map<String, String>> getMlist() {Session session = getSession() ;String sql = "select id , web_name , web_url from website where update_time = :update_time " ;Query query  = session.createSQLQuery(sql)               .addScalar("id",  StandardBasicTypes.STRING)               .addScalar("web_name",  StandardBasicTypes.STRING)                .addScalar("web_url",  StandardBasicTypes.STRING)                .setString("update_time", "2016-07-05")               .setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP)  ;return query.list() ;}

public List<Map<String, String>> getWebSites(Integer id) {Session session = getSession() ;String sql = "select  *  from website where id = :id "  ;List<Map<String, String>> res =  session.createSQLQuery(sql).setInteger("id" , id).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP).list() ;return res  ;}


【5】查询单条记录

@Overridepublic WebSiteEntity getWebSite(Long id) {Session session = getSession() ;WebSiteEntity entity = (WebSiteEntity)session.createCriteria(WebSiteEntity.class) .add(Restrictions.eq("id" , id)) .setMaxResults(1)                                     .uniqueResult() ;return entity ;}

【6】单条记录单字段

@Overridepublic String getWebSiteName(Long id) {Session session = getSession() ;String sql = "select  web_name from website where id = :id "  ;String res = (String) session.createSQLQuery(sql).setLong("id" , id).uniqueResult() ;return res  ;}

【7】获取list

@Overridepublic List<Integer> getIds() {Session session = getSession()  ;String sql = "select id from website" ;List<Integer> res = session.createSQLQuery(sql).list() ;return res ;}



1 0
原创粉丝点击