Action:
public class EmpAction extends DispatchAction {
/*
* Generated Methods
*/
private EmpDAOImpl empDAOImpl = new EmpDAOImpl();
/**
* 显示 Method execute
*/
public ActionForward detail(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
DynaActionForm pageForm = (DynaActionForm) form;
// 获取empId
Object empId = request.getParameter("empId");
// 根据empId查找Employee对象
Employee emp = empDAOImpl.findById(empId);
// 将emp存放入request范围中
request.setAttribute("emp", emp);
//获取部门信息列表存入request范围中
request.setAttribute("deptList",new DeptDAOImpl().getPageBean(1, 10).getData());
//获取type如果为update则跳转到修改页面显示详细信息,
//如果为change则跳转到换岗页面显示详细信息
//否则到个人信息页面
if("update".equals(request.getParameter("type"))){
return new ActionForward("/editEmployee.jsp");
}else if("change".equals(request.getParameter("type"))){
return new ActionForward("/changeDepartment.jsp");
}
return new ActionForward("/employeeDetail.jsp");
}
/**
* 修改
*/
public ActionForward update(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
DynaActionForm pageForm = (DynaActionForm) form;
// 从动态Form中取出Employee对象
Employee emp = (Employee) pageForm.get("emp");
// 调用DAO
new EmpDAOImpl().update(emp);
return mapping.findForward("emp");
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
daoImpl:
public class EmpDAOImpl extends BaseDAO implements EmpDAO {
* 改
*/
public void update(Employee emp) {
// 更新用的sql语句
String sql = "UPDATE EMPLOYEE SET EMPNAME=?,EMPBIRTHDAY=to_date(?,'yyyy-mm-dd'),EMPEMAIl=?,EMPTELPHONE=?,EMPSEX=?,FAVOURITE=?,DEPTID=? WHERE EMPID=?";
// 执行更新
try {
this.executeUpdate(sql, new Object[] { emp.getEmpName(),
emp.getEmpBirthday(), emp.getEmpEmail(),
emp.getEmpTelphone(), emp.getEmpSex(), emp.getFavourite(),
emp.getDeptId(), emp.getEmpId() });
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
jsp 页面
<%@page pageEncoding="UTF-8" %>
<%@taglib prefix="bean" uri="/WEB-INF/struts-bean.tld" %>
<%@taglib prefix="html" uri="/WEB-INF/struts-html.tld" %>
<%@taglib prefix="logic" uri="/WEB-INF/struts-logic.tld" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>修改员工信息</title>
<link rel="stylesheet" type="text/css" href="skin/css/base.css">
<script type="text/javascript">
function formSubmit(){
document.forms[0].submit();
}
</script>
</head>
<body leftmargin="8" topmargin="8" background='skin/images/allbg.gif'>
<!-- 快速转换位置按钮 -->
<table width="98%" border="0" cellpadding="0" cellspacing="1" align="center">
<tr>
<td height="26" background="skin/images/newlinebg3.gif">
<table width="98%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="left"> </td>
</tr>
</table>
</td>
</tr>
</table>
<!-- 内容列表 -->
<html:form action="/emp?op=update">
<!-- 判断范围中是否存在pageBean.data如果没有,则跳转到action
-->
<logic:notPresent name="emp">
<logic:redirect action="emp.do?op=show" />
</logic:notPresent>
<table width="98%" border="0" cellpadding="2" cellspacing="1" bgcolor="#D1DDAA" align="center" style="margin-top:8px">
<tr bgcolor="#E7E7E7">
<td height="24" colspan="2" background="skin/images/tbg.gif"> 员工信息修改</td>
</tr>
<tr align='center' bgcolor="#FFFFFF" onMouseMove="javascript:this.bgColor='#FCFDEE';" onMouseOut="javascript:this.bgColor='#FFFFFF';" height="22" >
<td width="23%">员工姓名</td>
<td width="77%" align="left"><label>
<html:hidden property="emp.empId" value="${emp.empId }" />
<html:text property="emp.empName" value="${emp.empName }" />
</label></td>
</tr>
<tr align='center' bgcolor="#FAFAF1" onMouseMove="javascript:this.bgColor='#FCFDEE';" onMouseOut="javascript:this.bgColor='#FFFFFF';" height="22" >
<td>出生年月</td>
<td align="left"><label>
<html:text property="emp.empBirthday" value="${emp.empBirthday }" />
</label></td>
</tr>
<tr align='center' bgcolor="#FFFFFF" onMouseMove="javascript:this.bgColor='#FCFDEE';" onMouseOut="javascript:this.bgColor='#FFFFFF';" height="22" >
<td>性别</td>
<td align="left"><label>
<input type="radio" name="emp.empSex" value="1" ${emp.empSex==1?"checked=checked":"" } />男
<input type="radio" name="emp.empSex" value="0" ${emp.empSex==0?"checked=checked":"" } />女
</label></td>
</tr>
<tr align='center' bgcolor="#FAFAF1" onMouseMove="javascript:this.bgColor='#FCFDEE';" onMouseOut="javascript:this.bgColor='#FFFFFF';" height="22" >
<td>联系电话</td>
<td align="left"><label>
<html:text property="emp.empTelphone" value="${emp.empTelphone }"></html:text>
</label></td>
</tr>
<tr align='center' bgcolor="#FFFFFF" onMouseMove="javascript:this.bgColor='#FCFDEE';" onMouseOut="javascript:this.bgColor='#FFFFFF';" height="22" >
<td>Email</td>
<td align="left"><label>
<html:text property="emp.empEmail" value="${emp.empEmail }"></html:text>
</label></td>
</tr>
<tr align='center' bgcolor="#FAFAF1" onMouseMove="javascript:this.bgColor='#FCFDEE';" onMouseOut="javascript:this.bgColor='#FFFFFF';" height="22" >
<td>爱好</td>
<td align="left"><label>
<html:multibox property="emp.favourite" value="足球" />足球
<html:multibox property="emp.favourite" value="篮球" />篮球
<html:multibox property="emp.favourite" value="音乐" />音乐
<html:multibox property="emp.favourite" value="广播" />广播
</label></td>
</tr>
<tr align='center' bgcolor="#FFFFFF" onMouseMove="javascript:this.bgColor='#FCFDEE';" onMouseOut="javascript:this.bgColor='#FFFFFF';" height="22" >
<td>所在部门</td>
<td align="left"><label>
<logic:notPresent name="deptList">
<logic:redirect action="emp.do?op=update&type=deptList" />
</logic:notPresent>
<html:select property="emp.deptId" value="${emp.deptId }" >
<html:optionsCollection name="deptList" label="deptName" value="deptId" />
</html:select>
</label></td>
</tr>
<tr bgcolor="#FAFAF1">
<td height="28" align="center"> </td>
<td height="28"> </td>
</tr>
<tr align="right" bgcolor="#EEF4EA">
<td height="36" colspan="2" align="left" bgcolor="#FFFFFF">
<a href="javascript:formSubmit();"><img src="skin/images/frame/update.gif" width="16" height="16" />更新</a>
</td>
</tr>
</table>
</html:form>
</body>
</html>