一、数据库

1.创建数据库hibernate01-1514010311

   2.创建表 customer

CREATE TABLE customer(
	id int(11) not null auto_increment  PRIMARY KEY,
  name VARCHAR(20) DEFAULT NULL COMMENT '姓名',
	age int(11)  DEFAULT NULL COMMENT '年龄',
	sex VARCHAR(2)  DEFAULT null COMMENT '性别',
	city VARCHAR(20) DEFAULT NULL COMMENT '城市'
);

二、创建项目并导入jar包

  1.使用eclipse创建web项目,并导入hibernate所需的jar包

       

   2.创建实体类

package domain;

public class Customer {
	private Integer id;
	private String name;
	private Integer age;
	private String sex;
	private String city;
	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 Integer getAge() {
		return age;
	}
	public void setAge(Integer age) {
		this.age = age;
	}
	public String getSex() {
		return sex;
	}
	public void setSex(String sex) {
		this.sex = sex;
	}
	public String getCity() {
		return city;
	}
	public void setCity(String city) {
		this.city = city;
	}
	@Override
	public String toString() {
		return "Customer [id=" + id + ", name=" + name + ", age=" + age + ", sex=" + sex + ", city=" + city + "]";
	}

}

  3.编写映射文件

  在domain包下创建Customer.hbm.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="domain.Customer" table="customer">
		<id name="id" column="id">
			<generator class="native"></generator>
		</id>
		<property name="name" column="name" type="string"></property>
		<property name="age" column="age" type="integer"></property>
		<property name="sex" column="sex" type="string"></property>
		<property name="city" column="city" type="string"></property>
	</class>
</hibernate-mapping>

  4.编写核心配置文件hibernate.cfg.xml

   在src目录下创建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.dialect">org.hibernate.dialect.MySQLDialect</property>
			 <!-- 数据库驱动 -->
			<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
		 	<!-- 数据库url -->
			<property name="hibernate.connection.url">jdbc:mysql:///hibernate01-1514010311</property>
			 <!-- 数据库连接用户名 -->
			<property name="hibernate.connection.username">root</property>
			 <!-- 数据库连接密码 -->
			<property name="hibernate.connection.password">0x3137</property>
			<!-- 将hibernate生成的sql语句打印到控制台 -->
			<property name="hibernate.show_sql">true</property>
			<!-- 将hibernate生成的sql语句格式化(语法缩进) -->
			<property name="hibernate.format_sql">true</property>
			<mapping resource="domain/Customer.hbm.xml" />
		</session-factory>

	</hibernate-configuration>

  5.编写测试类

  导入JUnit4运行环境(详情百度JUnit单元测试,小生不才)

   选中项目点击鼠标右键->选中Build Path->选中Configure Build Path->选中如图,选择Add Library->选择JUnit->next->finish->apply

  在test包下创建CustomerTest类

package test;

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

import domain.Customer;

public class CustomerTest {
	@Test
	public void insertTest() {
		//1.加载核心配置文件
		Configuration config = new Configuration().configure();
		//2.获取SessionFactory
		SessionFactory sessionFactory = config.buildSessionFactory();
		//3.得到一个session
		Session session = sessionFactory.openSession();
		//4.开启事务
		Transaction transaction = session.beginTransaction();
		//5.操作
		Customer customer = new Customer();
		customer.setName("三哥无邪");
		customer.setAge(21);
		customer.setSex("男");
		customer.setCity("哈尔滨");
		//5.2将数据存储在表中
		session.save(customer);
		//6.提交事务
		transaction.commit();
		//7.关闭资源
		session.close();
		sessionFactory.close();
	}
}

  选中@Test下方法名->右键->Run As->JUnit Test

  测试添加方法insertTest()

就此一个简单的hibernate demo编写完成。

