评论

收藏

[Java] jdbc+jsp实现简单员工管理系统

编程语言 编程语言 发布于:2021-09-18 17:55 | 阅读数:281 | 评论:0

这篇文章主要为大家详细介绍了jdbc+jsp实现简单员工管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
简单的页面分析
在上一个文章简单的数据库连接测试,已经测试和数据库做简单的交互,也就是dao层的实现,接下来要说的却是action的简单实现,在ssh中有struts作为表示层和server的交换,而这里我不是说的是关于struts这里只是简单的运用jsp的代码书写来实现数据的传输,这也是最繁琐的步骤,但是这却让我们对底层的调用有一个简单的了解,这里是直接调用封装好的数据,交换和使用,首先要书写的是action的使用,用的最多的就是getparameter表单的提交了,这里在网络上提交一个表单吗,然后通过getparameter进行获取,然后通过enployeedao中的方法进行增删改查,就能够进行基本的逻辑操作了。
代码实现
<%@page import="dao.employeedao"%>
<%@page import="java.text.simpledateformat"%>
<%@page import="entity.employee"%>
<%@ page language="java" contenttype="text/html; charset=utf-8"
  pageencoding="utf-8"%>
<!doctype html public "-//w3c//dtd html 4.01 transitional//en" "http://www.w3.org/tr/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<title>insert title here</title>
</head>
<body>
 
  <%
  //1、接收表单提交的参数
  string action = request.getparameter("action");
 
  //3.调用employeedao中addemployee(employee employee)完成员工添加
  employeedao employeedao = new employeedao();
  if (action.equals("0") || action.equals("1")) {
    //添加 更新
    string empno = request.getparameter("empno");
    string ename = request.getparameter("ename");
    string sal = request.getparameter("sal");
    string hiredate = request.getparameter("hiredate");
 
    //2.将数据封装至employee对象中
    employee employee = new employee();
    employee.setempno(integer.parseint(empno));
    employee.setename(ename);
    employee.setsal(double.parsedouble(sal));
    simpledateformat sdf = new simpledateformat("yyyy-mm-dd");
    employee.sethiredate(sdf.parse(hiredate));
 
    if (action.equals("0")) {
    //添加
    employeedao.addemployee(employee);
    } else {
    //更新
    employeedao.updateemployee(employee);
    }
 
  } else if (action.equals("2")) {
    //删除
    string empno = request.getparameter("empno");
    employeedao.deleteemployee(empno);
  } else if (action.equals("3")) {
    //批量删除
    system.out.println("action="+action);
 
    string[] chks=request.getparametervalues("chks");
    for(string chk:chks){
    system.out.println("chk="+chk);
    }
 
 
  }
 
  //4.画面跳转至employeelist.jsp 重定向
  response.sendredirect("employeelist.jsp");
  %>
</body>
</html>
然后我们进行简单的页面设计,运用了表格的形式进行设计,代码如下
<%@page import="java.util.list"%>
<%@page import="entity.employee"%>
<%@page import="dao.employeedao"%>
<%@page language="java" contenttype="text/html; charset=utf-8"
  pageencoding="utf-8"%>
<!doctype html public "-//w3c//dtd html 4.01 transitional//en" "http://www.w3.org/tr/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<title>insert title here</title>
<script>
  function checkall() {
 
  //1.获取chkall的选中状态checked
  var chkall = document.getelementbyid("chkall");
  //alert(chkall.checked);
 
  //2、获取其他所有的checkbox
  var chks = document.getelementsbyname("chks");
  for (var i = 0; i < chks.length; i++) {
    //3、将chkall的选中状态于其他checkbox的选中状态同步
    chks[i].checked = chkall.checked;
  }
  }
 
  function ondelete(empno){
  var result=confirm("delete employee?");
  if(result){
    window.location.href="employeemanageaction.jsp?action=2&empno=" rel="external nofollow" +empno;
  }
  }
 
  //function ondeletebatch(){
  //判断是否有选中的checkbox
 
  //有选中的场合
  //提示是否删除确认的信息
  //确认删除
  //提交表单
  //var action=document.getelementbyid("action");
  //action.value="3";
 
  // document.frmlist.action="employeemanageaction.jsp"
  // document.frmlist.submit();
  //取消删除
  //不用处理
 
 
 
  //无选中的场合
  //提示选中记录的信息
 
  //}
 
 
