Hibernate结果 - 按顺序获取多个实体

时间:2018-03-23 11:20:38

标签: java mysql hibernate

我正在尝试获得多个实体。这是解释我的问题的伪代码。

const ceaser = (text, positions) => {
  return text.split('').map(ch => {
    let charCode = ch.charCodeAt(0)
    let base = 0;

    // ASCII A-Z
    if (charCode >= 65 && charCode <= 90) 
      base = 65;

    // ASCII a-z
    if (charCode >= 97 && charCode <= 122) 
      base = 97;

    if (base === 0) return ch;
    return String.fromCharCode((((charCode - base) + positions) % 26) + base);

  }).join('');
};

console.log(ceaser("Testing 123", 4));
console.log(ceaser("XYZ", 4));

这给了我一个包含Object []的Arraylist,我的问题是a,b和c实体不是我想要的顺序。记住我的查询,“选择一个。,b。,c。* ..”但是Object []中的实体是c,a,b。当我试图获得一个实体时,

    String qString ="select a.*, b.*, c.* from a_table a, b_table b, c_table c where a.x = b.x and b.y = c.y";

    SQLQuery sqlQ = session.createSQLQuery(qString);

    //adding entities
    sqlQ.addEntity("a", a_table.class);
    sqlQ.addEntity("b", b_table.class);
    sqlQ.addEntity("c", c_table.class);

    //then executing
    List l = sqlQ.list();

它抛出异常,因为它无法将c obj转换为obj。我试图在我的查询中重新排序实体(例如选择c,b,a而不是a,b,c),但结果顺序永远不会改变,Object []总是包含c,然后是b实体。 / p>

有什么建议吗? Hibernate如何决定这个顺序?

0 个答案:

没有答案