hibernate的创建

1、hibernate.cfg.xml文件的配置
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <!-- Database connection settings -->
        <!-- 配置驱动 -->
        <property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
        <property name="connection.url">jdbc:oracle:thin:@127.0.0.1:1521:orcl</property>
        <property name="connection.username">scott</property>
        <property name="connection.password">tiger</property>

        <!-- SQL dialect -->
        <!-- 配置方言. -->
        <property name="dialect">org.hibernate.dialect.OracleDialect</property>
		<!-- 指定对象关系映射文件 -->
        <mapping resource="com/lmy/domain/Employee.hbm.xml"/>
    </session-factory>
</hibernate-configuration>
2、Employee.hbm.xml的配置
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-mapping PUBLIC
        '-//Hibernate/Hibernate Mapping DTD 3.0//EN'
        'http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd'>
<!-- 这是一个对象关系映射文件User和users关联 -->
<hibernate-mapping package="com.lmy.domain">

	<!-- 类和表建立联系 -->
    <class name="Employee" table="employee">
	<!-- 配置主键属性 -->
        <id name="id" type="java.lang.Integer" column="id">
            <generator class="sequence" >
            <param name="sequence">emp_seq</param>
            </generator>
        </id>
<!-- 配置其他属性 -->
        <property name="name" type="java.lang.String" >
            <column name="name"   not-null="false"/>
        </property>

   
        <property name="email" type="java.lang.String">
            <column name="email" not-null="false"/>
        </property>

        <property name="hiredate" type="java.util.Date">
            <column name="hiredate" not-null="false" />
        </property>

    </class>

</hibernate-mapping>
3、TestMain.java 文件
package com.lmy.view;


import com.lmy.util.*; 

import java.util.Date;

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

import com.lmy.domain.Employee;
import com.lmy.util.MySessionFctory;



@SuppressWarnings("unused")
public class TestMain {

	public static void main(String[] args) {

		addEmployee();

		//modify();
	}

	public static void modify() {
		Session session = MySessionFctory.getSessionFactory().openSession();
		//做成事务
		Transaction ts = session.beginTransaction();
		//修改用户
		Employee emp = (Employee) session.load(Employee.class, 4);
		emp.setName("huhu");//导致update的产生
		emp.setEmail("894109319@qq.com");
		
		ts.commit();
		session.close();
	}

	public static void addEmployee() {
		// TODO Auto-generated method stub
		//用hibernate完成crud操作
		//读取hibernate.cfg.xml文件
		Configuration configuration = new Configuration().configure();
		//创建SessionFactory会话工厂
		SessionFactory sessionFactory =configuration.buildSessionFactory();
		//创建Session
		Session session = sessionFactory.openSession();
		Transaction transtion = session.beginTransaction();
		//添加一个雇员
		Employee employee = new Employee();
		employee.setEmail("lmy@126.com");
		employee.setName("meng");
		employee.setHiredate(new Date());
		//保存
		session.save(employee);
		//提交
		transtion.commit();
		session.close();
	}

}

4、Employee.java文件
package com.lmy.domain;

public class Employee implements java.io.Serializable {
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	//pojo也叫javabean,按照国定应该被序列话,目的是唯一标识的对象
	
	
	private Integer id;
	private String name;
	private String email;
	private java.util.Date hiredate;
	
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
	public java.util.Date getHiredate() {
		return hiredate;
	}
	public void setHiredate(java.util.Date hiredate) {
		this.hiredate = hiredate;
	}


}
5、需要的jar包




电动汽车数据集:2025年3K+记录 真实电动汽车数据:特斯拉、宝马、日产车型,含2025年电池规格和销售数据 关于数据集 电动汽车数据集 这个合成数据集包含许多品牌和年份的电动汽车和插电式车型的记录,捕捉技术规格、性能、定价、制造来源、销售和安全相关属性。每一行代表由vehicle_ID标识的唯一车辆列表。 关键特性 覆盖范围:全球制造商和车型组合,包括纯电动汽车和插电式混合动力汽车。 范围:电池化学成分、容量、续航里程、充电标准和速度、价格、产地、自主水平、排放、安全等级、销售和保修。 时间跨度:模型跨度多年(包括传统和即将推出的)。 数据质量说明: 某些行可能缺少某些字段(空白)。 几个分类字段包含不同的、特定于供应商的值(例如,Charging_Type、Battery_Type)。 各列中的单位混合在一起;注意kWh、km、hr、USD、g/km和额定值。 列 列类型描述示例 Vehicle_ID整数每个车辆记录的唯一标识符。1 制造商分类汽车品牌或OEM。特斯拉 型号类别特定型号名称/变体。型号Y 与记录关联的年份整数模型。2024 电池_类型分类使用的电池化学/技术。磷酸铁锂 Battery_Capacity_kWh浮充电池标称容量,单位为千瓦时。75.0 Range_km整数表示充满电后的行驶里程(公里)。505 充电类型主要充电接口或功能。CCS、NACS、CHAdeMO、DCFC、V2G、V2H、V2L Charge_Time_hr浮动充电的大致时间(小时),上下文因充电方法而异。7.5 价格_USD浮动参考车辆价格(美元).85000.00 颜色类别主要外观颜色或饰面。午夜黑 制造国_制造类别车辆制造/组装的国家。美国 Autonomous_Level浮点自动化能力级别(例如0-5),可能包括子级别的小
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lm_y

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值