</script>
</head>
<body>
  <h3>employee list page</h3>
 
  <form name="frmsearch" action="xxxxaction.jsp" method="post">
  ename:<input type="text" /> <input type="submit" name="btnsubmit"
    value="submit" />
  </form>
  <p>
  <hr />
 
  <a href="employeemanage.jsp?action=0" rel="external nofollow" >add employee</a>  
  <a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" >delete
  employee batch</a>
  <p>
  <%
    employeedao emplyeedao = new employeedao();
    list<employee> employees = emplyeedao.getemployees();
  %>
 
  <%
    if (employees != null && employees.size() > 0) {
  %>
 
  <form name="frmlist" action="" method="post">
  <input type="hidden" name="action" id="action" value="" />
  <table width="600px" border="1px">
 
    <tr bgcolor="#009966">
    <td><input type="checkbox" id="chkall"  /></td>
    <td>empno</td>
    <td>ename</td>
    <td>sal</td>
    <td>hiredate</td>
    <td>action</td>
    </tr>
 
    <%
    employee employee = null;
      for (int i = 0; i < employees.size(); i++) {
      employee = employees.get(i);
    %>
    <tr>
    <td><input type="checkbox" id="chk<%=i + 1%>" name="chks"
      value="<%=employee.getempno()%>" /></td>
    <td><%=employee.getempno()%></td>
    <td><%=employee.getename()%></td>
    <td><%=employee.getsal()%></td>
    <td><%=employee.gethiredate()%></td>
    <td><a
      href="employeemanage.jsp?action=1&empno=<%=employee.getempno()%>" rel="external nofollow" >update</a>
      <a href="javascript:void(0)" rel="external nofollow" rel="external nofollow"
      >delete</a></td>
    </tr>
    <%
    }
    %>
  </table>
 
  </form>
 
  <%
  }
  %>
</body>
</html>
接下来要说的是更新操作
<%@page import="entity.employee"%>
<%@page import="dao.employeedao"%>
<%@ page language="java" contenttype="text/html; charset=utf-8"
  pageencoding="utf-8"%>
<!doctype html public "-//w3c//dtd html 4.01 transitional//en" "http://www.w3.org/tr/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<title>insert title here</title>
<script>
  function checkform() {
 
  var empno = document.getelementbyid("empno");
  if (empno && empno.value == "") {
    empno.focus();
    alert("please input empno");
    return;
  }
 
  var ename = document.getelementbyid("ename");
  if (ename && ename.value == "") {
    ename.focus();
    alert("please input ename");
    return;
  }
 
  var sal = document.getelementbyid("sal");
  if (sal && sal.value == "") {
    sal.focus();
    alert("please input sal");
    return;
  }
 
  var hiredate = document.getelementbyid("hiredate");
  if (hiredate && hiredate.value == "") {
    hiredate.focus();
    alert("please input hiredate");
    return;
  }
 
  var frm = document.getelementbyid("frm");
  frm.submit();
 
  }
</script>
 
 
</head>
<body>
 
  <%
  string action=request.getparameter("action");
 
  employee employee=null;
  if(action.equals("1")){
    //更新操作
    string empno = request.getparameter("empno");
 
    employeedao employeedao = new employeedao();
    employee=employeedao.getemployeebyempno(empno);
  }
 
  %>
 
  <h3>employee <%=action.equals("1")?"update":"regist" %> page</h3>
 
  <form id="frm" action="employeemanageaction.jsp" method="post"
  >
  <input type="hidden" name="action" value="<%=action%>"/>
  <table>
    <tr>
    <td>empno</td>
    <td><input type="text" id="empno" name="empno" <%=action.equals("1")?"readonly":"" %> value="<%=employee==null?"":employee.getempno()%>"/></td>
    </tr>
 
    <tr>
    <td>ename</td>
    <td><input type="text" id="ename" name="ename" value="<%=employee==null?"":employee.getename()%>"/></td>
    </tr>
 
    <tr>
    <td>sal</td>
    <td><input type="text" id="sal" name="sal" value="<%=employee==null?"":employee.getsal()%>"/></td>
    </tr>
 
    <tr>
    <td>hiredate</td>
    <td><input type="text" id="hiredate" name="hiredate" value="<%=employee==null?"":employee.gethiredate()%>"/></td>
    </tr>
 
    <tr>
    <td><input type="button" name="btnsubmit" value="submit"
       /></td>
    <td><input type="reset" name="btnreset" value="reset" /></td>
    </tr>
  </table>
  </form>
</body>
</html>
在这个过程中刚好用到了简单的js对数据进行非空和数据类型判断,这就是我们需要学会的逻辑,业务层,然后进行其他操作,当然我注释的是还没完成的多个删除和模糊搜索,这个下一个博客再去完善。
总结
在学习这个过程中,学会了更多关于数据调用的知识,而不是像hibernate那样在配置文件配置,然后直接调用就可以了,再用jsp中也发现jsp嵌入代码,更加笨重,这也是我学习的另一个方面吧。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持CodeAE代码之家
原文链接:https://blog.csdn.net/lxh5431/article/details/52489972

关注下面的标签,发现更多相似文章