初学Hibernate,从建立项目,配置文件到实现对单表的增删改查

来源:互联网 发布:php oa 工作流引擎 编辑:程序博客网 时间:2024/06/06 12:30

Hibernate是一种开源的ORM框架技术,ORM(Object Relational Mapping)
Hibernate对JDBC进行轻量级的封装,使得java程序员可以随心所欲的使用面向对象的编程思想来操作数据库
hibernate所扮演的角色,如下图:
这里写图片描述
先大致了解一下hibernate的执行流程是什么样的:
这里写图片描述
下面我用IntelliJ IDEA 来演示建立一个Hibernate程序:
1.根据适当步骤,建立一个maven项目
2.我们要为这个项目添加Jar包,需要在pom.xml中的dependencies标签中加入:
这里写图片描述
这里我用的hibernate和mysql标准较低,一定要注意,如果你的jdk版本较低,引用高版本的配置会出现错误。
3.建立如下简单的目录结构
这里写图片描述
4.配置一下项目构造,并加入Hibernate功能
这里写图片描述
这里写图片描述
这里同样要注意version,设置java目录为Sources,resources为Resources
5.引入数据库
这里写图片描述
这里写图片描述
这里要注意Driver配置,还有要Test Connection一下。
6.使用hibernate的Persistence创建实体
这里写图片描述
这里写图片描述
注意package选到com.lyf.po下,这里用单表演示。勾选好一个表,OK完成
这里写图片描述
一个实体就被建立好了。
7.检查一下hibernate.cfg.xml文档.确保以设置好想要实现的属性。牢记一定要设置好链接到数据库的username和password,不然无法与数据库建立连接
这里写图片描述
下面演示对数据库中该表的增删改查:

package com.lyf.dao;import com.lyf.po.User;import org.hibernate.Query;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import org.hibernate.cfg.Configuration;import org.junit.Test;import java.util.List;/** * Created by fangjiejie on 2017/4/16. */public class UserDao implements IUserDao {    private Configuration cfg;    private SessionFactory sf;    public UserDao() {        cfg=new Configuration().configure("hibernate.cfg.xml");        sf=cfg.buildSessionFactory();    }    @Test    public void add() {        Session session=sf.openSession();        Transaction tran=session.getTransaction();        tran.begin();        User user=new User();        user.setUsername("芳芳");        user.setPassword("666666");        session.save(user);        tran.commit();        session.close();    }@Test    public void delete() {        Session session=sf.openSession();        Transaction tran=session.getTransaction();        tran.begin();        User user=session.load(User.class,8);        session.delete(user);        tran.commit();        session.close();    }@Test    public void update() {       Session session=sf.openSession();        Transaction ts=session.getTransaction();        ts.begin();        User user=session.load(User.class,12);        user.setUsername("lisa");        user.setPassword("hhhhhhh");        session.update(user);        ts.commit();        session.clear();    }@Test    public void query() {       Session session=sf.openSession();        Query query=session.createQuery("from User3");        List<User> list=query.list();        for(User u:list){            System.out.printf("%s---%s\n",u.getUsername(),u.getPassword());        }        session.close();    }}

小知识:
什么是POM?

POM是项目对象模型(Project Object Model)的简称,它是Maven项目中的文件,使用XML表示,名称叫做pom.xml。在Maven中,当谈到Project的时候,不仅仅是一堆包含代码的文件。一个Project往往包含一个配置文件,包括了与开发者有关的,缺陷跟踪系统,组织与许可,项目的URL,项目依赖,以及其他。它包含了所有与这个项目相关的东西。事实上,在Maven世界中,project可以什么都没有,甚至没有代码,但是必须包含pom.xml文件。

0 0
原创粉丝点击