Home  >  Article  >  Java  >  Detailed explanation of the basic configuration of hibernate5.2

Detailed explanation of the basic configuration of hibernate5.2

零下一度
零下一度Original
2017-06-25 10:59:142020browse

Goal: Add the Student entity object to the database

1. First you need to download three things: hibernate, slf4j, mysql.

2. Take their packages and import them into the newly created project. The version I have here is: all the files in required in the lib directory in hibernate-release-5.2.10 and the ones under slf4j-1.7.25. slf4j-nop-1.7.25.jar mysql’s mysql-connector-java-5.1.42-bin.jar

3. Configure hibernate.cfg.xml under src (it is recommended to go directly to the document to copy and then change it)

<?xml version=&#39;1.0&#39; encoding=&#39;utf-8&#39;?>
<!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&#39;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. Create a student table in mysql, field: id age name

5. Create your own entity class and build it under src Package student, and then create 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. Configure the file under the corresponding 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. Create test class: 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();

}

}

Output results ,Finish:

The above is the detailed content of Detailed explanation of the basic configuration of hibernate5.2. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn