使用JSP技术,编写JSP页面,实现以下功能: (1)制作JSP文件,添加表单,用来收集用户个人信息。 (2)制作JavaBean,用来存放个人信息。 (3)添加Servlet,将收集的用户信息保存到数据库中。 (4)制作JSP文件,添加查询功能,显示用户信息。
时间: 2024-06-09 10:07:35 浏览: 130
好的,下面是具体步骤:
1. 制作JSP文件,添加表单,用来收集用户个人信息。
在JSP文件中添加如下代码,可以实现一个简单的表单:
```
<html>
<head>
<title>用户信息收集表单</title>
</head>
<body>
<form action="submit.jsp" method="post">
<label>姓名:</label><input type="text" name="name"><br>
<label>性别:</label><input type="radio" name="gender" value="male">男<input type="radio" name="gender" value="female">女<br>
<label>年龄:</label><input type="text" name="age"><br>
<label>邮箱:</label><input type="email" name="email"><br>
<input type="submit" value="提交">
</form>
</body>
</html>
```
2. 制作JavaBean,用来存放个人信息。
在src目录下创建一个JavaBean类,名为Person,代码如下:
```
public class Person {
private String name;
private String gender;
private int age;
private String email;
public Person() {}
public Person(String name, String gender, int age, String email) {
this.name = name;
this.gender = gender;
this.age = age;
this.email = email;
}
// getter和setter方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
```
3. 添加Servlet,将收集的用户信息保存到数据库中。
在Java web项目中创建一个Servlet,名为SubmitServlet,代码如下:
```
@WebServlet("/submit")
public class SubmitServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String name = request.getParameter("name");
String gender = request.getParameter("gender");
int age = Integer.parseInt(request.getParameter("age"));
String email = request.getParameter("email");
// 创建一个Person对象
Person person = new Person(name, gender, age, email);
// 将Person对象保存到数据库中
Connection conn = null;
PreparedStatement stmt = null;
try {
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 获取数据库连接
String url = "jdbc:mysql://localhost:3306/test?useSSL=false";
String user = "root";
String password = "admin";
conn = DriverManager.getConnection(url, user, password);
// 编写SQL语句
String sql = "insert into person (name, gender, age, email) values (?, ?, ?, ?)";
// 创建PreparedStatement对象
stmt = conn.prepareStatement(sql);
// 填充占位符
stmt.setString(1, person.getName());
stmt.setString(2, person.getGender());
stmt.setInt(3, person.getAge());
stmt.setString(4, person.getEmail());
// 执行SQL语句
stmt.executeUpdate();
// 跳转到查询页面
response.sendRedirect("query.jsp");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 关闭连接
try {
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
```
4. 制作JSP文件,添加查询功能,显示用户信息。
在JSP文件中添加如下代码,可以实现查询功能:
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.util.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="com.example.Person" %>
<%
List<Person> personList = new ArrayList<Person>();
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try {
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 获取数据库连接
String url = "jdbc:mysql://localhost:3306/test?useSSL=false";
String user = "root";
String password = "admin";
conn = DriverManager.getConnection(url, user, password);
// 编写SQL语句
String sql = "select * from person";
// 创建Statement对象
stmt = conn.createStatement();
// 执行SQL语句
rs = stmt.executeQuery(sql);
// 遍历结果集
while (rs.next()) {
String name = rs.getString("name");
String gender = rs.getString("gender");
int age = rs.getInt("age");
String email = rs.getString("email");
// 创建一个Person对象,并添加到List中
Person person = new Person(name, gender, age, email);
personList.add(person);
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 关闭连接
try {
if (rs != null) {
rs.close();
}
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
%>
<html>
<head>
<title>查询用户信息</title>
</head>
<body>
<table border="1">
<tr>
<th>姓名</th>
<th>性别</th>
<th>年龄</th>
<th>邮箱</th>
</tr>
<% for (Person person : personList) { %>
<tr>
<td><%= person.getName() %></td>
<td><%= person.getGender() %></td>
<td><%= person.getAge() %></td>
<td><%= person.getEmail() %></td>
</tr>
<% } %>
</table>
</body>
</html>
```
以上就是使用JSP技术,实现收集用户信息、存储到数据库、查询用户信息的完整流程。
阅读全文