Liferay - 通过直接查询检索数据

问题描述:

我有很多列需​​要从数据库中检索(不是来自Lucene),每列都可以排序,并且有很多筛选选项。Liferay - 通过直接查询检索数据

纠正我,如果我错了,但自定义SQL不允许变量列,每个变化都需要一个单独的自定义SQL。

尽管可以通过自定义SQL,但排列的数量是巨大的。有没有办法根据某些条件构建我自己的查询并相应地检索数据?

动态查询是不可能的,因为查询有点复杂。

+0

我不知道什么你的意思“可变列,”但如果是我在想什么它是,你可以使用自定义查询(如https://web.liferay.com/community/wiki/-/wiki/Main/Custom + queries + in + Liferay)来存储大量查询,然后附加或替换您想要改变的部分。 – brandizzi

DataSource liferayDataSource = InfrastructureUtil.getDataSource(); 
    Connection connection = null; 
    try { 
    connection = liferayDataSource.getConnection(); 
    } catch (SQLException e1) { 
    // TODO Auto-generated catch block 
    e1.printStackTrace(); 
    } 

将准备语句的连接设置为上面获得的语句的连接,并按照常规JDBC的使用情况继续。