关于hibernate的一个简单小程序(代码片段)

★若风 ★若风     2022-11-22     483

关键词:

本人根据视频学习了一下三大框架中比较简单的一个Hibernate,并简单完成了一个运用Hibernate的小程序

Hibernate是一个简化web程序Dao层的一个框架,应用他,可以完全脱离sql语句

 

第一步:创建一个java项目,没有必要创建一个web项目,因为Hibernate本身是针对后台对数据库的操作的

第二步:导入jar包:可以在根目录下创建一个lib文件夹用来存放导入的jar包,当然要先下载Hibernate的资源包并解压,打开之后首先将根目录的两个jar包导入,截图如下

 然后打开lib文件夹将required文件夹里的jar包全部导入,再将jpa文件夹的jar包导入,最后导入mysql的连接的jar包,至此,需要的jar包全部导入完毕,最后右击创建的lib文件夹,进行一下build path

第三步:

创建一个实体类,为了简单,只创建一个user类,包含三个属性,id,username,pasword,并分别写出get和set函数,并在后台数据库中创建出相应的表

第四部:配置链接数据库的xml文件,该xml的全称是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 >
        <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="hibernate.connection.username">root</property>
        <property name="hibernate.connection.password">root</property>
        <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/EE19Day01</property>
        
        <!-- 操作数据库时,会向控制台打印sql语句 -->
        <property name="show_sql">true</property>
        <!-- 在打印sql语句之前,首先对其进行转化,转化成程序员可以看懂的sql语句 -->
        <property name="format_sql">true</property>
        <!--是否自动生成表结构 -->
        <property name="hbm2ddl.auto">update</property>
        <!-- 事务自动提交 -->
        <property name="hibernate.connection.autocommit">true</property>
        <mapping resource="User.hbm.xml"/>
    </session-factory>
</hibernate-configuration>

第五步:配置Hibernate的orm映射关系,代码如下:全称是User.hbm.xml(最好xml的名称与类的名称保持一致,以便后边的简单操作)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC 
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
    <hibernate-mapping>
    <class name="cn.heima_hello.User"  table="t_user">
    <id name="id" column="id">
     <generator class="native"> </generator>
    </id>
   
    <property name="username" column="username"></property>
    
    <property name="password" column="password"></property>
    </class>
    </hibernate-mapping>

第六步:创建一个测试类,对数据库进行操作

package cn.heima_hello;

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


public class test01 

    
    public void fun1() 
    //1.读取配置文件
        Configuration conf = new Configuration().configure();
    //2.根据数据创建factory对象
        SessionFactory sessionFactory = conf.buildSessionFactory();
    //3.获取操作数据库的session对象
        Session session = sessionFactory.openSession();
    //4.操作数据库
        User user = new User();
        user.setUsername("Tom");
        user.setPassword("1234");
        session.save(user);
    //5.关闭资源
        session.close();
        sessionFactory.close();
    
    public static void main(String[] args) 
        // TODO Auto-generated method stub
        test01 test01 = new test01();
         test01.fun1();
    

至此,一个简单的Hibernate程序已经搭建好,如果有什么问题,给以评论私聊

 

关于使用hibernate注解总结(代码片段)

首先,我们先了解一下什么是hibernate注解:  Hibernate提供了Hibernate Annotations扩展包,它可以替代复杂的*hbm.xml,从而使得hibernate程序的开发大大简化。  带注解的持久类也是普通POJO,它们只是具备了持久性注解的普通POJO ... 查看详情

关于hibernate注解的简单应用

@Override用途:重写父类的同名方法单元测试注解@Test  用途:用于测试@Before   用途:单测方法走之前执行 @After   用途:单测方法走之后执行 注解的目标:替换小配置。替换hbm文件 @Entity&n... 查看详情

hibernate连接到db的方式和简单的java程序的方式有区别吗?(代码片段)

我使用完全相同的驱动程序名称,连接URL,用户名和密码连接到我的本地(同一台)机器上运行的2个代码的Oracle11gExpress版数据库。简单的Java代码,用于连接到DB并从表中读取值。Class.forName("oracle.jdbc.driver.OracleDriver");Connectioncon=D... 查看详情

反射简单入门(代码片段)

...的所有信息。底层的工作就交给JVM完成。下面是自己今天关于反射做的一个小练习入门案例,仅供小白学习详细可参考JDK_API,如果有需要的同学可以留下邮箱哟1packageagree.reflect;23importja 查看详情

01.小程序简要介绍(代码片段)

