一个很棘手的问题,做的是XML数据导入功能,数据无法提交,也没有出现任何异常,在控制台里面都没有出现插入语句,但如果我单纯的提交一个对象,就是普通的提交数据功能,也是在用一个事务里面,就能提交数据。代码如下,若代码有问题,请指出。/** * 开始导入 * * @param xmlList * XML文件绝对路径数组 * @return */ private int sendImport(String[] xmlList) { Session session = null; try { session = Database.getSession(); Session xmlSession = session.getSession(EntityMode.DOM4J); session.beginTransaction(); for (int i = 0; i < xmlList.length; i++) { inportByXML(xmlSession, xmlList[i]); } session.getTransaction().commit(); } catch (Exception e) { session.getTransaction().rollback(); Database.endTransaction(true); return ERROR_IMPORT; } finally { session.close(); } return IMPORT; } /** * 存入数据库 * * @param xmlSession * @param xmlPath * XML绝对路径 * @throws DocumentException */ private void inportByXML(Session xmlSession, String xmlPath) throws DocumentException { SAXReader reader = new SAXReader(); Document document = reader.read(xmlPath); List entities = document.getRootElement().content(); Iterator it = entities.iterator(); while (it.hasNext()) { Node item = (Node) it.next(); xmlSession.save(c.getName(), item); } }
添加回答
举报
0/150
提交
取消