• 在hibernate中获取connection数据库连接有两种方法:(操作数据库常用这种方法)
  • 1. session.doReturningWork   返回一个对象,适用于查询方法
  • 2. session.doWork      不返回对象,适用于增删改

案例一:

package action;

import java.sql.Connection;
import java.sql.SQLException; import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanHandler;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.cache.spi.QueryResultsRegion;
import org.hibernate.jdbc.ReturningWork; import bean.User;
import util.HibernateUtil; public class Query_JDBC {
public static void main(String[] args) {
Query_JDBC.jdbc();
} /**
* 在Hibernate中获取Connection接口
*/
private static void jdbc() { Session session = null;
Transaction tran = null; try { session = HibernateUtil.getSession();
tran = session.beginTransaction(); User user = session.doReturningWork(new ReturningWork<User>() { @Override
public User execute(Connection conn) throws SQLException {
QueryRunner queryRunner = new QueryRunner();
String sql = "select username,userid,is_admin as isadmin from user where userid=1"; //数据库中的is_admin和bean中的isdmin不一致
User user = queryRunner.query(conn, sql,
new BeanHandler<User>(User.class)); return user;
} }); System.out.println("username=" + user.getUsername() + "\t"
+ "userid=" + user.getUserid() + "\t" + "isadmin?"
+ user.getIsAdmin()); tran.commit();
} catch (Exception e) {
e.printStackTrace();
tran.rollback();
} finally {
HibernateUtil.closeSession();
} } }

结果:

代码在下面章节

最新文章

  1. WPF界面布局——Canvas
  2. [JavaScript]顺序的异步执行
  3. VMware Fusion 中如何复制centos/linux虚拟机
  4. 零件分组_DP
  5. 【HDU】1846 Brave Game
  6. situations where MyISAM will be faster than InnoDB
  7. 如何查看postfix的版本
  8. PS-添加前景色
  9. DWZ(JUI) 教程 中如何整合第三方jQuery插件
  10. python运维开发之第四天
  11. ASP.NET MVC导入excel到数据库
  12. eclipse 小方法
  13. smtp模块使用
  14. 33.Linux-实现U盘自动挂载(详解)
  15. Swift学习第二天--面向对象
  16. [物理学与PDEs]第1章习题15 媒介中电磁场的电磁动量密度向量与电磁动量流密度张量
  17. Ubuntu18.04下make menuconfig缺少ncurses库
  18. Spring Boot默认Initializer(1)——ConfigurationWarningsApplicationContextInitializer
  19. REACT Missing “key” prop for element
  20. 在用mybatis向MySQL数据库中插入时间时报错:Incorrect datetime value: &#39;&#39; for column &#39;&#39; at row 1

热门文章

  1. Go 语言入门(二)方法和接口
  2. mybatis的maven配置
  3. 富文本编辑器handyeditor,上传和预览图片的host地址不一样
  4. python开发-实现redis中的发布订阅功能
  5. pytorch中的学习率调整函数
  6. 严重性 代码 说明 项目 文件 行 禁止显示状态错误 C1128 节数超过对象文件格式限制: 请使用 /bigobj 进行编译。
  7. 《最长的一帧》 osg3.4 osgViewer::View::init() osgViewer::Viewer::getContexts()
  8. 26 Flutter仿京东商城项目 购物车之 event_bus事件广播 事件监听
  9. 一百四十一:CMS系统之根据板块过滤显示帖子
  10. laravel构建联合查询