用MyEclipse 8. 5版本编写一个学生宿舍管理系统的假勤功能,显示代码
时间: 2025-01-04 14:41:58 浏览: 39
好的,下面是一个使用MyEclipse 8.5版本编写的学生宿舍管理系统中的假勤功能的示例代码。这个示例包括一个简单的Java类和一个JSP页面,用于显示和提交假勤记录。
### 1. Java类:LeaveRecord.java
```java
package com.dormitory.system.model;
import java.util.Date;
public class LeaveRecord {
private int id;
private String studentId;
private String studentName;
private Date leaveDate;
private String reason;
public LeaveRecord() {}
public LeaveRecord(int id, String studentId, String studentName, Date leaveDate, String reason) {
this.id = id;
this.studentId = studentId;
this.studentName = studentName;
this.leaveDate = leaveDate;
this.reason = reason;
}
// Getter and Setter methods
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getStudentId() {
return studentId;
}
public void setStudentId(String studentId) {
this.studentId = studentId;
}
public String getStudentName() {
return studentName;
}
public void setStudentName(String studentName) {
this.studentName = studentName;
}
public Date getLeaveDate() {
return leaveDate;
}
public void setLeaveDate(Date leaveDate) {
this.leaveDate = leaveDate;
}
public String getReason() {
return reason;
}
public void setReason(String reason) {
this.reason = reason;
}
}
```
### 2. JSP页面:leaveRecord.jsp
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="com.dormitory.system.model.LeaveRecord" %>
<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>假勤记录</title>
</head>
<body>
<h1>假勤记录</h1>
<form action="submitLeaveRecord.jsp" method="post">
<label for="studentId">学号:</label>
<input type="text" id="studentId" name="studentId" required><br><br>
<label for="studentName">姓名:</label>
<input type="text" id="studentName" name="studentName" required><br><br>
<label for="leaveDate">请假日期:</label>
<input type="date" id="leaveDate" name="leaveDate" required><br><br>
<label for="reason">请假原因:</label>
<textarea id="reason" name="reason" rows="4" cols="50" required></textarea><br><br>
<input type="submit" value="提交">
</form>
<h2>已有假勤记录</h2>
<table border="1">
<tr>
<th>学号</th>
<th>姓名</th>
<th>请假日期</th>
<th>请假原因</th>
</tr>
<%
List<LeaveRecord> leaveRecords = new ArrayList<LeaveRecord>();
// 这里可以从数据库中获取假勤记录
// 例如: leaveRecords = LeaveRecordDAO.getAllLeaveRecords();
for (LeaveRecord record : leaveRecords) {
%>
<tr>
<td><%= record.getStudentId() %></td>
<td><%= record.getStudentName() %></td>
<td><%= record.getLeaveDate() %></td>
<td><%= record.getReason() %></td>
</tr>
<%
}
%>
</table>
</body>
</html>
```
### 3. JSP页面:submitLeaveRecord.jsp
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="com.dormitory.system.model.LeaveRecord" %>
<%
String studentId = request.getParameter("studentId");
String studentName = request.getParameter("studentName");
String leaveDateStr = request.getParameter("leaveDate");
String reason = request.getParameter("reason");
// 这里可以将假勤记录保存到数据库中
// 例如: LeaveRecordDAO.saveLeaveRecord(new LeaveRecord(0, studentId, studentName, new Date(leaveDateStr), reason));
response.sendRedirect("leaveRecord.jsp");
%>
```
### 4. 数据库操作类:LeaveRecordDAO.java
```java
package com.dormitory.system.dao;
import com.dormitory.system.model.LeaveRecord;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
public class LeaveRecordDAO {
// 数据库连接信息
private static final String URL = "jdbc:mysql://localhost:3306/dormitory";
private static final String USER = "root";
private static final String PASSWORD = "password";
public static List<LeaveRecord> getAllLeaveRecords() {
List<LeaveRecord> leaveRecords = new ArrayList<LeaveRecord>();
try (Connection conn = DriverManager.getConnection(URL, USER, PASSWORD)) {
String sql = "SELECT * FROM leave_records";
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
LeaveRecord record = new LeaveRecord();
record.setId(rs.getInt("id"));
record.setStudentId(rs.getString("student_id"));
record.setStudentName(rs.getString("student_name"));
record.setLeaveDate(rs.getDate("leave_date"));
record.setReason(rs.getString("reason"));
leaveRecords.add(record);
}
} catch (SQLException e) {
e.printStackTrace();
}
return leaveRecords;
}
public static void saveLeaveRecord(LeaveRecord record) {
try (Connection conn = DriverManager.getConnection(URL, USER, PASSWORD)) {
String sql = "INSERT INTO leave_records (student_id, student_name, leave_date, reason) VALUES (?, ?, ?, ?)";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, record.getStudentId());
pstmt.setString(2, record.getStudentName());
pstmt.setDate(3, new java.sql.Date(record.getLeaveDate().getTime()));
pstmt.setString(4, record.getReason());
pstmt.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
```
阅读全文
相关推荐
















