写一段代码,实现在jsp页面提交个人信息和账号密码后,将表单数据中的id和姓名和账号和密码存储到数据库stu中的数据表stu_account中
时间: 2024-03-19 09:42:05 浏览: 78
好的,下面是一个简单的实现代码,供您参考:
1. 在 JSP 页面中添加表单,用于提交用户信息和账号密码。
```html
<form action="submit" method="post">
<label for="name">姓名:</label>
<input type="text" id="name" name="name"><br>
<label for="account">账号:</label>
<input type="text" id="account" name="account"><br>
<label for="password">密码:</label>
<input type="password" id="password" name="password"><br>
<input type="submit" value="提交">
</form>
```
2. 创建一个名为 `SubmitServlet` 的 Servlet 类,用于处理表单提交请求。在 `doPost()` 方法中获取表单数据,并将数据存储到数据库中。
```java
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class SubmitServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
private static final String DB_URL = "jdbc:mysql://localhost:3306/stu";
private static final String DB_USER = "root";
private static final String DB_PASSWORD = "123456";
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String name = request.getParameter("name");
String account = request.getParameter("account");
String password = request.getParameter("password");
try {
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 建立数据库连接
Connection conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
// 执行 SQL 语句
String sql = "INSERT INTO stu_account (id, name, account, password) VALUES (?, ?, ?, ?)";
PreparedStatement stmt = conn.prepareStatement(sql);
stmt.setString(1, null); // id 自增长,不需要设置
stmt.setString(2, name);
stmt.setString(3, account);
stmt.setString(4, password);
stmt.executeUpdate();
// 关闭数据库连接
stmt.close();
conn.close();
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
// 返回结果页面
response.sendRedirect("result.jsp");
}
}
```
在上述代码中,使用 JDBC 连接数据库,并执行 SQL 语句将表单数据存储到数据库中。最后,使用 `response.sendRedirect()` 方法跳转到结果页面。
3. 在 web.xml 中配置 Servlet 类和 Servlet 映射路径。
```xml
<servlet>
<servlet-name>SubmitServlet</servlet-name>
<servlet-class>com.example.servlet.SubmitServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>SubmitServlet</servlet-name>
<url-pattern>/submit</url-pattern>
</servlet-mapping>
```
通过上述代码,访问路径为 `/submit` 的请求会被映射到名为 `SubmitServlet` 的 Servlet 上,从而执行该 Servlet 类中的 `doPost()` 方法,将表单数据存储到数据库中。
阅读全文