项目中的一些小细节

先说说最早基于hibernate的时候的开发把:
一般情况下使用的hql语言,当然了,很多同事和我一样喜欢使用sql语言,这就产生了如下的获取数据的方法
/**
String sql = "select registerAddress,0,count(*) as count from UserAddress where createdate >= '"+startdate+"' and createdate <= '"+enddate+"' group by registerAddress";
SQLQuery query = hibernateTemplate.getSessionProvider().getSession().createSQLQuery(sql);
query.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);
return query.list();
**/
当然了,返回的肯定是list,通过setResultTransformer,将别名转换为一个新的实体map,就这么简单,当然了,以前我是专门写一个基础类,在里面有个
/**
public List<Map<String,Object>> findBySql(String sql)
{
Assert.hasText(sql);
Query query = getSession().createSQLQuery(sql);
query.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);
List list = query.list();
return list;
}
**/
只需要直接把sql放进去就可以了。


然后就是汉字,从查询的时候你可有能会遇到汉字,判读是否含有汉字,目前我知道的办法是使用ascii中进行判断
select * from user where (((ascii(uname)>=97) and (ascii(uname)<=122)) or ((ascii(uname)>=65) and (ascii(uname)<=90)))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值