hibernate学习2_简单hibernate实现

本文通过java工程+hibernate简单实现了一个hibernate持久化java对象到mysql数据库的功能。

1、工程配置

2、数据库连接配置文件hibernate.cfg.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="com.djl.test">
    <class name="Student" table="student">
      <id name="id" column="ID">
      </id>
      <property name="name" column="name" type="string"/>
      <property name="age" column="age" type="integer"/>
    </class>
</hibernate-mapping>

3、新建对应java实体Student.java

package com.djl.test;

public class Student {
    private int id;
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    private String name;
    private int age;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }

}

4、建立实体与数据库对应映射关系 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="com.djl.test">
    <class name="Student" table="student">
      <id name="id" column="ID">
      </id>
      <property name="name" column="name" type="string"/>
      <property name="age" column="age" type="integer"/>
    </class>
</hibernate-mapping>

5、简单测试程序进行调用

package com.djl.test;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

public class MainTest {
    public static void main(String... args){
        Student stu = new Student();
        stu.setId(0);
        stu.setAge(20);
        stu.setName("wangshan");
        Configuration config = new Configuration();
        config.configure();
        SessionFactory factory =  config.buildSessionFactory();
        Session session = factory.openSession();
        session.beginTransaction();
        session.save(stu);
        session.getTransaction().commit();
        session.close();
        factory.close();
    }
}

运行结果

时间: 2024-08-11 09:44:50

hibernate学习2_简单hibernate实现的相关文章

Hibernate学习一:Hibernate注解CascadeType

http://zy19982004.iteye.com/blog/1721846 ———————————————————————————————————————————————————————— Hibernate学习一:Hibernate注解CascadeType 博客分类: Hibernate hibernate 一.概念 现有一场景:一个管理员可以管理多个网吧,一个网吧可以被多个管理员管理.从中抽象出一个多对多的例子user-bar. 主控方user:多对多里面里面会有第三张表user_b

Hibernate学习笔记(2)Hibernate问题

(1)数据库驱动问题 log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment). log4j:WARN Please initialize the log4j system properly. Exception in thread "main" org.hibernate.HibernateException: JDBC Driver class not found: com.m

Hibernate学习之简单应用

前言:博主在学到Spring的时候,要开始做项目了,突然觉得好像有点虚,之前学过的Hibernate框架的简单应用好像又忘记了.所以返回来,做个小笔记. 简单来讲,Hibernate框架是利用对象-关系型数据映射(ORM)实现持久化(将数据存入可持久保存的存储设备中). 怎么用呢?这里有一个小demo,实现的是基于Annotation(注解)实现CRUD(增删改查).可以简单分为三步. ① 创建实体类entity(这里的实体类就是UserInfo吧),实体类在此处的作用就跟JavaBean或PO

hibernate学习3_简单hibernate_Annotation实现

一.工程搭建 (需要注意额外引入如下三个jar包) 二.构建实体类,添加上对应Annotation注解 package com.djl.test; import javax.persistence.Entity; import javax.persistence.Id; @Entity public class Teacher { @Id private int id; private String name; private int age; public int getId() { retu

Hibernate学习笔记(一) — hibernate的配置文件简介与执行原理

一.初识Hibernate 1.JDBC的缺点: 1).编写代码的时候过于繁琐,try和catch比较多2).没有做数据缓存 3).不是面向对象编程 4).sql语句固定,可移植性差 JDBC的优点:效率比较高 2.Hibernate优点 1).完全面向对象编程 2).hibernate的缓存很牛的,一级缓存,二级缓存,查询缓存3).跨平台性强 4).使用场合多应用于企业内部的系统 Hibernate缺点 1).效率低 2).表中的数据如果在千万级别,则hibernate不适合 3).如果表与表

[原创]java WEB学习笔记93:Hibernate学习之路---Hibernate 缓存介绍,缓存级别,使用二级缓存的情况,二级缓存的架构集合缓存,二级缓存的并发策略,实现步骤,集合缓存,查询缓存,时间戳缓存

本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------

[原创]java WEB学习笔记77:Hibernate学习之路---Hibernate 版本 helloword,

本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------

[原创]java WEB学习笔记80:Hibernate学习之路--- hibernate配置文件:JDBC 连接属性,C3P0 数据库连接池属性等

本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------

Hibernate学习笔记(三) — Hibernate 的一级缓存意义

什么是缓存? 缓存说白了,就是应用程序向数据库要数据,然后把一些数据,临时的放在了内存的区域中,第二次再要数据的时候,直接从内存中拿即可. 缓存需要解决的事情: 1.能把数据放入缓存 2.能把数据从缓存中取出来 3.如果缓存中的数据发生变化,需要把数据同步到数据库中 4.把数据库中的数据同步到缓存中 5.hits命中率低的对象应该及时从缓存中移走 分布式缓存: 为什么会有分布式缓存? 应用程序运行在服务器上,并发访问时,服务器压力过大,分布式缓存就是来分担服务器压力的. 分布式缓存之间的数据是同