文档章节

SSH dept-emp (one-to-many) SSH一对多

愛伱無悔
 愛伱無悔
发布于 2014/06/23 15:45
字数 675
阅读 18
收藏 0
package com.action;

import java.util.List;

import com.dao.BaseDao;
import com.pojo.Emp;


public class AllAction {

	List list;
	BaseDao dao;
	Emp e;
	
	
	public Emp getE() {
		return e;
	}



	public void setE(Emp e) {
		this.e = e;
	}


	public List getList() {
		return list;
	}

	public void setList(List list) {
		this.list = list;
	}

	public BaseDao getDao() {
		return dao;
	}

	public void setDao(BaseDao dao) {
		this.dao = dao;
	}

	public String findAll(){
		
	list=dao.findAll("from Emp");
	return "findAll";
	}
	public String finddept(){
		
		list=dao.findAll("from Dept");
		return "finddept";
	}
	
	public String insert(){
		
		dao.save(e);
		return "insert";
		
	}
	
	public String delete(){
		
		Emp emp=(Emp) dao.findById(Emp.class, e.getEmpno());
		dao.delete(emp);
		return "delete";
		
	}
	
	public String toupdate(){
		e=(Emp)dao.findById(Emp.class, e.getEmpno());
		//System.out.println(e.getEname());
		list=dao.findAll("from Dept");
		return "toupdate";
		
	}
	public String update(){
		
		
		dao.update(e);
		return "update";
		
	}
}

 

package com.action;

import java.util.List;

import com.dao.BaseDao;
import com.pojo.Dept;
import com.pojo.Emp;

public class MyAction {
	
	List list;
	BaseDao dao;
	
	Dept d;
	String[] ename;
	String[] job;
	Double[] sal;
	public Dept getD() {
		return d;
	}

	public void setD(Dept d) {
		this.d = d;
	}

	public BaseDao getDao() {
		return dao;
	}

	public void setDao(BaseDao dao) {
		this.dao = dao;
	}

	public List getList() {
		return list;
	}

	public void setList(List list) {
		this.list = list;
	}
	
	public String findDept(){
		
		list=dao.findAll("from Dept");
		
		return "findDept";
	}
	
	public String delete(){
		
		Dept dept=(Dept) dao.findById(Dept.class, d.getDeptno());
		dao.delete(dept);
		
		return "delete";
		
	}
	
	public String insert(){
		
		if(ename!=null){
			
			for (int i = 0; i < ename.length; i++) {
				
				Emp emp=new Emp();
				emp.setEname(ename[i]);
				emp.setJob(job[i]);
				emp.setSal(sal[i]);
				emp.setDept(d);
				d.getEmps().add(emp);
			}
		}
		dao.save(d);
		return "insert";
	}
}

package com.dao;

import java.util.List;

public interface BaseDao {
	
	List findAll(String hql);
	
	void save(Object obj);
	
	void delete(Object obj);
	
	void update(Object obj);
	
	Object findById(Class class1,Long id);
}

package com.dao;

import java.util.List;

import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import com.pojo.Emp;

public class BaseDaoImpl extends HibernateDaoSupport implements BaseDao{

	/**
	 * @param args
	 */

	public void delete(Object obj) {
		
		getHibernateTemplate().delete(obj);
		
	}

	public List findAll(String hql) {
		
		return this.getHibernateTemplate().find(hql);
	}

	public Object findById(Class class1, Long id) {
		
		return this.getHibernateTemplate().get(class1, id);
	}

	public void save(Object obj) {
		
		getHibernateTemplate().save(obj);
		
	}

	public void update(Object obj) {
		
		getHibernateTemplate().update(obj);
		
	}
	public static void main(String[] args) {
		
	ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext.xml");
		
		BaseDao bd=(BaseDao) ac.getBean("dao");
		List list=bd.findAll("from Emp");
		System.out.println(list.size());
	}
}

package com.pojo;

import java.util.HashSet;
import java.util.Set;

/**
 * Dept entity.
 * 
 * @author MyEclipse Persistence Tools
 */

public class Dept implements java.io.Serializable {

	// Fields

	private Long deptno;
	private String dname;
	private String loc;
	private Set<Emp> emps = new HashSet<Emp>(0);

	// Constructors

	/** default constructor */
	public Dept() {
	}

	/** minimal constructor */
	public Dept(Long deptno) {
		this.deptno = deptno;
	}

	/** full constructor */
	public Dept(Long deptno, String dname, String loc, Set<Emp> emps) {
		this.deptno = deptno;
		this.dname = dname;
		this.loc = loc;
		this.emps = emps;
	}

	// Property accessors

	public Long getDeptno() {
		return this.deptno;
	}

	public void setDeptno(Long deptno) {
		this.deptno = deptno;
	}

	public String getDname() {
		return this.dname;
	}

	public void setDname(String dname) {
		this.dname = dname;
	}

	public String getLoc() {
		return this.loc;
	}

	public void setLoc(String loc) {
		this.loc = loc;
	}

	public Set<Emp> getEmps() {
		return this.emps;
	}

	public void setEmps(Set<Emp> emps) {
		this.emps = emps;
	}

	

}

package com.pojo;

import java.util.Date;

/**
 * Emp entity.
 * 
 * @author MyEclipse Persistence Tools
 */

