hibernate正向生成数据库表以及配置——TestStu.java

简介: hibernate正向生成数据库表以及配置——TestStu.java
package cn.bdqn.studentInfo.test;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.tool.hbm2ddl.SchemaExport;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import cn.bdqn.studentInfo.entity.Student;
import cn.bdqn.studentInfo.entity.Teacher;
/**
 * 测试类
 * @author Administrator
 *
 */
public class testStu {
  
  private Configuration conf=null;
  private SessionFactory sessionFac=null;
  private Session session=null;
  private Transaction tx=null;
  
  /**
   * 正向创建数据表
   */
  @Test
  public void createDB(){
    Configuration conf=new Configuration()
                .configure();
    SchemaExport export =new SchemaExport(conf);
    export.create(true, true);
  }
  /**
   * 测试
   */
  @Test
  public void testMethod(){
    Session session=new Configuration().configure().buildSessionFactory().openSession();
    Transaction tx=session.beginTransaction();
    try{
    //创建两个学生对象
    Student student1=new Student();
    student1.setName("张同学");
    student1.setId(9);
    
    Student student2=new Student();
    student2.setName("王同学");
    student2.setId(10);
    //创建两个老师对象
    Teacher teacher1=new Teacher();
    teacher1.setId(9);
    teacher1.setName("武老师");
    
    Teacher teacher2=new Teacher();
    teacher2.setId(10);
    teacher2.setName("程老师");
    
    /**
     * 关联双方的关系
     */
    
    //告诉张同学,武老师和程老师都带着你的课
    student1.getTeachers().add(teacher1);
    student1.getTeachers().add(teacher2);
    //告诉王同学,武老师和程老师都带着你的课
    student2.getTeachers().add(teacher1);
    student2.getTeachers().add(teacher2);
    //告诉武老师,你现在带着王、张同学的课
    teacher1.getStudents().add(student1);
    teacher1.getStudents().add(student2);
    //告诉程老师,你现在带着王、张同学的课
    teacher2.getStudents().add(student1);
    teacher2.getStudents().add(student2);
    //添加
    session.save(student1);
    session.save(student2);
    /*session.save(teacher1);
    session.save(teacher2);*/
    tx.commit();
    }catch (Exception e) {
      tx.rollback();//添加失败时,进行回滚
      e.printStackTrace();
    }
    
  }
  
  /**
   * 关闭session
   */
  @After
  public void closeSession(){
    if(session!=null){
      session.close();
    }
  }
}


相关文章
|
13天前
|
Oracle 关系型数据库 Linux
【赵渝强老师】Oracle数据库配置助手:DBCA
Oracle数据库配置助手(DBCA)是用于创建和配置Oracle数据库的工具,支持图形界面和静默执行模式。本文介绍了使用DBCA在Linux环境下创建数据库的完整步骤,包括选择数据库操作类型、配置存储与网络选项、设置管理密码等,并提供了界面截图与视频讲解,帮助用户快速掌握数据库创建流程。
188 93
|
3月前
|
人工智能 前端开发 Java
2025年WebStorm高效Java开发全指南:从配置到实战
WebStorm 2025不仅是一款强大的JavaScript IDE,也全面支持Java开发。本文详解其AI辅助编程、Java特性增强及性能优化,并提供环境配置、高效开发技巧与实战案例,助你打造流畅的全栈开发体验。
293 4
|
4月前
|
关系型数据库 MySQL 数据库连接
Django数据库配置避坑指南:从初始化到生产环境的实战优化
本文介绍了Django数据库配置与初始化实战,涵盖MySQL等主流数据库的配置方法及常见问题处理。内容包括数据库连接设置、驱动安装、配置检查、数据表生成、初始数据导入导出,并提供真实项目部署场景的操作步骤与示例代码,适用于开发、测试及生产环境搭建。
138 1
|
4月前
|
资源调度 安全 Java
Java 大数据在智能教育在线实验室设备管理与实验资源优化配置中的应用实践
本文探讨Java大数据技术在智能教育在线实验室设备管理与资源优化中的应用。通过统一接入异构设备、构建四层实时处理管道及安全防护双体系,显著提升设备利用率与实验效率。某“双一流”高校实践显示,设备利用率从41%升至89%,等待时间缩短78%。该方案降低管理成本,为教育数字化转型提供技术支持。
96 1
|
5月前
|
负载均衡 算法 关系型数据库
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
本文聚焦 MySQL 集群架构中的负载均衡算法,阐述其重要性。详细介绍轮询、加权轮询、最少连接、加权最少连接、随机、源地址哈希等常用算法,分析各自优缺点及适用场景。并提供 Java 语言代码实现示例,助力直观理解。文章结构清晰,语言通俗易懂,对理解和应用负载均衡算法具有实用价值和参考价值。
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
|
13天前
|
Ubuntu 安全 关系型数据库
安装与配置MySQL 8 on Ubuntu,包括权限授予、数据库备份及远程连接指南
以上步骤提供了在Ubuntu上从头开始设置、配置、授权、备份及恢复一个基础但完整的MySQL环境所需知识点。
188 7
|
13天前
|
缓存 Java 应用服务中间件
Spring Boot配置优化:Tomcat+数据库+缓存+日志,全场景教程
本文详解Spring Boot十大核心配置优化技巧,涵盖Tomcat连接池、数据库连接池、Jackson时区、日志管理、缓存策略、异步线程池等关键配置,结合代码示例与通俗解释,助你轻松掌握高并发场景下的性能调优方法,适用于实际项目落地。
198 4
|
4月前
|
Java 应用服务中间件 Linux
在Java 12环境中配置和部署Apache Tomcat的步骤。
这段部署Tomcat的冒险旅程充满技术挑战,但同时也像游戏一样充满乐趣。它需要你提前准备,仔细执行,并随时准备解决意外情况。成功后,你就可以在这匹强壮的网络野马上,带着你的Java应用,冲向Web开发的璀璨星空。
130 56
|
3月前
|
存储 搜索推荐 算法
Java 大视界 -- Java 大数据在智能金融理财产品风险评估与个性化配置中的应用(195)
本文深入探讨了Java大数据技术在智能金融理财产品风险评估与个性化配置中的关键应用。通过高效的数据采集、存储与分析,Java大数据技术助力金融机构实现精准风险评估与个性化推荐,提升投资收益并降低风险。
Java 大视界 -- Java 大数据在智能金融理财产品风险评估与个性化配置中的应用(195)
|
4月前
|
安全 Java 数据库
Jasypt加密数据库配置信息
本文介绍了使用 Jasypt 对配置文件中的公网数据库认证信息进行加密的方法,以提升系统安全性。主要内容包括:1. 背景介绍;2. 前期准备,如依赖导入及版本选择;3. 生成密钥并实现加解密测试;4. 在配置文件中应用加密后的密码,并通过测试接口验证解密结果。确保密码安全的同时,保障系统的正常运行。
287 3
Jasypt加密数据库配置信息

热门文章

最新文章