`
ariyue
  • 浏览: 337900 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

使用Hibernate编写通用数据库操作代码

    博客分类:
  • java
阅读更多
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数据库通用SQL代码

    使用Hibernate编写通用数据库操作代码

    Maven struts-spring-hibernate全注解 通用CRUD示例

    2.抽取业务/持久层通用代码(UniversalService/UniversalDao),避免重复编写 比如有实体:tab1,tab2,tab3,现在要对其3张表CRUD(增删改查)操作: a.使用原始的方法要写业务/持久类,至少各3,计6个类 b.使用...

    code-generator:通用jdbc代码生成器,使用自定义免费标记模板为每个使用关系型数据库项目生成通用代码

    通用JDBC代码生成器通过xml配置文件和用户自定义的freemarker模板生成代码,支持自定义参数适用于任何使用java连接关系型数据库的项目,既是mybatis,ibatis,Hibernate或jpa,mybatis-puls等,无论何时开头,每个...

    支持多数据库的ORM框架ef-orm.zip

    框架的API设计直接面向数据库操作,不绕弯子,开发者只需要数据库基本知识,不必学习大量新的操作概念即可使用API完成各种DDL/DML操作。 最大限度利用编译器减少编码错误的可能性 API设计和元数据模型(meta-model...

    Android数据库应用编程——为企业开发数据驱动Android应用

    ◆ 详解使用Hibernate创建REST风格的Web服务以及将其连接到Android ◆ 通过避免在Internet上执行CRUD操作来提高性能 ◆ 开始编写连接到Android的后端云服务 ◆ 介绍新的开源和通用同步框架(专门与Android API集成) ...

    基于JAVA的两个通用安全模块的设计与实现.zip

    MyBatis或Hibernate可以简化数据库操作,提供了方便的ORM(对象关系映射)功能,使得数据的持久化变得简单和高效。 通过以上技术选择和框架搭建,该项目可以实现一个高性能、可扩展性强的Web应用程序。开发人员可以...

    一个很好的通用泛型dao(含源码)

    为什么我们要使用通用DAO接口呢,因为我们的数据库操作无非是增删改查,CRUD操作,我们不需要为每个实体去编写一个dao接口,对于相似的实体操作可以只编写一个通用接口,然后采用不同的实现! DAO已经成为持久层...

    java-entitymanager-generic-dao:使用 Hibernate EntityManager (Spring Boot) 的通用 Dao

    通过这样做,我们可以访问参数化数据操作,而无需编写单行代码。 请注意,这样做的主要目标是代码重用,这是每种语言的一种很好的做法:)。技术栈本示例使用: Spring Boot Framework(实现 CommandLineRunner 的...

    java-session-generic-dao:用于 Hibernate ORM (JSE) 的通用数据访问对象的非常简单的实现

    在这个实现中,我们使用通过 AnnotationConfiguration 从 hibernate.cfg.xml 文件创建的 Hibernate ORM Session 来实现基本操作,例如从数据库中插入、更新、删除和检索实体。 这种实现的主要优点是,由于这个 dao ...

    JAVA上百实例源码以及开源项目源代码

     Java编写的HTML浏览器源代码,一个很简单甚至不算是浏览器的HTML浏览器,使用方法:  可直接输入文件名或网络地址,但必需事先连入网络。 Java编写的山寨QQ,多人聊天+用户在线 21个目标文件 摘要:JAVA源码,...

    OrFlying For VB.NET

    1 全部代码是生成的,和数据库的访问全部由具体的代码,而没有后台通用的组件和层次,当然也注定了其应用面的狭窄; 2 这样产生的对象层,通过 . 可以一级一级的不断出现提示,这个特点是我非常喜欢的,也就是...

    OrFlying For VB6

    1 全部代码是生成的,和数据库的访问全部由具体的代码,而没有后台通用的组件和层次,当然也注定了其应用面的狭窄; 2 这样产生的对象层,通过 . 可以一级一级的不断出现提示,这个特点是我非常喜欢的,也就是...

    JAVA上百实例源码以及开源项目

     Java编写的HTML浏览器源代码,一个很简单甚至不算是浏览器的HTML浏览器,使用方法:  可直接输入文件名或网络地址,但必需事先连入网络。 Java编写的山寨QQ,多人聊天+用户在线 21个目标文件 摘要:JAVA源码,...

    SqlToolBox 1.8.2

    基于Java Swing编制而成,旨在于为开发人员,系统工程师和数据库管理员提供一种通用方便和快捷的数据库操作工具,使他们摆脱需要学习掌握使用多种数据库客户端的苦恼,并减轻他们日常操作数据库和编写Sql语句的任务...

    dropwizard-guice-jpa-seed:一个用 Java 编写的示例 REST 应用程序(dropwizard、guice、jpa、hibernate、cors 等)

    它的目的是创建一个通用项目,该项目可用作新项目的起点,也可用于学习工作(我正在建立一个开放的游戏数据库)。 基于版本 0.7.0 使用依赖注入(没有 Spring 依赖!) / JPA 2.1 作为数据库访问框架 作为数据库...

    CRUD-HibernateJPA:使用HibernateJPA框架进行对象关系映射的Java(Maven)中的CRUD

    CRUD-HibernateJPA JPA: Java Persistence API是标准... Hibernate: Hibernate是一种用Java语言编写的对象关系映射框架,它通过使用文件(XML)或Java注释来促进传统关系数据库和应用程序的对象模型之间的属性映射。

    Spring.3.x企业应用开发实战(完整版).part2

    第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 批量更改数据...

    Spring3.x企业应用开发实战(完整版) part1

    第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 批量更改数据...

Global site tag (gtag.js) - Google Analytics