package com.exam.dao;
import java.util.ArrayList;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.criterion.Expression;
import com.exam.bean.Admin;
import com.exam.factory.SessionFactory;
public class AdminDAO {
/**
* 添加管理员信息
*/
public boolean addAdmin(Admin admin) {
// 标识新增是否成功
boolean bool = false;
// 创建session对象
Session session = SessionFactory.currentSession();
// 创建事务tr并打开事务
Transaction tr = session.beginTransaction();
try {
// 调用session的添加数据方法
session.save(admin);
// 提交事务
tr.commit();
bool = true;
} catch (Exception e) {
e.printStackTrace();
// 回滚事务
tr.rollback();
} finally {
// 关闭session对象
SessionFactory.closeSession();
}
return bool;
}
/**
* 修改管理员信息
*/
public boolean updateAdmin(Admin admin) {
// 标识修改是否成功
boolean bool = false;
// 创建session对象
Session session = SessionFactory.currentSession();
// 创建事务tr并打开事务
Transaction tr = session.beginTransaction();
try {
// 调用session的修改数据方法
session.saveOrUpdate(admin);
// 提交事务
tr.commit();
bool = true;
} catch (Exception e) {
// 回滚事务
tr.rollback();
} finally {
// 关闭session对象
SessionFactory.closeSession();
}
return bool;
}
/**
* 删除管理员信息
*/
public boolean deleteAdmin(Admin admin) {
// 标识删除是否成功
boolean bool = false;
// 创建session对象
Session session = SessionFactory.currentSession();
// 创建事务tr并打开事务
Transaction tr = session.beginTransaction();
try {
// 调用session的删除数据方法
session.delete(admin);
// 提交事务
tr.commit();
bool = true;
} catch (Exception e) {
// 回滚事务
tr.rollback();
} finally {
// 关闭session对象
SessionFactory.closeSession();
}
return bool;
}
/**
* 获得全部的管理员信息
*/
public List getAllAdmins() {
// 创建list对象
List list = new ArrayList();
// 创建session对象
Session session = SessionFactory.currentSession();
try {
// 调用session的获得数据列表方法,传递HQL查询语句
Query query = session.createQuery("select OBJECT(o) from Admin o order by o.adminid");
// 获得返回的值list
list = query.list();
} catch (Exception e) {
} finally {
// 关闭session对象
SessionFactory.closeSession();
}
return list;
}
}
Hibernate下的业务操作都是由session来完成的,SessionFactory为获得实体session的类,在eclipse下引入hibernate框架时会自动生成的工厂类SessionFactory,只需自己去定义一个名字,放在自定义的包下即可调用SessionFactory.currentSession()方法获得session对象!
分享到:
相关推荐
本实例旨在帮助初学者理解如何结合这三个框架实现基本的数据操作:增、删、改。 首先,`Struts2` 是一个基于MVC(Model-View-Controller)设计模式的Web应用框架,负责处理用户的请求,并将其转发到相应的控制器...
这个实例可能是为了展示如何将这三个框架整合在一起,实现数据的增删改功能。下面将详细讲解这三个框架的基本概念、整合方式以及如何进行CRUD(Create、Read、Update、Delete)操作。 **Struts** 是一个开源的MVC...
**HiBernate增删改项目** 是一个针对初学者的入门级教程,旨在教授如何使用Hibernate框架进行数据库的增删改操作。Hibernate是Java开发中的一款流行的对象关系映射(ORM)工具,它允许开发者通过面向对象的方式处理...
这个"jsf增删改实例"是关于如何使用JSF进行基本数据操作——添加(Add)、删除(Delete)和修改(Update)的实践示例。下面我们将深入探讨JSF的核心组件、数据绑定以及这些基本操作的实现方式。 首先,JSF基于组件...
在这个实例中,我们主要关注的是Hibernate部分,它是一个对象关系映射(ORM)框架,能将Java类与数据库中的表进行映射,简化数据库操作。 **1. Hibernate 概述** Hibernate 是一个轻量级的 ORM 框架,通过映射文件...
标题 "flex+java增删改查(spring+jpa)简单例子" 暗示了这是一个关于使用Adobe Flex作为前端UI框架,与Java后端结合,实现数据的CRUD(创建、读取、更新、删除)操作的教程。在这个场景中,Java后端使用Spring框架...
【标题】"自己整理的实例增删改"指的是个人整理的一系列关于数据库操作或编程实践中的增、删、改操作实例。在IT行业中,增、删、改是数据操作的基本要素,通常涉及到数据库管理和编程语言的数据处理部分。 【描述】...
在这个实例中,我们将重点讨论如何使用Spring MVC的注解进行数据的增删改操作,并结合Hibernate作为ORM(对象关系映射)工具。 首先,`@Controller`注解标记了一个类作为Spring MVC的控制器,负责处理HTTP请求。在...
在这个“用struts2+ spring+ hibernate编写的增删改程序”中,我们将探讨这三个框架如何协同工作,以及SQL Server 2005作为数据库的角色。 Struts2是一个基于MVC设计模式的Web应用框架,主要用于处理用户请求并控制...
本篇文章将深入探讨`Hibernate`与`Struts`整合实现增删改查功能的实例源代码,以及这两个框架的核心概念和工作原理。 首先,`Hibernate` 提供了一种在Java应用程序中管理和持久化数据的方式,通过将Java对象与...
**Hibernate基本增删改CRUD操作** 在Java开发中,Hibernate是一个非常流行的持久化框架,它简化了数据库操作,使得开发者无需直接编写SQL语句,就能实现对象与关系数据库之间的映射。本教程将深入讲解如何使用...
标题 "springmvc+spring+hibernate4+easyui实现的增删改查" 描述了一个基于Java技术栈的Web应用程序开发案例。这个项目利用了Spring MVC作为MVC框架,Spring作为服务层管理,Hibernate 4作为持久层框架,以及EasyUI...
总结,Hibernate的增删改操作是通过Session对象进行的,结合事务管理,可以方便地实现数据库的数据操作。同时,Hibernate还提供了丰富的特性,如查询语言HQL、Criteria API、缓存机制等,使得数据库操作更加高效、...
现在我们来深入探讨SSH框架在"增查删改"(CRUD操作)实例中的应用。 首先,让我们从Spring框架开始。Spring是整个SSH架构的核心,它通过依赖注入(DI)和面向切面编程(AOP)提供了松散耦合和模块化的设计。在增查...
在本示例中,我们探讨的是如何利用SpringMVC和Hibernate这两个流行的Java Web开发框架来实现学生表数据的增、删、改(CRUD)操作。SpringMVC是Spring框架的一部分,专门处理Web应用程序的请求-响应流程,而Hibernate...
"Hibernate曾删改查接口实现"这个主题,主要涉及的是如何利用Hibernate的核心接口进行数据的增、删、改、查操作。下面将详细讲解这些知识点。 **1. Hibernate基本概念** Hibernate是一个开源的ORM框架,它的核心是...
综上所述,"struts2+hibernate实现登录及增删改操作"涉及到的是如何利用这两个框架构建一个完整的Java Web应用,包括用户身份验证、数据库操作以及对数据的增删改等核心功能。这个小案例可以帮助开发者理解并熟练...
### Hibernate4 在 J2EE 环境下的增删查改及配置详解 #### 一、Hibernate 概述与配置 Hibernate 是一个全功能的 ORM(对象关系映射)框架,用于 Java 应用程序与数据库进行交互。它提供了一个高度抽象的层,将面向...
【标题】:“Hibernate+Struts2增删改+登录”示例 【正文】: 本文将详细介绍一个基于Hibernate和Struts2框架实现的简单增删改查(CRUD)及登录功能的应用实例。这个示例涵盖了Java Web开发中的关键部分,包括持久...
在这个实例中,Hibernate可能用于处理用户数据的存储和检索,如创建新用户、查询用户信息以及更新用户资料。 在SSH架构中,Struts负责表现层,处理用户的交互和视图展示;Spring作为业务逻辑层,管理对象和事务;...