- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试将 SQL 查询返回类型(列表)转换为列表,但截至目前,我得到的是 Object[] 列表。有没有什么方法可以不借助Pojo,添加标量或者HQL,直接转换为List?
我当前的抽象查询方法是
String sqlQuery = "SELECT UI.idea_id, UI.user_id,UI.title, UI.innovators
FROM user_idea AS UI
WHERE UI.status=1 AND CONCAT(';',UI.innovators,';') like '%;jack;%';";
try {
Query query = getCurrentSession().createSQLQuery(sqlQuery);
if (values != null) {
for (int i = 0; i < values.length; i++) {
query.setParameter(i, values[i]);
}
}
最佳答案
这就是我找到解决方案的方法,因为没有预定义的函数可以做到这一点。首先,我从查询中检索所有列,然后使用 column_name(key) 和 queryResult(value) 制作一个 HashMap 。应避免 select * from..,而是在查询中给出所需的列名称,以便从给定函数获取结果。
public List<Map> queryResultToListMap(String query, List queryResult) {
int indexOffrom = query.indexOf("from");
int indexOfselect = query.indexOf("select");
String subquery = query.substring(indexOfselect, indexOffrom);
subquery = subquery.replace("select", "");
String[] arr = subquery.split(",");
List cols = new ArrayList();
for (int i = 0; i < arr.length; i++) {
String[] subarr = arr[i].split(" ");
cols.add(subarr[subarr.length - 1]);
}
List<Map> colswithdata = new ArrayList<>();
Iterator itr = queryResult.iterator();
while (itr.hasNext()) {
HashMap colsWithData = new HashMap();
Object[] tempArray = (Object[]) itr.next();
for (int i = 0; i < cols.size(); i++) {
colsWithData.put(cols.get(i), tempArray[i].toString());
}
colswithdata.add(colsWithData);
}
return colswithdata;
}
关于java - 在 hibernate 中从 createSqlQuery 获取 List<HashMap> ,无需 Pojo 或 Scalar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50675241/
当我尝试使用 CreateSqlQuery 查询表并将其转换为包含公式属性的实体时,我得到以下 Adoexception。 “值不能为空。 参数名称:fieldName" 首先,是否可以在具有公式映射
我有一个简单的方法可以... Session.CreateSQLQuery(syntax).List(); 问题是,当我针对征用链接服务器连接的存储过程执行此操作时,我收到以下错误... 无法执行该操
我正在尝试使用 NH CreateSQLQuery 方法获取一些数据,例如 IList LCollection = sess.CreateSQLQuery(@"select * from some_s
使用 CreateSqlQuery 时,是否可以检索返回的列名的有序列表? 使用 .List 只返回对象值的列表,而不是列别名。 最佳答案 如果您申请 IResultTransformer通过 Set
在我的例子中,为什么命名或位置查询参数不能与 NHibernate 一起使用? 认为以下陈述是正确的: On Oracle database X and Y version 11.2.0.3.0 th
Query query=getHibernateTemplate().getSessionFactory().getCurrentSession().createSQLQuery(
在我的案例中,为什么命名或位置查询参数不能与 NHibernate 一起使用? 考虑以下陈述为真: On Oracle database X and Y version 11.2.0.3.0 the
我正在尝试运行这个: .. String modelTableName = (model == TableModelType.RING) ? "RING_PLAYERS" : "TOURNY_PLAY
我需要在Java领域编写hibernate查询(createSQLquery)我有查询,但我有点不知道如何为我的查询创建条件。 基本上我必须将常规 where 子句转移到 hibernate .add
我有两个项目,maven。 A - 休息应用,使用 hibernate 5.2.16.FINAL,包括 B(不包括其 hibernate) B - 库,使用 hibernate 4.3.9 项目 A
我有一个像这样的 mysql 查询来获取行号。 set @rank = 0; select @rank := @rank + 1 as rank,id,name from test 在 hiberna
在 hibernate 状态下,我编写了一个搜索表单 win Swing。为此目的: 我的实体 A 有 10 个字段,但在这种搜索的情况下,我只需要同一实体的 5 个字段/列。 我想使用 SQL 原生
我有一个项目正在从一个共享的 mysql 数据库中读取数据。有一个来自 session 的大帐户对象(太大,但那是另一回事)。 问题是这个对象有一个由同一台机器上的不同进程借记的余额字段。因此,用户看
我正在尝试按照以下方式获取 sql 计数 "select c1.id, count(c2.*) " + "from Category c1 "
这是我正在尝试处理的较大查询的较小版本。当我运行查询时,出现以下错误。我已尝试尽可能多地删除查询以尝试找到有罪的列,但没有取得任何成功。我正在使用 Spring 3.2.1、Hibernate 3.6
我对 Hibernate/Java (JSF 2.0) 很陌生,我正在尝试调用自定义查询并将结果读入我创建的登录对象中。 Logins 有两个 setter 函数,setLoginDate(Date
我的应用程序存在内存泄漏问题,因此我使用 JProfiler 来查找原因。我发现问题是在使用session.createSQLQuery()时Hibernate中的 native sql引起的。 还有
在 spring hibernatetemplate 的 createSQLQuery 中,我可以使用 where in(1,2,3,4,5,6....) 的语句是否有任何限制 ()? 最佳答案 如上
我需要获取以下查询的结果,但出现类型转换异常。请大家帮忙! SELECT COUNT(*) FROM ( SELECT DISTINCT a.PROPSTAT_CODE,a.PROPSTAT_DESC
hibernate 手册是这样说的: String sql = "SELECT ID as {c.id}, NAME as {c.name}, " + "BIRTHDATE as {c.birt
我是一名优秀的程序员,十分优秀!