解决方案 »
- spring requestMapping问题
- java 列表
- 在Hibernate中不能添加一条中文,却能添加一条英文的诡异问题!
- <s:if> 比较Integer类型对象
- java.lang.OutOfMemoryError: Java heap space
- hibernate sequence 生成yyyymmdd+3位序列号
- SSH整合通常有哪些方法?
- Hiberneta one to many关系,讲明白立刻给分(100分)
- hibernate 与 struts协作的问题
- Hibernate和Spring结合的一个问题
- Hibernate (Unable to instantiate default tuplizer [org.hibernate.tuple.entity.Po
- struts2+spring中 action如何获得request对象.
session.beginTransaction();
提交事务
session.getTransaction().commit();
回滚
session.getTransaction().rollback();
public String doSave(Credituser dto) {
String msg = "";
// TODO Auto-generated method stub
session = HibernateSessionFactory.getSession();
Transaction ts = null;
try {
ts = session.beginTransaction();
if (dto.getCreateperson().length() > 5) {
dto.setCurcreditamount(dto.getCreditlimit());
session.save(dto);
session.flush();
Creditadjustlog adjust = new Creditadjustlog();
adjust.setAdjperson(dto.getCreateperson());
adjust.setAdjtime(dto.getCreatetime());
adjust.setCreditamount("0");
adjust.setCuramount("0");
adjust.setWarnamount("0");
adjust.setExpiretime("");
adjust.setCreditseq(dto.getCreditseq().toString());
session.save(adjust);
session.flush();
String sql01 = "insert into creditadjustlog(adjustseq,adjtime,adjperson,creditamount,curamount,warnamount,expiretime,creditseq)"
+ " select SEQ_ADJUST_ID.NEXTVAL,'"
+ dto.getCreatetime()
+ "','"
+ dto.getCreateperson()
+ "',curcreditamount,creditlimit,warnamount,expiretime,creditseq from credituser where credituserno='"
+ dto.getCreateperson() + "'";
session.createSQLQuery(sql01).executeUpdate();
session.flush();
String sql02 = "update credituser set creditlimit=to_char(to_number(creditlimit)-"
+ Integer.parseInt(dto.getCreditlimit())
+ ") where credituserno='"
+ dto.getCreateperson()
+ "'";
session.createSQLQuery(sql02).executeUpdate();
session.flush();
} else {
dto.setCurcreditamount(dto.getCreditlimit());
session.save(dto);
session.flush();
Creditadjustlog adjust = new Creditadjustlog();
adjust.setAdjperson(dto.getCreateperson());
adjust.setAdjtime(dto.getCreatetime());
adjust.setCreditamount("0");
adjust.setCuramount("0");
adjust.setWarnamount("0");
adjust.setExpiretime("");
adjust.setCreditseq(dto.getCreditseq().toString());
session.save(adjust);
session.flush();
} ts.commit();
msg = "0";
} catch (Exception e) {
System.out.println("insert error: " + e.getMessage());
if (ts != null) {
ts.rollback();
}
msg = "error";
} finally {
HibernateSessionFactory.closeSession();
}
return msg;
}