国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|JavaScript|易語(yǔ)言|

服務(wù)器之家 - 編程語(yǔ)言 - Java教程 - jdbc+jsp實(shí)現(xiàn)簡(jiǎn)單員工管理系統(tǒng)

jdbc+jsp實(shí)現(xiàn)簡(jiǎn)單員工管理系統(tǒng)

2021-07-16 16:06lxh5431 Java教程

這篇文章主要為大家詳細(xì)介紹了jdbc+jsp實(shí)現(xiàn)簡(jiǎn)單員工管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

簡(jiǎn)單的頁(yè)面分析

在上一個(gè)文章簡(jiǎn)單的數(shù)據(jù)庫(kù)連接測(cè)試,已經(jīng)測(cè)試和數(shù)據(jù)庫(kù)做簡(jiǎn)單的交互,也就是dao層的實(shí)現(xiàn),接下來(lái)要說(shuō)的卻是action的簡(jiǎn)單實(shí)現(xiàn),在ssh中有struts作為表示層和server的交換,而這里我不是說(shuō)的是關(guān)于struts這里只是簡(jiǎn)單的運(yùn)用jsp的代碼書寫來(lái)實(shí)現(xiàn)數(shù)據(jù)的傳輸,這也是最繁瑣的步驟,但是這卻讓我們對(duì)底層的調(diào)用有一個(gè)簡(jiǎn)單的了解,這里是直接調(diào)用封裝好的數(shù)據(jù),交換和使用,首先要書寫的是action的使用,用的最多的就是getparameter表單的提交了,這里在網(wǎng)絡(luò)上提交一個(gè)表單嗎,然后通過(guò)getparameter進(jìn)行獲取,然后通過(guò)enployeedao中的方法進(jìn)行增刪改查,就能夠進(jìn)行基本的邏輯操作了。

代碼實(shí)現(xiàn)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<%@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、接收表單提交的參數(shù)
    string action = request.getparameter("action");
 
    //3.調(diào)用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.將數(shù)據(jù)封裝至employee對(duì)象中
      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.畫面跳轉(zhuǎn)至employeelist.jsp 重定向
    response.sendredirect("employeelist.jsp");
  %>
</body>
</html>

然后我們進(jìn)行簡(jiǎn)單的頁(yè)面設(shè)計(jì),運(yùn)用了表格的形式進(jìn)行設(shè)計(jì),代碼如下

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
<%@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的選中狀態(tài)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的選中狀態(tài)于其他checkbox的選中狀態(tài)同步
      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
 
    //有選中的場(chǎng)合
    //提示是否刪除確認(rèn)的信息
    //確認(rèn)刪除
    //提交表單
    //var action=document.getelementbyid("action");
    //action.value="3";
 
  // document.frmlist.action="employeemanageaction.jsp"
    // document.frmlist.submit();
    //取消刪除
    //不用處理
 
 
 
    //無(wú)選中的場(chǎng)合
    //提示選中記錄的信息
 
  //}
 
 
</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" onclick="ondeletebatch();">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" onclick="checkall()" /></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"
          onclick="ondelete(<%=employee.getempno()%>);">delete</a></td>
      </tr>
      <%
        }
      %>
    </table>
 
  </form>
 
  <%
    }
  %>
</body>
</html>

接下來(lái)要說(shuō)的是更新操作

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
<%@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"
    onsubmit="return checkform();">
    <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"
          onclick="checkform();" /></td>
        <td><input type="reset" name="btnreset" value="reset" /></td>
      </tr>
    </table>
  </form>
</body>
</html>

在這個(gè)過(guò)程中剛好用到了簡(jiǎn)單的js對(duì)數(shù)據(jù)進(jìn)行非空和數(shù)據(jù)類型判斷,這就是我們需要學(xué)會(huì)的邏輯,業(yè)務(wù)層,然后進(jìn)行其他操作,當(dāng)然我注釋的是還沒(méi)完成的多個(gè)刪除和模糊搜索,這個(gè)下一個(gè)博客再去完善。

總結(jié)

在學(xué)習(xí)這個(gè)過(guò)程中,學(xué)會(huì)了更多關(guān)于數(shù)據(jù)調(diào)用的知識(shí),而不是像hibernate那樣在配置文件配置,然后直接調(diào)用就可以了,再用jsp中也發(fā)現(xiàn)jsp嵌入代碼,更加笨重,這也是我學(xué)習(xí)的另一個(gè)方面吧。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:https://blog.csdn.net/lxh5431/article/details/52489972

