JSP是一种基于Java的Web开发技术,它可以让我们在页面中嵌套Java代码,实现动态生成HTML页面,开发出更加灵活的Web应用程序。在这里,我将详细讲解使用JSP实现简单人事管理系统的完整攻略。下面分为以下步骤:
- 创建数据库表
- 创建JavaBean
- 创建JSP页面
- 配置Web应用程序
1. 创建数据库表
首先,我们需要创建一个数据库表,用于存储人事管理系统中的员工信息。假设我们需要存储员工的编号、姓名、部门和职位信息,可以使用以下SQL语句创建一个名为employee的表:
CREATE TABLE employee (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50),
department VARCHAR(50),
position VARCHAR(50)
);
该表中包含4个字段:id、name、department、position,其中id为自增主键。
2. 创建JavaBean
接下来,我们需要创建一个JavaBean,用于对数据库进行操作。在这里,我们可以使用JDBC技术连接数据库,并通过JavaBean提供对数据库表的增删改查功能。下面是一个名为Employee的JavaBean示例,包含了对employee表的增删改查方法:
import java.sql.*;
public class Employee {
private Connection conn = null;
public Employee() {
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "");
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
}
public void add(String name, String department, String position) {
try {
String sql = "INSERT INTO employee(name, department, position) " +
"VALUES (?, ?, ?)";
PreparedStatement preparedStatement = conn.prepareStatement(sql);
preparedStatement.setString(1, name);
preparedStatement.setString(2, department);
preparedStatement.setString(3, position);
preparedStatement.execute();
} catch (SQLException e) {
e.printStackTrace();
}
}
public void delete(int id) {
try {
String sql = "DELETE FROM employee WHERE id=?";
PreparedStatement preparedStatement = conn.prepareStatement(sql);
preparedStatement.setInt(1, id);
preparedStatement.execute();
} catch (SQLException e) {
e.printStackTrace();
}
}
public void update(int id, String name, String department, String position) {
try {
String sql = "UPDATE employee SET name=?, department=?, position=? WHERE id=?";
PreparedStatement preparedStatement = conn.prepareStatement(sql);
preparedStatement.setString(1, name);
preparedStatement.setString(2, department);
preparedStatement.setString(3, position);
preparedStatement.setInt(4, id);
preparedStatement.execute();
} catch (SQLException e) {
e.printStackTrace();
}
}
public ResultSet queryAll() {
try {
String sql = "SELECT * FROM employee";
Statement statement = conn.createStatement();
return statement.executeQuery(sql);
} catch (SQLException e) {
e.printStackTrace();
return null;
}
}
}
3. 创建JSP页面
在JavaBean创建完成之后,我们需要创建JSP页面来对数据库进行操作,并将用户所需要的结果显示在页面上。下面是一个简单的JSP页面示例,包含了对employee表进行增删改查的操作:
<%@ page import="java.sql.*" %>
<%@ page import="Employee" %>
<%
String action = request.getParameter("action");
Employee employee = new Employee();
if ("add".equals(action)) {
String name = request.getParameter("name");
String department = request.getParameter("department");
String position = request.getParameter("position");
employee.add(name, department, position);
} else if ("delete".equals(action)) {
int id = Integer.parseInt(request.getParameter("id"));
employee.delete(id);
} else if ("update".equals(action)) {
int id = Integer.parseInt(request.getParameter("id"));
String name = request.getParameter("name");
String department = request.getParameter("department");
String position = request.getParameter("position");
employee.update(id, name, department, position);
}
ResultSet rs = employee.queryAll();
%>
<html>
<head>
<title>Employee Management System</title>
</head>
<body>
<h1>Employee Management System</h1>
<table border="1">
<tr>
<th>ID</th>
<th>Name</th>
<th>Department</th>
<th>Position</th>
<th>Action</th>
</tr>
<%
while (rs.next()) {
out.println("<tr>");
out.println("<td>" + rs.getInt("id") + "</td>");
out.println("<td>" + rs.getString("name") + "</td>");
out.println("<td>" + rs.getString("department") + "</td>");
out.println("<td>" + rs.getString("position") + "</td>");
out.println("<td>");
out.println("<a href=\"?action=delete&id=" + rs.getInt("id") + "\">Delete</a> | ");
out.println("<a href=\"update.jsp?id=" + rs.getInt("id") + "\">Update</a>");
out.println("</td>");
out.println("</tr>");
}
%>
</table>
<h2>Add Employee</h2>
<form method="post" action="?action=add">
<label>Name:</label>
<input type="text" name="name"><br>
<label>Department:</label>
<input type="text" name="department"><br>
<label>Position:</label>
<input type="text" name="position"><br>
<input type="submit" value="Add">
</form>
</body>
</html>
4. 配置Web应用程序
最后一步,我们需要将JavaBean和JSP页面组合起来,并配置Web应用程序。我们可以使用以下目录结构存放相关文件:
/webapp
/WEB-INF
/classes
Employee.class
web.xml
index.jsp
update.jsp
其中,/webapp/index.jsp文件为我们的主页面,用于显示员工信息和进行添加操作;/webapp/update.jsp文件用于进行修改操作。
对于web.xml文件的配置,我们可以将Employee类声明为一个Servlet,并定义映射:
<web-app>
<servlet>
<servlet-name>Employee</servlet-name>
<servlet-class>Employee</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Employee</servlet-name>
<url-pattern>/Employee</url-pattern>
</servlet-mapping>
</web-app>
这样,我们的人事管理系统就已经搭建完成了。用户可以通过访问主页面进行增删改查操作,由JavaBean完成与数据库之间的交互,并将结果以表格形式呈现在页面上。
例如,用户需要添加一个名为"John"、部门为"Sales"、职位为"Manager"的员工,只需要在主页面点击"Add Employee"按钮,输入相关信息并提交即可。这时,JavaBean将通过JDBC技术向数据库中的employee表添加一条新纪录,页面将自动刷新并显示出新添加的员工信息。
另外,为了更好地展示修改操作的效果,我们可以将employee表中的一条记录导入至update.jsp页面中,用户可以在该页面上修改该记录的相关信息,并提交修改结果。JavaBean将会将修改之后的记录更新至employee表中,页面同时也会刷新显示出修改之后的结果。
以上便是使用JSP实现简单人事管理系统的完整攻略。通过这个例子,我们可以更好地掌握JSP技术的应用,实现更加灵活和高效的Web应用程序。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JSP实现简单人事管理系统 - Python技术站