Hibernate批量更新(实时插入数据库,不通过缓存)

代码如下:

StringBuffer quyHql = new StringBuffer();
		 
		quyHql.append(" from User where userId=?  and status=?");
		 
		// 使用无状态的session实现实时操作数据库
		StatelessSession session = getSessionFactory().openStatelessSession();
		Transaction tx = session.beginTransaction();
		ScrollableResults list = session.createQuery(quyHql.toString()).setLong(0, id)
				.setString(1, GlobalConstants.DIC_VALUE_VALID_VALIDITY).scroll(ScrollMode.FORWARD_ONLY);
		try {
			while (list.next()) {
				
                              User user= (User) list.get(0);
                              user.setStatus(GlobalConstants.DIC_VALUE_VALID_INVALIDITY);// 无效
session.update(user);//一旦执行完,立刻生效}} catch (Exception e) {logger.info("回滚");tx.rollback();}tx.commit();session.close();

猜你喜欢

转载自blog.csdn.net/zqq3436/article/details/80846058
今日推荐