如果用户名username字段为varchar(50),性别sex字段为enum("男","女","保密")在jsp和servlet如何插入数据
时间: 2023-07-19 19:24:23 浏览: 155
假设你已经建立好了一个JDBC连接并且连接到了数据库,那么在JSP和Servlet中插入数据的步骤如下:
1. 在JSP页面中,通过表单向Servlet传递数据。
```html
<form action="InsertDataServlet" method="post">
<label for="username">用户名:</label>
<input type="text" id="username" name="username"><br>
<label for="sex">性别:</label>
<select id="sex" name="sex">
<option value="男">男</option>
<option value="女">女</option>
<option value="保密">保密</option>
</select><br>
<input type="submit" value="提交">
</form>
```
2. 在Servlet中获取表单数据,构造SQL语句并插入数据。
```java
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 获取表单数据
String username = request.getParameter("username");
String sex = request.getParameter("sex");
// 构造SQL语句
String sql = "INSERT INTO user(username, sex) VALUES (?, ?)";
try {
// 获取数据库连接
Connection conn = DBUtil.getConnection();
// 创建PreparedStatement对象
PreparedStatement pstmt = conn.prepareStatement(sql);
// 设置SQL语句参数
pstmt.setString(1, username);
pstmt.setString(2, sex);
// 执行SQL语句
pstmt.executeUpdate();
// 关闭PreparedStatement对象和数据库连接
pstmt.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
```
注意事项:
- 在构造SQL语句时,千万不要将表单数据直接拼接到SQL语句中,否则容易引发SQL注入攻击,应该使用预编译语句。
- 在插入数据时,如果有必填项,则需要在代码中进行判断,确保必填项不为空。
阅读全文