hibernate开发流程
开发流程,注意:每个hibernate版本在集成的时候是不太一样的。本次使用的是hibernate-distribution-3.6.10.Final-dist
一、开发流程
1)在数据库中创建表,代码如下:
CREATE TABLE USER(
id INT PRIMARY KEY AUTO_INCREMENT,
uName VARCHAR() NOT NULL,
uGender CHAR(),
uBirthday DATE);
2)在工程中创建实体类
public class User {
private int id;
private String uName;
private String uGender;
private Date uBirthday; public User() {
// TODO Auto-generated constructor stub
} public int getId() {
return id;
} public void setId(int id) {
this.id = id;
} public String getuName() {
return uName;
} public void setuName(String uName) {
this.uName = uName;
} public String getuGender() {
return uGender;
} public void setuGender(String uGender) {
this.uGender = uGender;
} public Date getuBirthday() {
return uBirthday;
} public void setuBirthday(Date uBirthday) {
this.uBirthday = uBirthday;
}
3)创建对象和表的映射文件,*.hbm.xml。User.hbm.xml
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> <hibernate-mapping
package="com.huitong.entity"> <class name="User" table="user"> <id name="id" column="id">
<generator class="native"/>
</id> <property name="uName" column="uName"></property>
<property name="uGender" column="uGender"></property>
<property name="uBirthday" column="uBirthday"></property> </class>
</hibernate-mapping>
4)hibernate的配置文件,放在src/目录下。hibernate.cfg.xml.
包含两部分
- 数据库连接配置
- 加载映射文件
<!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.url">jdbc:mysql:///day17?useSSL=true</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">root</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property> <property name="hibernate.show_sql">true</property> <!-- 加载映射文件 -->
<mapping resource="com/huitong/entity/User.hbm.xml"/>
</session-factory>
</hibernate-configuration>
小技巧:在myeclipse中要将多个jar文件配置到classpath中:
<1>首先点中第一个jar包
<2>shift+点击最后一个jar文件,选中所有jar文件
5)简单测试
public void fun1(){
User user = new User();
user.setuName("good");
user.setuBirthday(new Date()); Configuration configuration = new Configuration();
configuration.configure(); SessionFactory sf = configuration.buildSessionFactory();
Session session = sf.openSession(); Transaction bt = session.beginTransaction();
session.save(user);
bt.commit(); session.close();
sf.close(); }
5)当有多个配置文件时,使用include进行包含
<include file="com/baidu/action/AdminConfig.xml"></include>
hibernate开发流程的更多相关文章
- 一。Hibernate 开发流程
一.hibernate和mybatis都是orm产品1.orm:object-realation-mapping对象关系映射 二.开发步骤1.导入相关jar 包括hibernate和oracle的驱动 ...
- Hibernate 开发流程
Hibernate内部分装的技术:JDBC(Java Data Base Connectivity), JTA(Java Transaction API) , JNDI(Java Naming and ...
- Hibernate的基本开发流程
一.Hibernate开发的基本流程 二.Hibernate开发的环境搭建 1.引入Hibernate核心包以及Hibernate依赖包即可.可以在Hibernate目录下的\lib\required ...
- Hibernate工作流程
Hibernate创建步骤 (五大核心接口:Configuration/SessionFactory/Session/Transaction/Query) 1.新建工程,导入需要的jar包. 2.利用 ...
- 一 Struts2 开发流程
SSH与SSM简介SSM:Spring+SpringMVC+MybatisSSH:Struts2+Hibernate+SpringStruts2:是侧重于控制层的框架Hibernate:是一个ORM( ...
- mybatis与hibernate运行流程比较
hibernate长时间没用,感觉生疏了,正好借这篇文章整合下知识,顺便复习比较下两种框架. 概述: Mybatis和hibernate不同,它不完全是一个ORM框架,因为MyBatis需要程序员自己 ...
- Spring详细基本开发流程
LOGO 文章已托管到GitHub,大家可以去GitHub查看阅读,欢迎老板们前来Star! 搜索关注微信公众号 码出Offer 领取各种学习资料! 一.Spring概述 1.1 Web开发中的一些问 ...
- Linux下服务器端开发流程及相关工具介绍(C++)
去年刚毕业来公司后,做为新人,发现很多东西都没有文档,各种工具和地址都是口口相传的,而且很多时候都是不知道有哪些工具可以使用,所以当时就想把自己接触到的这些东西记录下来,为后来者提供参考,相当于一个路 ...
- 小谈Scrum敏捷开发流程
一晃眼,有两年没有写博客了,回顾前两年,各种奔波,各种忙碌,也有不少的收获.从今天开始,我要把这些收获都分享在这里. 其实这两年,对我影响最大的是开发流程.总所周知,一个好的开发流程,对于项目的进行, ...
随机推荐
- FAQ:Domain Event 和 C# 中的 Event 有啥区别?
问: Domain Event 和 C# 中的 Event 有啥区别? 答: C# 中的 Event,事件.监听者列表和事件发布器是由一个类型承担,事件源和监听者之间的生命周期耦合在一起,C# 帮你提 ...
- JVM内存参数详解以及配置调优
基本概念:PermGen space:全称是Permanent Generation space.就是说是永久保存的区域,用于存放Class和Meta信息,Class在被Load的时候被放入该区域He ...
- iOS:带主标题、副标题、图像类型的表格视图UITableView
制作一个通讯录,包括姓名.电话.头像,将表格视图类型设置为UITableViewCellStyleSubtitle 效果图: //创建一个联系人的类,初始化数据 在视图控制器中实现表格内容的显示 #i ...
- [Todo] Java及C++ Exception整理
今天接触到一些Java Exception方面的内容,整理如下: http://developer.51cto.com/art/201111/304649.htm C++中Exception等的整理
- 切线空间(Tangent Space)法线映射(Normal Mapping)【转】
// 请注明出处:http://blog.csdn.net/BonChoix,谢谢~) 切线空间(Tangent Space) 切换空间,同局部空间.世界空间等一样,是3D图形学中众多的坐标系之一.切 ...
- c# 滚动字幕的实现
在c#中其实滚动屏幕的实现很简单,只需要用到Graphics.DrawString方法. Graphics.DrawString (String s, Font font, Brush brush, ...
- Android -- 再来一发Intent
之前写过一篇Intent的博客,主要说了一下隐式意图. 传送门:<Android -- Intent> Intent对象构成 Component name.Action.Data.Cate ...
- java中循环控制结构
1. break结束break所在循环 for(i……) { for(j……) { break; //结束循环j } } 2.带标签的break. java中的标签只用在循环语句前面. outer: ...
- 第一章:走近java-深入理解java虚拟机-读书总结
java技术体系: 1.java程序设计语言 2.硬件平台上的java虚拟机 3.class文件格式 4.java的API类库 5.第三方的类库 JDK: java语言,虚拟机,java API类库 ...
- poj 3237(树链剖分+线段树)
题意:给一棵树,三种操作.将第i条边的权值改为v,将a到b的路径上的边的权值全部取反,求a到b路径上边的权值的最大值. 思路:明显的树链剖分,加上线段树的操作.因为有取反的操作所以每个区间要记录最大值 ...