insert方法
public void insert(Object o){
Session session = HibernateSessionFactory.currentSession();
Transaction t = session.beginTransaction();
session.save(o);
t.commit();
HibernateSessionFactory.clossSession();
}
delete方法
public void delete(Object o,Serializable id){
Session session = HibernateSessionFactory.currentSession():
Transaction t = session.beginTransaction();
Object o = session.get(o.class,id);
if(o!=null){
session.delete(o);
}
t.commit();
HibernateSessionFactory.clossSession();
}
update方法
public void update(Object o,Serializable id){
Session session = HibernateSessionFactory.currentSession();
Transaction t = session.beginTransaction();
session.update(o,id);
t.commit();
HibernateSessionFactory.clossSession();
}
基于HQL的通用select方法
public ArrayList select(String sql){
Session session = HibernateSessionFactory.currentSession();
Query query = createQuery(sql);
List list = query.list();
HibernateSessionFactory.clossSession();
return (ArrayList)list;
}
基于SQL的通用select方法
public ArrayList select(String sql) throws Exception{
Session session = HibernateSessionFactory.currentSession();
Connection con = session.connection();
PreparedStatement pstmt = con.preparedStatement(sql);
ResultSet rs = pstmt.executeQuery();
ResultSetMetaData rsmd = rs.getMetaData();
Hashtable ht = null;
ArrayList array = new ArrayList();
while(rs.next()){
ht = new Hashtable();
for(int i=0;i<rsmd.getColumnCount();i++){
ht.put(rsmd.getColumnName(i+1),rs.getObject(i+1));
}
array.add(ht);
}
HibernateSessionFactory.clossSession();
return array;
}
分享到:
相关推荐
使用Hibernate编写通用数据库操作代码
2.抽取业务/持久层通用代码(UniversalService/UniversalDao),避免重复编写 比如有实体:tab1,tab2,tab3,现在要对其3张表CRUD(增删改查)操作: a.使用原始的方法要写业务/持久类,至少各3,计6个类 b.使用...
通用JDBC代码生成器通过xml配置文件和用户自定义的freemarker模板生成代码,支持自定义参数适用于任何使用java连接关系型数据库的项目,既是mybatis,ibatis,Hibernate或jpa,mybatis-puls等,无论何时开头,每个...
框架的API设计直接面向数据库操作,不绕弯子,开发者只需要数据库基本知识,不必学习大量新的操作概念即可使用API完成各种DDL/DML操作。 最大限度利用编译器减少编码错误的可能性 API设计和元数据模型(meta-model...
◆ 详解使用Hibernate创建REST风格的Web服务以及将其连接到Android ◆ 通过避免在Internet上执行CRUD操作来提高性能 ◆ 开始编写连接到Android的后端云服务 ◆ 介绍新的开源和通用同步框架(专门与Android API集成) ...
MyBatis或Hibernate可以简化数据库操作,提供了方便的ORM(对象关系映射)功能,使得数据的持久化变得简单和高效。 通过以上技术选择和框架搭建,该项目可以实现一个高性能、可扩展性强的Web应用程序。开发人员可以...
为什么我们要使用通用DAO接口呢,因为我们的数据库操作无非是增删改查,CRUD操作,我们不需要为每个实体去编写一个dao接口,对于相似的实体操作可以只编写一个通用接口,然后采用不同的实现! DAO已经成为持久层...
通过这样做,我们可以访问参数化数据操作,而无需编写单行代码。 请注意,这样做的主要目标是代码重用,这是每种语言的一种很好的做法:)。技术栈本示例使用: Spring Boot Framework(实现 CommandLineRunner 的...
在这个实现中,我们使用通过 AnnotationConfiguration 从 hibernate.cfg.xml 文件创建的 Hibernate ORM Session 来实现基本操作,例如从数据库中插入、更新、删除和检索实体。 这种实现的主要优点是,由于这个 dao ...
Java编写的HTML浏览器源代码,一个很简单甚至不算是浏览器的HTML浏览器,使用方法: 可直接输入文件名或网络地址,但必需事先连入网络。 Java编写的山寨QQ,多人聊天+用户在线 21个目标文件 摘要:JAVA源码,...
1 全部代码是生成的,和数据库的访问全部由具体的代码,而没有后台通用的组件和层次,当然也注定了其应用面的狭窄; 2 这样产生的对象层,通过 . 可以一级一级的不断出现提示,这个特点是我非常喜欢的,也就是...
1 全部代码是生成的,和数据库的访问全部由具体的代码,而没有后台通用的组件和层次,当然也注定了其应用面的狭窄; 2 这样产生的对象层,通过 . 可以一级一级的不断出现提示,这个特点是我非常喜欢的,也就是...
Java编写的HTML浏览器源代码,一个很简单甚至不算是浏览器的HTML浏览器,使用方法: 可直接输入文件名或网络地址,但必需事先连入网络。 Java编写的山寨QQ,多人聊天+用户在线 21个目标文件 摘要:JAVA源码,...
基于Java Swing编制而成,旨在于为开发人员,系统工程师和数据库管理员提供一种通用方便和快捷的数据库操作工具,使他们摆脱需要学习掌握使用多种数据库客户端的苦恼,并减轻他们日常操作数据库和编写Sql语句的任务...
它的目的是创建一个通用项目,该项目可用作新项目的起点,也可用于学习工作(我正在建立一个开放的游戏数据库)。 基于版本 0.7.0 使用依赖注入(没有 Spring 依赖!) / JPA 2.1 作为数据库访问框架 作为数据库...
CRUD-HibernateJPA JPA: Java Persistence API是标准... Hibernate: Hibernate是一种用Java语言编写的对象关系映射框架,它通过使用文件(XML)或Java注释来促进传统关系数据库和应用程序的对象模型之间的属性映射。
第11章 使用Spring JDBC访问数据库 11.1 使用Spring JDBC 11.1.1 JDBCTemplate小试牛刀 11.1.2 在DAO中使用JDBCTemplate 11.2 基本的数据操作 11.2.1 更改数据 11.2.2 返回数据库的表自增主键值 11.2.3 批量更改数据...
第11章 使用Spring JDBC访问数据库 11.1 使用Spring JDBC 11.1.1 JDBCTemplate小试牛刀 11.1.2 在DAO中使用JDBCTemplate 11.2 基本的数据操作 11.2.1 更改数据 11.2.2 返回数据库的表自增主键值 11.2.3 批量更改数据...