public class Emp implements java.io.Serializable {

	// Fields

	private Long empno;
	private Dept dept;
	private String ename;
	private String job;
	private Long mgr;
	private Date hiredate;
	private Double sal;
	private Double comm;

	// Constructors

	/** default constructor */
	public Emp() {
	}

	/** minimal constructor */
	public Emp(Long empno) {
		this.empno = empno;
	}

	/** full constructor */
	public Emp(Long empno, Dept dept, String ename, String job, Long mgr,
			Date hiredate, Double sal, Double comm) {
		this.empno = empno;
		this.dept = dept;
		this.ename = ename;
		this.job = job;
		this.mgr = mgr;
		this.hiredate = hiredate;
		this.sal = sal;
		this.comm = comm;
	}

	// Property accessors

	public Long getEmpno() {
		return this.empno;
	}

	public void setEmpno(Long empno) {
		this.empno = empno;
	}

	public Dept getDept() {
		return this.dept;
	}

	public void setDept(Dept dept) {
		this.dept = dept;
	}

	public String getEname() {
		return this.ename;
	}

	public void setEname(String ename) {
		this.ename = ename;
	}

	public String getJob() {
		return this.job;
	}

	public void setJob(String job) {
		this.job = job;
	}

	public Long getMgr() {
		return this.mgr;
	}

	public void setMgr(Long mgr) {
		this.mgr = mgr;
	}

	public Date getHiredate() {
		return this.hiredate;
	}

	public void setHiredate(Date hiredate) {
		this.hiredate = hiredate;
	}

	public Double getSal() {
		return this.sal;
	}

	public void setSal(Double sal) {
		this.sal = sal;
	}

	public Double getComm() {
		return this.comm;
	}

	public void setComm(Double comm) {
		this.comm = comm;
	}

}



© 著作权归作者所有

共有 人打赏支持
愛伱無悔
粉丝 0
博文 1
码字总数 675
作品 0
十堰
程序员
Hibernate之关联关系映射(一对多和多对一映射,多对多映射)

~接着之前的Hibernate框架接着学习(上篇面试过后发现真的需要学习一下框架了,不然又被忽悠让去培训。)~ 1:Hibernate的关联映射,存在一对多和多对一映射,多对多映射:   1.1:一对多和...

别叫小伙
2017/03/20
0
0
SQL优化常用方法21

用EXISTS替换DISTINCT 当提交一个包含一对多表信息(比如部门表和雇员表)的查询时,避免在SELECT子句中使用DISTINCT. 一般可以考虑用EXIST替换 例如: 低效: SELECT DISTINCT DEPTNO,DEPTNAME F...

inzaghi1984
2017/12/15
0
0
数据库SQL语句书写注意事项

1. 从多个表中选择记录时:(表名顺序) 执行顺序为从右往左,即表记录数少的放到右边,即最为基础表。如果有三个以上的表做连接查询,我们将交叉表作为基础表(即被其他表应用的表,即关系表...

长平狐
2012/09/06
127
0
oracle sql优化(二)

(13) 通过内部函数提高SQL效率.: 复杂的SQL往往牺牲了执行效率. 能够掌握上面的运用函数解决问题的方法在实际工作中是非常有意义的 (14) 使用表的别名(Alias): 当在SQL语句中连接多个表...

等待救赎
2016/03/02
34
0
hibernate 结合servlet及 jsp 的使用

hibernate 结合servlet及 jsp 的使用 1、搭建Hibernate框架 搭建Hibernate框架,大家都不陌生,我这里也不再重复。新建一个项目ServletHibernate,把连接MySQL数据库的jar包、Hibernate所需的...

火龙战士
2015/07/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

C++ gflags

###定义参数 gflags主要支持的参数类型包括bool,int32, int64, uint64, double, string等,定义参数通过DEFINE_type宏实现, 该宏的三个参数含义分别为命令行参数名,参数默认值,以及参数的...

SibylY
20分钟前
0
0
intellij IDEA Properties中文unicode转码问题

在IDEA中创建了properties文件,发现默认中文不会自动进行unicode转码。如下 在project settings - File Encoding,在标红的选项上打上勾,确定即可 效果图如下: unicode转码后效果...

muzi1994
21分钟前
0
0
Java IO类库之PipedWriter

一、PipedWriter介绍 PipedWriter是字符管道输出流,继承自Writer,功能与PipedOutputStream类似,通过与PipedReader组合使用实现类似管道的功能,在多线程环境下,一个线程使用PipedWriter...

老韭菜
25分钟前
0
0
精简分页组件(手写)

需要引入CSS(没错就是这4行) .pagelist { text-align: center; color: #666; width: 100%; clear: both; margin: 20px 0; padding-top: 20px }.pagelist a { color: #666; margin: 0 2px;......

AK灬
25分钟前
3
0
29 岁成为阿里巴巴 P8,工作前 5 年完成晋升 3 连跳,他如何做到?

泡泡是我的好朋友。今年 31 岁,毕业后就进了阿里巴巴,工作五年内从 P4 晋升至 P6、P7、P8。 和他很少聊到工作,但总觉得他有很棒的职场心得,应该分享出来,于是有了这次采访。希望对职场新...

Java填坑之路
28分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部