文章目录微信小程序的基本结构01.小程序简介02.项目基本结构03.关于`app.json`04.关于`app.js`05.关于`app.wxss`06.关于`page.json`07.关于`page.wxml`08.关于`page.wxss`09.关于`page.js`10.关于开发工 查看详情

利用java的socket实现一个简单hello/hi聊天程序(代码片段)

...到了怎么用socket套接套接字来进行编程。简单理解了一些关于socket套接字和底层调用的关系。关于java的封装思想,我学会了一些东西,java里真的是万物皆对象。还学到了一点多线程的知识。 TCP 在这里, 查看详情

python入门——用pycharm写一个简单的小程序3(代码片段)

环境:Win10操作系统;Python3.7;Pycharm 题目来源:PTA编程实例1:日期格式化世界上不同国家有不同的写日期的习惯。比如美国人习惯写成“月-日-年”,而中国人习惯写成“年-月-日”。下面请你写个程序,自动把... 查看详情

微信小程序创建自己的小程序(代码片段)

文章目录1.关于小程序2.环境的搭建2.1Python环境2.2小程序环境2.2.1申请一个微信公众平台2.2.2保存自己的appid2.2.3下载开发者工具2.2.4创建项目3.开发小程序3.1全局配置3.2组件3.2.1text3.2.2view3.2.3image3.3样式3.3.1像素4.flex布局5.实战展示1.... 查看详情

关于今日头条小程序(字节跳动小程序)相关问题(代码片段)

上周突然遇到让开发今日头条小程序(字节跳动小程序)的需求,然后看了下文档发现真的简陋。而且文档有错别字。槽点有点多。但是和老版本的小程序相差不多,然后我就抱着试一试的心态,真的是试一试把微信小程序换了... 查看详情

关于微信小程序上线流程的简单总结

最近负责公司里边小程序的一个埋点功能,修改完之后体验了一次小程序上线的一个流程。前提条件首先小程序在微信公众平台后台一定是已经申请开发了,自己也一定要有开发者权限,同时我们也需要有微信开发者... 查看详情

520了,用32做个简单的小程序(代码片段)

...于是!突发奇想,突然就来了更新的想法,今天用32来做一个非常简单的小程序:简单放个歌,再放个图stm32f103c8t6无源蜂鸣器库函数voidBee_Init(void)voidBee_test(void 查看详情

入门系列微信小程序简介(代码片段)

...构首先,我们使用微信公众平台提供的开发者工具,创建一个简单的小程序项目,观察项目的目录结构不难看出,一个典型的微信小程序,通常包含一个描述整体的主体部分,以及一个描述页面的pages文件夹主体:用于描述整体... 查看详情

两周撸一个微信小程序(代码片段)

...先扫描下方的小程序码直接体验。写在前面前段时间写了一个简单的小程序QuietWeather,源码在这里,具体实现相关可查看这篇文章:两天撸一个天气应用微信小程序。但是这个小程序和QuietWeather完全不是一个数量级的。so,该文... 查看详情

关于git上传文件的一个小问题(代码片段)

***Pleasetellmewhoyouare.Rungitconfig--globaluser.email"[email protected]"gitconfig--globaluser.name"YourName"tosetyouraccount‘sdefaultidentity.Omit--globaltosettheidentityonlyinthisrepository.&n 查看详情

hibernate入门简介(代码片段)

...存取Java对象!为什么要使用Hibernate? 既然Hibernate是关于Java对象和关系数据库之间的联系的话,也就是我们MVC中的数据持久层->在编写程序中的DAO层...首先,我们来 查看详情

java生成微信小程序二维码,5种实现方式,一个比一个简单(代码片段)

文章目录前言先看官网一、JDK自带的URLConnection方式二、Apache的HttpClient方式三、okhttp3方式四、Unirest方式五、RestTemplate方式其它细节getAccessToken构建参数mapbyte[]数组源码下载前言先介绍一下项目场景,主要是通过微信小程序二... 查看详情

微信小程序(代码片段)

开发小程序所需的基本技能 关于小程序的介绍和使用场景这里不作介绍,这个系列的文章会一步一步地带领大家快速地学习和掌握小程序的开发。关于还没有接触过小程序的开发者来说,最关心的问题无非就是,开发小程序... 查看详情

python+redis简单实现发红包程序(代码片段)

redis是什么?  Redis是一个高性能的key-value数据库!  想进一步了解请移步搜索引擎自行查找。编写这个小程序的目的就是对redis进行一个简单的小操作,对redis有一个初步的了解,并未有什么高大尚的骚操作,适合小白阅读... 查看详情