- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章jdbc+jsp实现简单员工管理系统由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
简单的页面分析 。
在上一个文章简单的数据库连接测试,已经测试和数据库做简单的交互,也就是dao层的实现,接下来要说的却是action的简单实现,在ssh中有struts作为表示层和server的交换,而这里我不是说的是关于struts这里只是简单的运用jsp的代码书写来实现数据的传输,这也是最繁琐的步骤,但是这却让我们对底层的调用有一个简单的了解,这里是直接调用封装好的数据,交换和使用,首先要书写的是action的使用,用的最多的就是getparameter表单的提交了,这里在网络上提交一个表单吗,然后通过getparameter进行获取,然后通过enployeedao中的方法进行增删改查,就能够进行基本的逻辑操作了.
代码实现 。
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、接收表单提交的参数
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>
|
然后我们进行简单的页面设计,运用了表格的形式进行设计,代码如下 。
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的选中状态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"
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>
|
接下来要说的是更新操作 。
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>
|
在这个过程中刚好用到了简单的js对数据进行非空和数据类型判断,这就是我们需要学会的逻辑,业务层,然后进行其他操作,当然我注释的是还没完成的多个删除和模糊搜索,这个下一个博客再去完善.
总结 。
在学习这个过程中,学会了更多关于数据调用的知识,而不是像hibernate那样在配置文件配置,然后直接调用就可以了,再用jsp中也发现jsp嵌入代码,更加笨重,这也是我学习的另一个方面吧.
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我.
原文链接:https://blog.csdn.net/lxh5431/article/details/52489972 。
最后此篇关于jdbc+jsp实现简单员工管理系统的文章就讲到这里了,如果你想了解更多关于jdbc+jsp实现简单员工管理系统的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我希望通过 Workday API 检索 Workday 工作人员(又名员工)Web 配置文件 URL。用例是我正在构建一个聊天机器人来检索用户信息,并且我希望能够深度链接到工作人员(员工)网络配置文
我很困惑我希望员工 ID 是自动生成的前缀格式我知道在 sql server 中触发之前是可能的我正在关注帖子 http://www.aspdotnet-suresh.com/2012/04/set-
我读了一个教程,其中有这个结构: struct { char Name[25]; int Age; float SkillRating; } Employee; defines
我有两个表 employee(name,id) ,其中包含所有员工和另一个表 reader(id,date) ,它给出了日期和哪个员工在场。我如何找到一定范围内的缺席者列表日期? 对于特定日期,我能够
我需要员工 ID 的标准正则表达式,例如 EMP015 015EMP EMP_015 E_015 EMP-015 EMP.VIS EMP/056 基本上它应该允许 . 或 _ 或 - 或 / 在字母数
我是 Angular 的新手,正在使用 Angular 编写代码,我正在观看视频教程。我注意到我的代码中有一些东西,但我无法理解它是如何工作的。 我想知道这段代码是什么意思组件上的“员工:员工 []”
下面从HR角度,来分析员工离职成本,欢迎大家留言讨论。 一个员工离职后留下的坑,并不是再找一个人填上就万事大吉了。 一般来说,核心人才的流失,至少有1-2个月的招聘期、3个月的适应期,6个月的融入期;
我有两个表 Employee 和 Department 此图像显示每个员工的经理。我想编写一个 SQL 查询,为我提供所有主管(经理、经理的经理......)的列表。 我只想要一个列,在给定特定员工时
我想将 ER 图的这一部分转换为关系模型。我们有一个三元关系,它说的是以下内容: 1 位客户将 1 个项目提供给 -> 多个开发人员 1 位客户分配给 1 位开发人员 -> 多个项目 1 个开发人员被
我将要开发一个应用程序,该应用程序将使用一些基于 SOAP 的 Web 服务框架。我做了一些研究,我有点喜欢 Axis2C 框架,但在某些主题中,我发现原来的 Axis2C 实现存在内存泄漏问题,并且
我的 SQL 数据库中有两个表: 公司: ID(自增) 姓名 地址 ... 员工: ID(自增) 公司编号 internal_id 姓名 姓氏 问题是我想要一个与他们所属的公司相关的员工 ID (in
我试图在堆栈溢出和谷歌上找到这个问题的答案,但没有找到。如果有问题需要更正或重复问题,请告诉我。 当我计算员工对象 (emp_obj) 和员工类的大小时,在这两种情况下我都得到了 4 个字节。但是我不
问题 如何在 Angular 员工 component.html 上返回 EmployeeCode ? 示例数据引用表 Code tableName FieldName LabelText
我是 hibernate 新手,正在使用 hibernate 版本 4.3.4 JAR 文件。我正在尝试使用 intelliJ 社区版中的 mySQL 服务器执行简单的 Hibernate 程序。以下
我正在使用 laravel 5.4 和 Yajra Datatable,但我无法使其工作..我遇到了“Uncaught TypeError: $(...).DataTable is not a fun
我想创建一个小型示例应用程序,它可以读取我的员工徽章并将其显示在屏幕上(或者如果我可以复制它就更好了,这样我们就可以使用我们的手机徽章而不是我们的塑料身份证) 几个问题1. 这在技术上可行吗?如果是这
我有一个 person 对象,需要将它存储为 byte[] 并再次检索该 byte[] 并转换为 person 对象 并且 BinaryFormatter 在 Silverlight 中不可用 最佳答
最近开始学习oracle和sql。 在学习的过程中,我遇到了几个问题,我的 friend 在接受采访时被问到这些问题。 SELECT * FROM Employees WHERE NULL IS N
当我执行以下命令来创建分片时: mysqlfabric sharding add_table 1 employees.employees emp_no 我收到以下错误: DatabaseError:
这是我的表格 门票 tic_id, tic_cat tic_priority tic_cus tic_date tic_title tic_
我是一名优秀的程序员,十分优秀!