延伸 · 閱讀

精彩推薦
  • Java教程深入理解Maven環(huán)境搭建和介紹

    深入理解Maven環(huán)境搭建和介紹

    這篇文章主要介紹了深入理解Maven環(huán)境搭建和介紹,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧...

    Andyzty11612021-02-26
  • Java教程Java Synchronized的使用詳解

    Java Synchronized的使用詳解

    這篇文章主要介紹了Java Synchronized的使用詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨...

    淘小笛4312020-07-16
  • Java教程淺談java8 stream flatMap流的扁平化操作

    淺談java8 stream flatMap流的扁平化操作

    這篇文章主要介紹了淺談java8 stream flatMap流的扁平化操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧 ...

    ZhaoYingChao885272020-08-19
  • Java教程Spring security實(shí)現(xiàn)權(quán)限管理示例

    Spring security實(shí)現(xiàn)權(quán)限管理示例

    這篇文章主要介紹了Spring security實(shí)現(xiàn)權(quán)限管理示例,這里整理了詳細(xì)的代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。...

    零度anngle2122020-07-26
  • Java教程Java 非靜態(tài)初始化的例子

    Java 非靜態(tài)初始化的例子

    非靜態(tài)初始化和靜態(tài)初始化一模一樣,只不過(guò)少了static關(guān)鍵字。但是如果兩者共存的話,非靜態(tài)初始化是比靜態(tài)初始化慢一拍的。下邊我們舉兩個(gè)例子來(lái)看...

    laosun4672020-09-13
  • Java教程java8 統(tǒng)計(jì)字符串字母?jìng)€(gè)數(shù)的幾種方法總結(jié)(推薦)

    java8 統(tǒng)計(jì)字符串字母?jìng)€(gè)數(shù)的幾種方法總結(jié)(推薦)

    下面小編就為大家分享一篇java8 統(tǒng)計(jì)字符串字母?jìng)€(gè)數(shù)的幾種方法總結(jié)(推薦),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)吧...

    尚云峰1118762021-02-22
  • Java教程詳解Java中用于國(guó)際化的locale類

    詳解Java中用于國(guó)際化的locale類

    Java中也有用于轉(zhuǎn)換和劃分地區(qū)的國(guó)際化類java.lang.Locale,國(guó)際化在程序中設(shè)置語(yǔ)言和時(shí)間等時(shí)非常有用,下面我們就來(lái)詳解Java中用于國(guó)際化的locale類 ...

    java教程網(wǎng)7952020-05-11
  • Java教程java web實(shí)現(xiàn)分頁(yè)查詢實(shí)例方法

    java web實(shí)現(xiàn)分頁(yè)查詢實(shí)例方法

    在本篇文章里我們給大家分享了java web實(shí)現(xiàn)分頁(yè)查詢的詳細(xì)方法知識(shí)點(diǎn),有需要的朋友們參考學(xué)習(xí)下。...

    Java之家3892021-06-03
主站蜘蛛池模板: 欧美日韩一区二区在线观看 | 黄色三及毛片 | 黄色a级网站 | 欧美日韩精品一区二区在线观看 | 另类国产ts人妖高潮系列视频 | 91视视频在线观看入口直接观看 | 亚洲精品久久久 | 综合久久av | 99精品视频一区二区三区 | 黄色国产片 | 精品欧美一区二区久久久伦 | 亚洲国产激情 | 亚洲成人午夜电影 | www.99re| 欧美亚洲视频 | 国产在线小视频 | 久久99精品国产自在现线 | 亚洲三区在线观看 | 亚洲www视频 | 久久久综合网 | 国产一二三区在线观看 | 黄毛片 | 一级国产 | 国产一区二区欧美 | 亚洲成人精品av | 成人欧美一区二区三区白人 | 亚洲xxxxx| www.欧美.com | 九一视频在线观看 | 久久久久在线 | 精品久久一区二区三区 | 日本免费视频 | 欧美14一18处毛片 | 天天综合久久 | 簧片av| 成年人免费小视频 | 亚洲天堂av网 | 成人久久久 | 久久久成人精品 | 日韩电影在线看 | 啪啪导航 |