hibernate环境配置与单表操作

1、ORM:POJO<-->table
2、主键生成策略:identity(sql)、sequence(oracle)、native(自动选择)、assigned(手动)
3、配置:6准备(3拷3配):
3拷:hibernate包、jdbc包、log4j配置文件(properties(src下))
3配:POJO(实体bean)、映射文件(POJO类.hbm.xml(与一个POJO对应(src下)))、总配置文件hibernate.cfg.xml

POJO类.hbm.xml:
<hibernate-mapping>
<class name="com.pojo.Student" table="student"> <!-- O/R -->
<id name="sid" column="sid">  <!-- primary key -->
  <generator class="native"></generator> <!-- 生成策略 -->
</id>
<property name="sname" column="sname"></property>   <!-- 其他字段 -->
<property name="saddr" column="saddr"></property>
<property name="sbirthday" column="sbirthday"></property>
</class>
</hibernate-mapping>

hibernate.cfg.xml:方言dialect、format_sql:true(显示sql)、POJO类.hbm.xml在此注册

4、基本操作zsgc
Configuration cfg = new Configuration().configure(); //读取配置
SessionFactory sessionFactory = cfg.buildSessionFactory(); //创建工厂
Session  session = sessionFactory.openSession(); //打开session
Transaction tr = session.beginTransaction();  //开启事务(针对zsg)
a.创建表
  //到src读取默认的配置文件
  Configuration cfg = new Configuration().configure();
  SchemaExport  export = new SchemaExport(cfg);
  //根据pojo和映射文件生成表,是否删除旧表,是否显示sql语句
  export.create(true, true);
b.
  Transaction tr = session.beginTransaction();
  try {
   Student stu = new Student();
   stu.setSbirthday(java.sql.Date.valueOf("1980-2-1"));
   stu.setSex(0);
   stu.setSname("范剑");
   session.save(stu);  //保存
   tr.commit();
  } catch (Exception e) {
   // TODO: handle exception
   e.printStackTrace();
   tr.rollback();
  }finally{
   session.close();
  }
c.
  先查:
  Student stu = (Student) session.get(Student.class, 1);  //根据主键查找
  再删:
  session.delete(stu);
d.(同删:先查后改)
  session.update(stu);
e.
  1.查询所有:
   Query  query  = session.createQuery("from Student");  //HQL语句
   java.util.List<Student>   list   = query.list(); //存放list
   //遍历输出
  2.条件查询:
   Query  query  = session.createQuery("from Student where Sname like ?");
   query.setParameter(0, "夏%");
   //存放结果-->遍历输出

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值