mysql - hibernate 分离条件 - 如何添加 native sql 语句

标签 mysql spring hibernate detachedcriteria

嗨,我有一个很大的问题。我有一个 DetachedCriteria,我将它命名为 dc。我是这样声明的 DetachedCriteria dc = getDetachedCriteria()。我想在 order by 之前添加一个 collat​​ion 语句。整理的目的是处理ñ。我要添加的语句是 COLLATE utf8_spanish_ci。我是这样做的 dc.add(Restrictions.sqlRestriction("COLLATE utf8_spanish_ci "))。当然我得到了一个错误,因为这是错误的。我不知道该怎么做。请帮忙。

最佳答案

您可以执行 native SQL 查询以利用您的特定数据库功能,这就是使用分离条件在 hibernate 中完成的方式...

List<YourEntity> list = (List<YourEntity>) yourEntityDAO.getHibernateTemplate().execute(
    new HibernateCallback() {
    @Override
    public Object doInHibernate(Session session) throws HibernateException {
        SQLQuery sq = session.createSQLQuery("SELECT * FROM MY_TABLE");
        return sq.addEntity(YourEntity.class).list();
    }
});

关于mysql - hibernate 分离条件 - 如何添加 native sql 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13357052/

相关文章:

php - 以编程方式获取表mysql之间的关系

mysql - 如何使用Mysql统计一个类(class)的学生人数?

mysql - 分布式数据库实时监控架构

java - 构建一个以 Spring boot 为后端,angular4 为前端的项目

java - findall hibernate 或标准和示例

php - 使用 Web 表单中的单个用户输入查询数据库

java - Spring通用bean工厂

java - 无法在Spring Cloud Stream kafka中设置kafka属性

java - 如何配置 Spring Data 以在没有 XML 的情况下将 Postgres 与 Hibernate 一起使用?

java - 与 jackson 在中间表上的无限递归