SSH_框架整合6--修改Edit员工信息

 1 加上修改Edit键

  (1)emp-list.jsp 

<td>
<a href="emp-input?id=${id }">Edit</a>
</td>

2 表单回显---

  方法一:通过隐藏域的方法

  (1)EmployeeDao.java

 //5    Edit
public Employee get(Integer id){
return (Employee) getSession().get(Employee.class, id);
}

  (2)EmployeeService.java  

 //5    Edit
public Employee get(Integer id){
return employeeDao.get(id);
}

 

  (3)EmployeeAction.java

 public String save(){
//第一次添加 就加上系统时间,否则直接保存不修改时间
if(id == null){
model.setCreateTime(new Date());
}
employeeService.saveorUpdate(model);
return SUCCESS;
} public void prepareSave(){
model = employeeService.get(id);
} //**** 6-1 拦截器的方法
public void prepareInput(){
//说明在修改,这时从数据库中获取状态
if(id != null){
model = employeeService.get(id);
}
}

  (4) emp-input.jsp

 <s:form action="emp-save" method="post">
<s:if test="id != null">
<s:textfield name="lastName" label="LastName" disabled="true"></s:textfield>
<s:hidden name="id"></s:hidden> <%--通过隐藏域的方法--%>
<s:hidden name="lastName"></s:hidden>
<s:hidden name="createTime"></s:hidden>
</s:if> <s:else>
<s:textfield name="lastName" label="LastName"></s:textfield>
</s:else>
<s:textfield name="email" label="Email"></s:textfield>
<s:textfield name="birth" label="Birth"></s:textfield> <s:select list="#request.departments"
listKey="id" listValue="departmentName" name="department.id"
label="Department"></s:select>
<s:submit></s:submit>
</s:form>

  方法二:通过值栈获取的方法:

  (1)(2)同

  (3)EmployeeAction.java

 //1:获取所有的部门的信息
public String input(){
request.put("departmentsInfo", departmentService.getAll());
return INPUT;
}
public void prepareInput(){
//说明在修改信息
if(id != null){
model = employeeService.get(id);
}
}
/**
* 5 修改
*/
//2: 使用拦截器存储信息
public String save(){
//第一次添加。否则就是修改,不执行这一步
if(id == null){
model.setCreateTime(new Date());
}
employeeService.saveOrUpdate(model);
return SUCCESS;
} public void prepareSave(){
//第一次添加,重新获取
if(id == null){
model = new Employee();
}
//修改,从数据库获取
else{
model = employeeService.get(id);
}
}

  (4) emp-input.jsp

 <s:form action="emp-save" method="post">
<s:if test="id != null">
<s:textfield name="lastName" label="LastName" disabled="true"></s:textfield>
<s:hidden name="id"></s:hidden> <%--通过隐藏域的方法
<s:hidden name="lastName"></s:hidden>
<s:hidden name="createTime"></s:hidden> --%>
</s:if> <s:else>
<s:textfield name="lastName" label="LastName"></s:textfield>
</s:else>
<s:textfield name="email" label="Email"></s:textfield>
<s:textfield name="birth" label="Birth"></s:textfield> <s:select list="#request.departments"
listKey="id" listValue="departmentName" name="department.id"
label="Department"></s:select>
<s:submit></s:submit>
</s:form>

SSH_框架整合6--修改Edit员工信息的更多相关文章

  1. SSH_框架整合4--添加员工信息

    SSH_框架整合4--添加员工信息 一. 1 index.jsp:添加:<a href="emp-input">添加员工向信息:Add Employees' Infor ...

  2. SSH_框架整合2—查询显示

    4. 完成功能. (1)com.atguigu.ssh.actions包下新建EmployeeAction.java package com.atguigu.ssh.actions; import j ...

  3. SSH_框架整合5--验证用户名是否可用

    SSH_框架整合5--验证用户名是否可用 1 emp-input.jsp中编写ajax验证用户名是否可用: <script type="text/javascript" SR ...

  4. SSH_框架整合1

    1 WEB环境下配置Spring   因为是在WEB环境中应用Spring,所以要先配置web.xml: (1)WebContent-WEB-INF-lib包中,加入Spring包下的required ...

  5. SSH_框架整合7--整个项目CODE

    一 架构 1Action类 2 配置文件 3 View页面 二  Code 1 src (1)com.atguigu.ssh.actions >EmployeeAction.java packa ...

  6. SSH_框架整合3-删除

    一.普通删除 1 完善src中 类: (1)EmployeeDao.java中: //2 删除 public void delete(Integer id){ String hql="DEL ...

  7. 小项目: low版本的 员工信息程序:

    ### 附加两个文件1 user_info 和worker_info flag = False def logon(): #登录函数 global flag usr = input('Username ...

  8. 基于SSH实现员工管理系统之框架整合篇

    本篇文章来源于:https://blog.csdn.net/zhang_ling_yun/article/details/77803178 以下内容来自慕课网的课程:基于SSH实现员工管理系统之框架整 ...

  9. JavaWeb_day03_员工信息添加修改删除

    day03员工的添加,修改,删除 修改功能 思路 : 点击修改员工数据之后,跳转到单行文本,查询要修改的员工id的全部信息,主键id设置为readonly,其余的都可以修改, 修改之后,提交按钮,提交 ...

随机推荐

  1. VMDK镜像迁移到KVM(二)

    KVM has the ability to use VMware's .vmdk disk files directly, as long as the disk is wholly contain ...

  2. CoreOS Linux available in China

    CoreOS Linux 竭诚服务中国用户 今天,我们宣布一个令人振奋的消息 - CoreOS Linux 开源版本正式向中国地区提供服务!国内的用户们现在可以使用安全.自动的 CoreOS Linu ...

  3. css 属性积累

    1. letter-spacing:6px;    //属性增加或减少字符间的空白(字符间距) 2. cursor                       // 鼠标移上去的鼠标状态 属性值有: ...

  4. HDU 2089 数位dp/字符串处理 两种方法

    不要62 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  5. ZOJ 1029 Moving Tables

    原题链接 题目大意:走廊两边排列了400个房间,要在两个房间之间搬桌子.搬桌子的时候会占用一部分走廊,有冲突的话要回避.求最快搬完的时间. 解法:开辟一个数组,每占用一段走廊,就把相应的房间号的元素加 ...

  6. C++ Primer : 第十二章 : 动态内存之shared_ptr类

    在C++中,动态内存是的管理是通过一对运算符来完成的:new  ,在动态内存中为对象分配空间并返回一个指向该对象的指针,delete接受一个动态对象的指针,销毁该对象,并释放该对象关联的内存. 动态内 ...

  7. Maven项目中找不到maven dependencies library

    一般是,workspace中的.classpath文件中有内容丢失造成 在 <classpathentry kind="con" path="org.eclipse ...

  8. URAL 1934 Black Spot(最短路)

    Black Spot Time limit: 1.0 secondMemory limit: 64 MB Bootstrap: Jones's terrible leviathan will find ...

  9. HDU5889 Barricade(最短路)(网络流)

    Barricade Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total S ...

  10. CoderForces 280B(记忆化搜索)

    题目大意:一个纸牌游戏,52张纸牌排成一列,每张纸牌有面值和花色两种属性.每次操作可以用最后一张纸牌将倒数第二张或者倒数第四张替换,但前提是两张牌的花色或者面值相同.问最终能否只剩一张牌. 题目分析: ...