hibernate用hql做中文排序

作者: 云计算机网 分类: 云计算知识 发布时间: 2016-10-14 23:46

用Hibernate+MySQL的童鞋是不是很苦恼为什么MySQL不支持中文排序呢?没办法,只有等utf8_unicode_cn 出来了。如果用hibernate即想实现跨库,又想不改代码如何实现呢,下边告诉你答案。

方法一、描述:给Hibernate的MySQL方言包注册一个排序方法,该方法中实现了MySQL中文排序。贴代码:

public class MySQLExtendDialect extends MySQLDialect {        public MySQLExtendDialect(){          super();          registerFunction("convert_gbk",                    new SQLFunctionTemplate(Hibernate.STRING, "convert(?1 using gbk)") );      }        } 
该方法的弊端是需要改不同数据的方言包来实现不改代码的跨库。(需要改order by field 为 order by convert_gbk(field))。

方法二、描述:单独修改Hibernate的MySQL方言包,修改order by方法,使该方法默认使用convert方法来实现中文排序。贴代码:

public class MySQLGBKDialect extends MySQLDialect{    public MySQLGBKDialect()    {    }    public String renderOrderByElement(String expression, String collation, String order, NullPrecedence nulls)    {        expression = (new StringBuilder("convert(")).append(expression).append(" using 'gbk')").toString();        return super.renderOrderByElement(expression, collation, order, nulls);    }}
renderOrderByElement该方法为复写父类中的方法,优点是不用改其他数据方言包,不用改代码,缺点是所有的排序方法将都执行convert方法。

  • 不管是在工作还是学习我们都离不开计算机,对于IT行业从事者来说掌握计算机的使用技巧是很有必要的,我们使用的键盘上有个scroll lock键,估计很多人都不知道scroll lock键是干嘛的,那么现在爱站小编就为大家介绍scroll lock键的作用。

      不管是在工作还是学习我们都离不开计算机,对于IT行业从事者来说掌握计算机的使用技巧是很有必要的,我们使用的键盘上有个scroll lock键,估计很多人都不知道scroll lock键是干嘛的,那么现在爱站小编就为大家介绍scroll lock键的作用。

      其实英文学的很好的朋友通过scroll lock词组也可以大致了解到该键的作用,scroll lock直接翻译成中文则为:滚动锁,在电脑键盘中被称为“滚动锁定键”。该键目前在windows操作系统中很少被用到,对于多数朋友来说该键意义不大,但仍在一些应用软件中偶尔需要用到,比如在EXCEL中,在Scroll Lock关闭的状态下,使用翻页键(如Page Up和Page Down)时,单元格选定区域会随之发生移动。但是当我们按下了Scroll Lock键后,就不会移动个选定的单元格了。

      另外一种情况是在DOS中经常需要用到该功能键,在最初期DOS系统年代,由于屏幕显示为字符方式,每屏可显示25行,每行有80个字符,Scroll Lock键的作用就是在阅读较长的文档时进行翻滚,因此在当时十分有用,随着windows 可视话操作系统的出现,我们浏览网页已经不需要滚动键了,因此使用鼠标可更领过的控制滚动条,因此改键在windows系统时代(笔记本键盘失灵怎么办?),已经逐渐被淡忘了。

      scroll lock键在哪?

      scroll lock键如果是台式电脑键盘,则该键盘一般处于方向键的最上面,如下图:

    scroll lock键在哪

      如果是笔记本键盘的话,该键一般在由上测,有兴趣的朋友可以自行查找下,这里就不过多介绍了。

      如果您觉得这篇scroll lock键的作用的内容对您有帮助,麻烦给小编点个赞,如果您想查看更多相关内容就请关注爱站技术频道吧,感谢您的支持!

  • 相关推荐:

  • scroll lock键的作用
  • Google Play是什么?
  • 无线网卡的使用方法
  • 磁盘清理的作用
  • 详解ftp文件上传下载命令
  • FTP突然连接不上了怎么办
  • 如何用win7创建个人ftp站
  • 四川泸县首例非法占用农
  • 惠普和微软联合推出多款
  • 用Windows还是Linux取决于你
  • 网站内容禁止违规转载,转载授权联系中国云计算网