【问题标题】:Liferay - Retrieving data by querying directlyLiferay - 通过直接查询来检索数据
【发布时间】:2017-03-29 04:53:13
【问题描述】:

我有很多列需​​要从数据库(而不是 Lucene)中检索,并且每一列都是可排序的,并且有很多过滤器选项。

如果我错了,请纠正我,但自定义 SQL 不允许可变列,并且每个变体都需要单独的自定义 SQL。

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

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

【问题讨论】:

  • 我不确定“变量列”是什么意思,但如果是我想的那样,您可以使用自定义查询(如web.liferay.com/community/wiki/-/wiki/Main/…)来存储大查询的大部分内容,然后附加或替换您想要不同的部分。

标签: mysql liferay data-retrieval


【解决方案1】:
DataSource liferayDataSource = InfrastructureUtil.getDataSource();
  Connection connection = null;
  try {
    connection = liferayDataSource.getConnection();
  } catch (SQLException e1) {
    // TODO Auto-generated catch block
    e1.printStackTrace();
  }

将prepared statement的连接设置为上面获得的连接,并按照通常的JDBC用法继续。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-05-11
    • 2013-07-13
    • 1970-01-01
    • 1970-01-01
    • 2021-02-24
    • 2021-12-06
    • 2014-11-07
    • 1970-01-01
    相关资源
    最近更新 更多