• Hibernate基础增删改查语法


    1、创建好Hibernate项目,创建好实体类和测试类,如果不会创建Hibernate项目的同学,点此处:http://www.cnblogs.com/zhaojinyan/p/9336174.html

    2、数据库增删改查的操作都在测试类中写的。代码如下:

     添加数据

    import java.util.Date;
    import org.hibernate.Session;
    import org.hibernate.SessionFactory;
    import org.hibernate.Transaction;
    import org.hibernate.cfg.Configuration;
    import org.hibernate.service.ServiceRegistry;
    import org.hibernate.service.ServiceRegistryBuilder;
    
    public class Test {
    
       
        public static void test() {
            //创建一个 SessionFactory 对象
            SessionFactory sessionFactory = null;
            
            //创建Configuration对象:对应hibernate的基本配置信息和对象关系映射信息
            Configuration configuration = new Configuration().configure();
           
            //创建一个 ServiceRegistry 对象: hibernate 4.x 新添加的对象
            //hibernate 的任何配置和服务都需要在该对象中注册后才能有效.
            ServiceRegistry serviceRegistry = 
                            new ServiceRegistryBuilder().applySettings(configuration.getProperties())
                                                        .buildServiceRegistry();
    
            sessionFactory = configuration.buildSessionFactory(serviceRegistry);
    
            // 创建一个 Session 对象
            Session session = sessionFactory.openSession();
    
            // 开启事务
            Transaction transaction = session.beginTransaction();
    
            //执行保存和加载操作
            //增数据
            
            News news1 = new News("Java1", "lisi", new Date(new java.util.Date().getTime()));
            News news2 = new News("Java2", "wangwu", new Date(new java.util.Date().getTime()));
            News news3 = new News("Java3", "zhaoliu", new Date(new java.util.Date().getTime()));
            News news4 = new News("Java4", "huhu", new Date(new java.util.Date().getTime()));
            News news5 = new News("Java5", "dudu", new Date(new java.util.Date().getTime()));
            //执行添加用save方法
            session.save(news1);
            session.save(news2);
            session.save(news3);
            session.save(news4);
            session.save(news5);
            
            //5. 提交事务 
            transaction.commit();
    
            //6. 关闭 Session
            session.close();
    
            //7. 关闭 SessionFactory 对象
            sessionFactory.close();
        }
    
        public static void main(String[] args) {
            test();
        }
        
    }
    View Code

     执行过程:

     

     测试结果:

      

      删除数据 

    //删除一条数据(ID=5)
            //先获取id=5的一个对象
            News p =(News) session.get(News.class, 5);
            //执行删除用delete方法
            session.delete(p);
    View Code

      执行过程:

      

      测试结果(删除了id=5的一条数据):

      

      修改数据:

     //修改数据
            //先获取id=4的一个对象
            News p=(News)session.get(News.class,4);
           
            //修改数据用到的是实体类中的set成员方法
            p.setTitle("c#");//Title字段
            p.setContent("赵sir");//content字段
            p.setDate(new Date(new java.util.Date().getTime()));//时间字段

      执行过程:

      

      执行结果(id=4的数据已经被修改成我们想要的数据):

      

      查询数据:

      加入了条件:

      //查询数据
            //得到Query对象,并写入hql语句
            Query query = session.createQuery("from News where title='c#'");
            //使用Query对象的list方法得到数据集合
            List<News> list = query.list();
            //遍历集合获取数据
            for (News news : list) {
                System.out.println(news);
            }

      执行结果:

      

    在这里简单的介绍了,Hibernate最简单的操作语法,更深的知识在其他的篇章再写。

      

  • 相关阅读:
    canvas制作简单动画
    jQuery 2.2 和 1.12 新版本发布
    jquery实现简单鼠标经过图片预览效果
    js深入理解"闭包"
    js判断一个变量是否为数组的解决方案
    js+css:43种常见的浏览器兼容性问题大汇总
    js判断当前操作系统
    js判断是否微信浏览器打开
    h5connect.js 腾讯云视频点播使用指南
    Docker入门书籍
  • 原文地址:https://www.cnblogs.com/zhaojinyan/p/9340183.html
Copyright © 2020-2023  润新知