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. C++ QUICK REFERENCE

    C++ string 用法详解 字符串分割(C++)  C++ QUICK REFERENCE Matt Mahoney, mmahoney@cs.fit.edu DECLARATIONS enum ...

  2. 使用ingress qdisc和ifb进行qos

    ifb   The Intermediate Functional Block device is the successor to the IMQ iptables module that was ...

  3. [转载] 已知strcpy的函数原型:char *strcpy(char *strDest, const char *strSrc),编写函数 strcpy(C++版)

    已知strcpy的函数原型:char *strcpy(char *strDest, const char *strSrc)其中strDest 是目的字符串,strSrc 是源字符串.不调用C++/C ...

  4. Sprint第二个冲刺(第六天)

    一.Sprint 计划会议: 因为这两天课程较多的原因,表面上进度可能可能没有太大的变化,其实组员们都有完善之前做的功能,正在做的功能也在抓紧时间完成.俗话说得好,慢工出细活 ,不能因为赶进度就随便做 ...

  5. jquery节点操作

    很久没有jquery写东西了,最近使用jquery的时候发现很多节点的操作都不太熟悉了,于是就进行了一个小小的总结. 创建节点:var dom=$('<div></div>') ...

  6. Apache的https协议配置

    一.http协议和https协议的传输格式 http:文本格式的协议 https:二进制格式的协议 二.x509.3证书格式: 证书格式的版本号 证书序列号 证书签名算法 证书颁发者 有效期 持有者的 ...

  7. HDU-4747 Mex(线段树区间更新)

    题目大意:给一个长度为n的整数序列,定义mex(i,j)表示区间[i,j]中没有出现过的最小非负整数,求sigma(mex(i,j)),即序列中所有连续非空子区间的mex之和. 题目分析: answe ...

  8. java 计算器基于工厂模式和功能单一模式

    import java.util.Scanner; public class CaculationTest { public static void main(String[] args) { Sca ...

  9. VC调用系统的调色板

    调用系统的调色板可以用到ChooseColor这个函数,这个函数传入一个参数为CHOOSECOLOR结构体的指针,其函数原型为 BOOL ChooseColor(LPCHOOSECOLOR lpCC) ...

  10. luke 操作记录

    精确查询(不需要切分词):得使用KeywordAnalyzer而不是StandardAnalyzer,原因如下: StandardAnalyzer: