public class Department implements java.io.Serializable {
private Integer deptno;//部门号
private String dname;//部门名字
private Set employees = new HashSet(0);
//省略get,set方法
}
public class Employee implements java.io.Serializable {
private Integer empno;//雇员ID
private Department department;//部门
private String ename;//名字
private String job;//职位
private Date hiredate;//职日期
private Double sal;//薪水
private String pictureuri;//照片
}
//查询所有员工
Session se=HibernateSessionFactory.getSession();
String sql="from Employee";
List<Employee> empList=se.createQuery(sql).list();
for (Employee emp : empList) {
System.out.print(emp.getEname());
System.out.println(emp.getDepartment().getDname());
}
//或者以下
List<Employee> empList= se.createCriteria(Employee.class).createCriteria("department").list();
for (Employee emp : empList) {
System.out.print(emp.getEname());
System.out.println(emp.getDepartment().getDname());
}
//根据一个ID删除一名员工
Employee emp=(Employee) se.get(Employee.class, 202);
se.delete(emp);
se.beginTransaction().commit();
//新增一名员工
//要记得在映射文件里写上自己建数据库时的自增序列(ORACLE数据库)
<id name="empno" type="java.lang.Integer">
<column name="EMPNO" precision="8" scale="0" />
<generator class="sequence">
<param name="sequence">seq_emp</param>
</generator>
</id>
Employee emp=new Employee();
emp.setEname("abcde");
se.save(emp);
se.beginTransaction().commit();
//根据用户所选条件动态组合查询
public List<Employee> findEmployee(Employee emp){
List<Employee> empList =null;
Criteria criteria=getSession().createCriteria(Employee.class);
if(emp!=null){
if(!emp.getEname().trim().equals("")){
criteria.add(Restrictions.like("ename", "%"+emp.getEname().trim()+"%"));
}
if(emp.getDepartment().getDeptno()>0){
criteria.add(Restrictions.eq("department.deptno", emp.getDepartment().getDeptno()));
}
if(emp.getHiredate()!=null){
criteria.add(Restrictions.like("hiredate", emp.getHiredate()));
}
if(emp.getMaxsal()>0&&emp.getMinsal()>0){
criteria.add(Restrictions.between("sal", emp.getMinsal(), emp.getMaxsal()));
}
criteria=criteria.createCriteria("department");
empList=criteria.list();
}
return empList;
}
分享到:
相关推荐
本文将详细介绍如何使用Hibernate 3.3和Struts2来实现人员信息的增删改查功能。 首先,Hibernate 3.3是Hibernate的一个稳定版本,它提供了强大的ORM能力,能够将Java对象与数据库表进行映射,使得开发者无需编写...
基于Struts 2+Hibernate实现员工管理系统。一个单位有多个部门,每个部门有多名员工,每个员工只属于一个部门。基于该要求,实现员工和部门的管理(包括添加、查询、删除和修改等操作),并且要实现部门与员工之间的...
ssh部门员工管理系统,实现部门和员工的增删改查和分页等 Employee jsp+servlet+javaBean构成的MVC 员工、部门的增删改查、分页等 ssh 开发环境 window7 eclipse: Mars.2 Release (4.5.2)(插件:springsource-tool...
在这个项目中,"springmvc+hibernate登录注册增删改查",开发者旨在构建一个基于Spring MVC的Web应用,其中整合了Hibernate作为数据访问层,实现用户登录、注册以及对数据的CRUD(创建、读取、更新和删除)操作。...
本篇文章将深入探讨Hibernate中的一对多关系的增删改查操作,帮助开发者更好地理解和应用这一功能。 首先,我们来看一下一对多关系的配置。在Hibernate中,一对多关系通常通过在实体类的属性上使用`@OneToMany`注解...
在"SSH增删改查"项目中,Hibernate可能是负责数据库操作的主要工具,实现了对数据的插入(Insert)、删除(Delete)、更新(Update)和查询(Select)。 文件名"crm"可能代表客户关系管理(Customer Relationship ...
在本实例中,我们将深入探讨如何使用SpringMVC、Spring4.x和Hibernate4.x框架来构建一个员工信息管理系统,该系统支持对员工信息的增删改查操作。这个项目是基于MyEclipse8.5集成开发环境,使用SqlServer2005作为...
在这个人事管理系统中,Hibernate被用来管理用户和部门的数据,包括增、删、改、查等操作。通过编写实体类、配置映射文件(XML或注解),我们可以轻松地进行数据库交互,而无需关心SQL的具体细节。 Spring框架是...
开发环境 window7 eclipse: Mars.2 Release (4.5.2)(插件:springsource-tool,hibernatetools-Update) Mysql 5.5.1 Tocat7.0 框架版本 Spring3.2.5 Struts2.3.24 ...员工、部门的增删改查、分页等
这个"简单的SSHdemo 增删改查"项目是SSH框架的一个基础模板,用于演示如何在实际项目中实现员工数据的CRUD(创建、读取、更新和删除)操作。以下将详细介绍SSH框架及其在CRUD操作中的应用。 **Struts2** 是一个基于...
这个"SSH增删改查例子"是专为初学者设计的,旨在帮助他们理解如何在实际项目中实现数据的CRUD(Create、Read、Update、Delete)操作。下面将详细介绍SSH框架的组成部分以及在这个例子中它们如何协同工作。 1. **...
综上所述,"SSH增删改查一对多+分页"项目展示了如何综合运用Struts2、Spring和Hibernate框架,结合Oracle数据库,实现一个完整的Web应用,包括数据的增删改查操作、一对多关联关系处理以及前端的分页展示。...
在这个"struts2增删改查"项目中,开发者利用Struts2框架实现了对Oracle数据库中Emp和Dept两个表的数据操作,包括添加(Add)、删除(Delete)、修改(Update)和查询(Query)功能。以下是对这个项目涉及的关键知识...
实现员工增删改查功能的步骤如下: 1. **配置SSH框架**:首先,需要在项目中引入这三个框架的依赖库,并在相应的配置文件中进行初始化设置。Struts2的配置文件`struts.xml`中定义Action及其结果页面,Spring的配置...
本项目"spring+struts2+hibernate 一对多增删改查"聚焦于这三大框架在处理一对多关系时的数据操作。下面将详细阐述SSH框架在一对多关系处理中的应用和实现。 **Spring框架** Spring作为全面的轻量级应用框架,提供...
在OA项目中,Hibernate可能是用于增删改查操作的基础,通过实体类和HQL(Hibernate Query Language)来操作数据,降低了对SQL的直接依赖。 分页功能是大型系统中常见的需求,本项目利用了pager-taglib库来实现这一...
在IT行业中,员工管理是企业运营的核心部分,而“基于员工的增删改查后台管理系统”则是一个专门针对这一需求开发的应用程序。此类系统的主要目标是高效、安全地管理企业内部员工的信息,包括数据录入、更新、删除...
【标题】"一个简单的增删查改demo(jsp,hibernate,struts2)"提供了基于Java Web技术栈的数据库操作示例,主要涉及了三个核心组件:JSP(JavaServer Pages)、Hibernate(对象关系映射框架)和Struts2(MVC框架)...
本文章将通过一个具体的示例——员工管理系统的增删改查操作,来帮助初学者理解SSH框架的基本用法与实现方式。 #### 二、开发环境准备 根据描述中的信息,开发环境包括以下组成部分: - **MyEclipse 6.0**:集成...
例如,在用户登录后,进行增删改查操作时,Spring可以确保这些操作在一个事务中完成,一旦发生错误,整个事务将被回滚,保证数据的一致性。 接着,Hibernate作为持久层,它简化了数据库操作,提供了对象-关系映射...