请教个关于hibernate中转化成EntityMode.DOM4J的问题

问题描述

请教个问题,关于hibernate的 public void getXmlCom(){Document doc = DocumentHelper.createDocument(); //Element rootElement = doc.addElement("root");Session session = (Session) HibernateSessionFactory.getSession();//Session session = factory.openSession();Session dom4jSession = (Session) session.getSession(EntityMode.DOM4J);Transaction tx = session.beginTransaction();List results = dom4jSession .createQuery(" select m.f1,s.f2 from table1 m ,table2 s where m.id=s.id and rownum < ? ") .setInteger(0 , 2) .list();for ( int i=0; i<results.size(); i++ ) { //add the customer data to the XML document Element customer = (Element) results.get(i); //rootElement.add(customer); doc.add(customer);}System.out.println(doc.asXML());tx.commit();session.close();}这种情况下会出问题:如果把hql改成(select m.f1 from table1 m where rownum < ?)就没问题,怎么解释?出错的行为:Element customer = (Element) results.get(i);并不是说执行语句有问题谁能解释下,谢谢各位 问题补充:两个实体?怎么封装?具体说下chenliecan 写道

解决方案

你是要提取两个表吗? 一个对应一个实体嘛,只要你是a.* 就会封装成Object[]举例:select a.name,a.sex from tabl1 a;reult:Object[] = {a.name,a.sex}
解决方案二:
select m.f1,s.f2 from table1 m ,table2 s 。。。。。。。。你这里得到是两个实体,封装应该是Object[]

时间: 2024-09-22 08:55:44

请教个关于hibernate中转化成EntityMode.DOM4J的问题的相关文章

ndef-新人请教如何将tag格式化成NDEF

问题描述 新人请教如何将tag格式化成NDEF 目前做一个小demo,需求是点击按钮,跳转到另一个界面,然后读tag 将tag中的信息格式化成NDEF,求教

oracle-在线等,请教一下,hibernate 原生 sql语句 查询lag( , , ),出现语法错误

问题描述 在线等,请教一下,hibernate 原生 sql语句 查询lag( , , ),出现语法错误 String queryString = "select smsid from Sms where smsid = ( select c.p from ( select smsid,lag(smsid,1,0) over (order by smsid) as p from Sms) c where c.smsid= "+ smsid + ")"; SQLQue

请教:org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch ...

问题描述 org.hibernate.exception.SQLGrammarException:CouldnotexecuteJDBCbatchupdateatorg.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)atorg.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)atorg.hiber

请教下关于hibernate的 映射问题 求大神解答

问题描述 hibernate一对一双向关联A类外建关联B类用hql查询语句formAjoinfatchB得到A对象和A.getB对象但是hibernate为了给B对象setA对象会自动发出单独的sql语句有几个A对象就发几条这个怎么解决? 解决方案 解决方案二:inverse="true"双向关联一般都要这样配置让某一方来维护sql解决方案三:我在B类设置了mappedBy啊解决方案四:楼上说的差不多那意思解决方案五:自己顶下.....

springmvc-请教:Spring + Hibernate 无法将数据写入数据库?

问题描述 请教:Spring + Hibernate 无法将数据写入数据库? Spring + Hibernate 无法将数据写入数据 请教: 通过Junit单元测试Service可以将数据写入数据库:但部署访问却无法向数据库写入数据. 1 环境: Spring 3.1.2 Hibernate 4.1.4 Jdk1.6 2 配置: 2.1 Web.xml <!-- Spring ApplicationContext配置文件的路径,可使用通配符,多个路径用,号分隔 此参数用于后面的Spring C

session-关于hibernate修改数据的疑惑

问题描述 关于hibernate修改数据的疑惑 各位大神,请教一个关于hibernate修改数据的问题,看代码 public void addUser(){ System.out.println("begin......."); Session session = null; Transaction transaction = null; session = SessionFactoryUtil.getSessionFactory().openSession(); transactio

关于hibernate修改数据的疑惑

问题描述 各位大神,请教一个关于hibernate修改数据的问题,看代码 public void addUser(){ System.out.println("begin......."); Session session = null; Transaction transaction = null; session = SessionFactoryUtil.getSessionFactory().openSession(); transaction = session.beginTr

如何将DataGrid纵向排列【困扰1星期了】

问题描述 DataGrid中默认的排列是abc11.11.2修改删除55.55.8修改删除由于abc等列比较多,横向太长,不利于观察怎么才能改成.修改修改删除删除a15b1.15.5c1.25.8请教啊--我的原代码如下:请直接修改,或者贴出更好的东西.DATAGIRD原代码如下:<asp:datagridid="DataGrid1"Runat="server"DataKeyField="OrganizationID"EnableViewS

Spring 编程入门十大问题解答

编程|解答|问题 1.如何学习Spring? 你可以通过下列途径学习spring: (1) spring下载包中doc目录下的MVC-step-by-step和sample目录下的例子都是比较好的spring开发的例子. (2) AppFuse集成了目前最流行的几个开源轻量级框架或者工具 Ant,XDoclet,Spring,Hibernate(iBATIS),JUnit,Cactus,StrutsTestCase,Canoo's WebTest,Struts Menu,Display Tag