• hibernate5.2的基本配置


    目标:将Student实体对象加入数据库

    1.首先需要下载三个东西:hibernate,slf4j,mysql。

    2.分别取他们的包导入新建的项目中,我这里的版本是:hibernate-release-5.2.10里面lib目录下的required中的全部文件      slf4j-1.7.25下的受slf4j-nop-1.7.25.jar       mysql的mysql-connector-java-5.1.42-bin.jar

    3.在src下配置hibernate.cfg.xml(建议直接去文档复制然后改)

    <?xml version='1.0' encoding='utf-8'?>
    <!DOCTYPE hibernate-configuration PUBLIC
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
    <hibernate-configuration>
    <session-factory>
    <!-- Database connection settings -->
    <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
    <property name="connection.url">jdbc:mysql://localhost/text02</property>
    <property name="connection.username">root</property>
    <property name="connection.password">6530033197</property>
    <!-- JDBC connection pool (use the built-in) -->
    <!--
    <property name="connection.pool_size">1</property>
    -->
    <!-- SQL dialect -->
    <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
    <!-- Enable Hibernate's automatic session context management -->
    <!-- <property name="current_session_context_class">thread</property> -->
    <!-- Disable the second-level cache -->
    <property name="cache.provider_class">org.hibernate.cache.internal.NoCacheProvider</property>
    <!-- Echo all executed SQL to stdout -->
    <property name="show_sql">true</property>
    <!-- Drop and re-create the database schema on startup -->
    <!--
    <property name="hbm2ddl.auto">update</property>
    -->
    <mapping resource="student/Student.hbm.xml"/>
    </session-factory>
    </hibernate-configuration>

    4.在mysql中创建student表,字段:id  age  name

    5.创建自己的实体类在src下建包student,然后建Class:Student.java

    package student;
    
    public class Student {
    private int id;
    private int age;
    private String name;
    
    public int getId() {
    return id;
    }
    public void setId(int id) {
    this.id = id;
    }
    public int getAge() {
    return age;
    }
    public void setAge(int age) {
    this.age = age;
    }
    public String getName() {
    return name;
    }
    public void setName(String name) {
    this.name = name;
    }
    public Student(int id, int age, String name) {
    super();
    this.id = id;
    this.age = age;
    this.name = name;
    }
    
    public Student() {
    // TODO Auto-generated constructor stub
    }
    
    }

    6.在对应package即student下配置文件:Student.hbm.xml

    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
    
    <hibernate-mapping package="student">
    <class name="Student" table="student">
    <id name="id" column="id">
    </id>
    <property name="name" type="string" column="name"/>
    <property name="age" type="int" column="age"/>
    </class>
    </hibernate-mapping>

    7.创建测试类:StudentText.java

    package student;
    
    import org.hibernate.Session;
    import org.hibernate.SessionFactory;
    import org.hibernate.cfg.Configuration;
    
    public class StudentText {
    
    public static void main(String[] args) {
    Student stu = new Student();
    stu.setId(4);
    stu.setName("小明");
    stu.setAge(12);
    
    Configuration con = new Configuration();
    SessionFactory sf = con.configure().buildSessionFactory();
    Session s = sf.openSession();
    s.beginTransaction();
    s.save(stu);
    s.getTransaction().commit();
    s.close();
    sf.close();
    
    }
    
    }

    输出结果,完成:

  • 相关阅读:
    go——数组
    go——流程控制
    go——基本类型
    go——基本构成要素
    go——常量
    go——变量
    go——标准命令
    go——工程结构
    python 优雅的使用正则表达式 ~ 1
    python 安装操作 MySQL 数据库.
  • 原文地址:https://www.cnblogs.com/xiaoweihua/p/6965111.html
Copyright © 2020-2023  润新知