Hibernate 基本增删改查操作

本文将要介绍Hibernate基本的增删改查的操作的实现,首先我们创建一个对象实例。一般情况下会创建User,本例也不例外需要创建这样的对象。

【转载使用,请注明出处:http://blog.csdn.net/mahoking

User对象

public class User {

	private Integer id;
	private String userName;
	private String password;

    /*以下省略getter与setter*/
}

配置User.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">
<!-- 该文件用于配置,domain跟表的映射关系 -->
<hibernate-mapping package="com.mahaochen.hibernate.domain">
	<class name="User" table="mhc_user">
	    <!-- id元素用于指定主键属性 -->
		<id name="id" column="id" type="integer">
			<!-- 用于指定主键生成策略 -->
			<generator class="increment"></generator>
		</id>

	    <!-- 对其他属性进行配置 -->
		<property name="userName" type="string">
			<column name="username" not-null="false" ></column>
		</property>
		<property name="password" type="string">
			<column name="password" not-null="false"></column>
		</property>
	</class>

</hibernate-mapping>

Hibernate映射文件配置完成,以下将具体实现增删改查的操作。

增加操作

/**
	 * insert 插入操作
	 */
	public static void insert() {
		Session session = Hibernate4Util.getCurrentSession();
		User user = new User();
		user.setUserName("Insert");
		user.setPassword(new Date().getTime() + "");
		Transaction transaction = session.beginTransaction();
		session.save(user);
		transaction.commit();
		Hibernate4Util.closeSession(session);
	}

删除操作

/**
	 * delete 删除操作
	 */
	public static void delete() {
		Session session = Hibernate4Util.getCurrentSession();
		User user = new User();
		user.setId(8); // ID值
		user.setUserName("Insert");
		user.setPassword(new Date().getTime() + "");
		Transaction transaction = session.beginTransaction();
		session.delete(user);
		transaction.commit();
		Hibernate4Util.closeSession(session);
	}

修改操作

/**
	 * update 更新操作
	 */
	public static void update() {
		Session session = Hibernate4Util.getCurrentSession();
		Transaction transaction = session.beginTransaction();
		User user = new User();
		user = (User) session.get(User.class, 8);
		if (null != user) {
			user.setUserName("Insert0000");
			user.setPassword(new Date().getTime() + "");
			session.update(user);
		}
		transaction.commit();
		Hibernate4Util.closeSession(session);
	}

查询操作

/**
	 * select 查询操作
	 */
	public static void select() {
		Session session = Hibernate4Util.getCurrentSession();
		User user = new User();
		Transaction transaction = session.beginTransaction();
		user = (User) session.get(User.class, 1);
		System.out.println(user.toString());
		transaction.commit();

		Hibernate4Util.closeSession(session);
	}

【转载使用,请注明出处:http://blog.csdn.net/mahoking

时间: 2024-10-12 19:58:50

Hibernate 基本增删改查操作的相关文章

Hibernate 批量增删改查操作

上文介绍Hibernate基本的增删改查,本例将介绍更实用的批量增删改查的操作的实现.本文中增删改查的操作,仅供参考.如果读者需要应用到实际的应用场景需要的话,需要在此基础上扩展与丰富. [转载使用,请注明出处:http://blog.csdn.net/mahoking] 在学习本例时,需要扩展一下Hibernate中Session的知识.Hibernate中的Session是一级缓存,可以理解为进程级的缓存.在进程运行期间一直存在.Session可以理解为一个可以操作数据库的对象 具体如何操作

(六)Hibernate的增删改查操作(2)

一.在Hibernate中使用原生SQL语句 sql语句面向的是数据库,所以sql语句中对应的不再是bean了,比如sql="select * from user"   在hql中*是无效的,但是在sql中可以使用,且user指的是数据库中的user表. 案例一: package action; import java.util.List; import org.hibernate.SQLQuery; import org.hibernate.Session; import org.h

(五)Hibernate的增删改查操作(2)

接上一章节 HQL的预编译语句 HIbernate中的预编译与Spring的预编译的处理差不多.    1:使用标准的?  2:使用命名参数   2.1:使用名称逐个设置.   2.2:使用Map(key的值等于参数的名称)    2.3:使用Bean(属性的名称等于参数的名称) 案例一:Query_HQL_Prepared.java package action; import java.util.HashMap; import java.util.List; import java.util

Java+MyEclipse+Tomcat (六)详解Servlet和DAO数据库增删改查操作

此篇文章主要讲述DAO.Java Bean和Servlet实现操作数据库,把链接数据库.数据库操作.前端界面显示分模块化实现.其中包括数据的CRUD增删改查操作,并通过一个常用的JSP网站前端模板界面进行描述.参考前文: Java+MyEclipse+Tomcat (一)配置过程及jsp网站开发入门 Java+MyEclipse+Tomcat (二)配置Servlet及简单实现表单提交 Java+MyEclipse+Tomcat (三)配置MySQL及查询数据显示在JSP网页中 Java+MyE

(转)SQLite数据库增删改查操作

原文:http://www.cnblogs.com/linjiqin/archive/2011/05/26/2059182.html SQLite数据库增删改查操作 一.使用嵌入式关系型SQLite数据库存储数据 在Android平台上,集成了一个嵌入式关系型数据库--SQLite,SQLite3支持NULL.INTEGER.REAL(浮点数字).TEXT(字符串文本)和BLOB(二进制对象)数据类型,虽然它支持的类型只有五种,但实际上sqlite3也接受varchar(n).char(n).d

Scala对MongoDB的增删改查操作

=========================================== 原文链接: Scala对MongoDB的增删改查操作 转载请注明出处! =========================================== 依赖环境:jdk1.8.Scala 2.12.idea mongodb Driver:3.1.1.注意,mongo for scala的驱动涉及多个jar(如下图),依赖于mongo-java-driver.jar 这里使用的sbt管理依赖,直接在bu

作业员工信息表实现增删改查操作

有以下员工信息表 当然此表你在文件存储时可以这样表示 1 1,Alex Li,22,13651054608,IT,2013-04-01 现需要对这个员工信息文件,实现增删改查操作 可进行模糊查询,语法至少支持下面3种: select name,age from staff_table where age > 22 select  * from staff_table where dept = "IT" select  * from staff_table where enroll

【greenDAO3】 项目搭建与增删改查操作

最近需要开始一个新的项目了,考虑到既然是新项目了,那么一些常用的框架肯定也要用当下最火的!这次的新项目中涉及到了本地数据存储,很早前有个项目的本地数据库框架用的是ActiveAndroid,github找了下这个框架,发现已经两年多已经没有更新了.然后就想到了一直没有时间去涉及到的greenDAO,github一搜索,哦呦?star有5000+,并且依然保持着很高的更新频率,并且性能远远的高于activeAndroid(见下图),果断选用. 刚开始想偷偷懒,大致浏览了下greenDAO官网后就开

基于Java的XML文件模拟数据库进行增删改查操作

我们知道XML文件既可以用来进行数据的传输,也可以配合DTD约束文件用来作为配置文件,当然其本质就是一个加了标签以及众多空格保持格式的字符串,那么就可以用Java进行操作. 本例是使用MyEclipse带入DOM4j解析时要用的jar包的基础上做的:当然DOM4j相对于DOM SAX 等解析方式的方便程度是不言而喻的. 下面是本次用例XML文件 <?xml version="1.0" encoding="UTF-8"?> <persons>