用jsp写一个带数据库的学生管理系统
时间: 2023-10-06 15:10:57 浏览: 57
好的,下面是一个简单的带数据库的学生管理系统的JSP项目示例。
1. 建立数据库表格
首先,您需要建立一个数据库表格来存储学生信息。以下是一个示例表格:
```
CREATE TABLE `student` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
`age` int(11) NOT NULL,
`gender` varchar(10) NOT NULL,
`major` varchar(50) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
```
2. 连接数据库
在JSP中,您可以使用JDBC API来连接数据库。以下是一个示例连接MySQL数据库的代码:
```
<%
String driver = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://localhost:3306/mydb";
String username = "root";
String password = "123456";
try {
Class.forName(driver);
Connection conn = DriverManager.getConnection(url, username, password);
// 在此处执行SQL语句
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
%>
```
3. 增加学生信息
您可以使用JSP表单来添加学生信息。以下是一个示例代码:
```
<form action="addStudent.jsp" method="post">
<label>姓名:</label><input type="text" name="name"><br>
<label>年龄:</label><input type="text" name="age"><br>
<label>性别:</label><input type="text" name="gender"><br>
<label>专业:</label><input type="text" name="major"><br>
<input type="submit" value="添加">
</form>
```
在addStudent.jsp页面中,您可以获取表单数据并将其插入到数据库中。以下是一个示例代码:
```
<%
String name = request.getParameter("name");
int age = Integer.parseInt(request.getParameter("age"));
String gender = request.getParameter("gender");
String major = request.getParameter("major");
String sql = "INSERT INTO student(name, age, gender, major) VALUES('" + name + "', " + age + ", '" + gender + "', '" + major + "')";
Statement stmt = conn.createStatement();
int result = stmt.executeUpdate(sql);
if (result > 0) {
out.println("添加成功!");
} else {
out.println("添加失败!");
}
stmt.close();
%>
```
4. 查询学生信息
您可以使用JSP页面来显示学生信息。以下是一个示例代码:
```
<%
String sql = "SELECT * FROM student";
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
out.println("ID:" + rs.getInt("id") + "<br>");
out.println("姓名:" + rs.getString("name") + "<br>");
out.println("年龄:" + rs.getInt("age") + "<br>");
out.println("性别:" + rs.getString("gender") + "<br>");
out.println("专业:" + rs.getString("major") + "<br><br>");
}
rs.close();
stmt.close();
%>
```
5. 修改和删除学生信息
您可以使用JSP页面来修改和删除学生信息。以下是一个示例代码:
```
<%
String action = request.getParameter("action");
if (action != null) {
int id = Integer.parseInt(request.getParameter("id"));
if (action.equals("edit")) {
String name = request.getParameter("name");
int age = Integer.parseInt(request.getParameter("age"));
String gender = request.getParameter("gender");
String major = request.getParameter("major");
String sql = "UPDATE student SET name='" + name + "', age=" + age + ", gender='" + gender + "', major='" + major + "' WHERE id=" + id;
Statement stmt = conn.createStatement();
int result = stmt.executeUpdate(sql);
if (result > 0) {
out.println("修改成功!");
} else {
out.println("修改失败!");
}
stmt.close();
} else if (action.equals("delete")) {
String sql = "DELETE FROM student WHERE id=" + id;
Statement stmt = conn.createStatement();
int result = stmt.executeUpdate(sql);
if (result > 0) {
out.println("删除成功!");
} else {
out.println("删除失败!");
}
stmt.close();
}
}
%>
```
以上是一个简单的带数据库的学生管理系统的JSP项目示例。请注意,这只是一个示例,您可以根据您的需求进行修改和扩展。