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

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
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值