第一次作业 orm环境构建(hibernate)及基本的demo的更多相关文章

  1. 构建之法助教园地第一次作业--点评<西北师范大学|李晓婷>

    一 博客点评 第一次作业--准备篇:https://www.cnblogs.com/Mookiepiece/p/10464606.html#4192515 点评内容: 首先,你对电脑很感兴趣,兴趣就是 ...

  2. c语言第一次作业1

    第一次作业 一 你对软件工程或者计算机科学与技术专业的了解是什么? 软件工程是一门研究用工程化方法构建和维护有效的,实用的和高质量的软件的学科,涉及程序语言设计,数据库,软件开发工具,系统平台,设计模 ...

  3. 12 Spring Data JPA:orm思想和hibernate以及jpa的概述和jpa的基本操作

    spring data jpa day1:orm思想和hibernate以及jpa的概述和jpa的基本操作 day2:springdatajpa的运行原理以及基本操作 day3:多表操作,复杂查询 d ...

  4. java第一次作业0

    lsl321 java第一次作业 #1. 本章学习总结 你对于本章知识的学习总结 本章我们学习了各种java相关文件的使用,以及码云,博客,pat等程序辅助软件,这些对于我们专业的学习有非常大的帮助, ...

  5. OO第一次作业总结

    OO第一次学习总结 1.第一次作业:多项式加法 从未接触过java的我,在从输入输出开始学了几天后,按照C语言的思路,写出了一个与面向过程极其接近的程序. 在这个程序中,存在两个类:一个是Comput ...

  6. ESP8266 RTOS SDK烧写环境构建

    简介 esptool是一个Python软件程序,适用于ESP8266等一系列芯片的烧写,灵活高效. 环境构建 在官网下载安装最新2.7版python (linux和os x一般会自带python2.7 ...

  7. 从入门到不放弃——OO第一次作业总结

    写在最前面: 我是一个这学期之前从未接触过java的小白,对面向对象的理解可能也只是停留在大一python讲过几节课的面向对象.幸运的是,可能由于前三次作业难度还是较低,并未给我造成太大的困难,接下来 ...

  8. 1【西北师大-2108Java】第一次作业成绩汇总

    [西北师大-2108Java]第一次作业成绩汇总 经过本次作业的练习,了解了Java最基本的知识和Java的发展:了解了Java到底是一门怎样的语言,也知道了学习Java的乐趣,懂得了去选择Java开 ...

  9. BUAA-软件工程第一次作业

    软件工程第一次作业 项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 第1次个人作业 我在这个课程的目标 团队完成好的软件,并对自己作出规划 这个作 ...

随机推荐

  1. Java函数2:计算两个日期相差的天数

    import java.util.Scanner; public class HelloWorld { public static void main(String[] args){ // Scann ...

  2. JAVA之旅(二十二)——Map概述,子类对象特点,共性方法,keySet,entrySet,Map小练习

    JAVA之旅(二十二)--Map概述,子类对象特点,共性方法,keySet,entrySet,Map小练习 继续坚持下去吧,各位骚年们! 事实上,我们的数据结构,只剩下这个Map的知识点了,平时开发中 ...

  3. 《java入门第一季》之Character类小案例

    /*  * Character 类在对象中包装一个基本类型 char 的值  * 此外,该类提供了几种方法,以确定字符的类别小写字母,数字,等等,并将字符从大写转换成小写,反之亦然  * */ 下面通 ...

  4. Python学习笔记 - 切片

    #!/usr/bin/env python3 # -*- coding: utf-8 -*- def fact(n): if n == 1: return 1 return n * fact(n - ...

  5. shell,python获取当前路径(脚本的当前路径) (aso项目记录)

    一.shell获取脚本当前路径 cur_dir=$(cd "$(dirname "$0")"; pwd)  #获取当前脚本的绝对路径,参数$0是当前脚本对象 等 ...

  6. 【Linux 操作系统】Ubuntu 基础操作 基础命令 热键 man手册使用 关机 重启等命令使用

    . : 关机, 如果将Linux默认运行等级设置为0, 系统将无法启动; -- : 多用户模式, 允许使用网络文件系统, 一般不使用图形界面登陆就是这种模式; -- : 多用户图形界面模式, 该模式下 ...

  7. Xcode中的全局异常断点

    一旦异常断点被添加,你可以鼠标右键选择 Edit Breakpoint 打开弹出菜单. 改变异常类型为Objective-C,这可以防止C++异常被捕获,你可能不想捕获这些. 因为通常情况下你的App ...

  8. dos2unix(windows脚本文件放到unix下运行要注意)

    在windows下编写的shell脚本文件,直接放到linux下运行,是不行的. infiniDB的倒库脚本文件load.sh,将tbl文件导入infiniDB,怎么运行不成功,不建job.运来,是w ...

  9. Android NFC开发(一)——初探NFC,了解当前前沿技术

    Android NFC开发(一)--初探NFC,了解当前前沿技术 官方文档:http://developer.android.com/guide/topics/connectivity/nfc/ind ...

  10. Erlang cowboy 处理简单的HTTP请求

    Erlang cowboy 处理简单的HTTP请求 原文出自: Handling plain HTTP requests 处理请求的最简单的方式是写一个简单的HTTP处理器.它的模型参照Erlang/ ...