在jsp 页面输入内容,通过名为post表单提交给后台,获取前端输入的内容,插入到数据库中,如果插入成功,在前端显示出内容,代码怎么写
时间: 2024-03-03 22:51:24 浏览: 61
使用JSP页面进行输入输出的处理
首先,在前端jsp页面中,需要编写一个表单,用来输入内容并提交给后台,代码如下:
```
<form method="post" action="insert.jsp">
<input type="text" name="content" placeholder="请输入内容">
<input type="submit" value="提交">
</form>
```
在表单中,我们设置了一个名为"content"的文本输入框,用来输入内容。表单的提交地址为"insert.jsp",也就是将数据提交给后台的jsp页面。
然后,在后台的insert.jsp页面中,需要编写代码来获取前端输入的内容,并插入到数据库中。代码如下:
```
<%@ page import="java.sql.*" %>
<%
// 获取前端输入的内容
String content = request.getParameter("content");
// 连接数据库
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb", "root", "123456");
// 插入数据
PreparedStatement pstmt = conn.prepareStatement("INSERT INTO content(content) VALUES(?)");
pstmt.setString(1, content);
int rows = pstmt.executeUpdate();
// 关闭连接
pstmt.close();
conn.close();
// 如果插入成功,返回前端插入的内容
if (rows > 0) {
out.print(content);
}
%>
```
在代码中,我们首先通过request.getParameter("content")获取前端输入的内容,然后连接数据库,并使用PreparedStatement插入数据。如果插入成功,我们将前端插入的内容返回给前端页面。如果插入失败,则不会返回任何内容。
最后,在前端jsp页面中,我们可以通过Ajax来实现无刷新获取后台返回的内容,并将其显示在页面上。代码如下:
```
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<script>
// 监听表单提交事件
$('form').submit(function(e) {
e.preventDefault(); // 阻止表单默认提交行为
var formData = $(this).serialize(); // 序列化表单数据
$.ajax({
type: 'POST',
url: 'insert.jsp',
data: formData,
success: function(data) {
// 如果插入成功,将返回的内容显示在页面上
$('#result').text(data);
}
});
});
</script>
<div id="result"></div>
```
在代码中,我们通过监听表单的submit事件,来阻止表单默认提交行为,并使用Ajax来提交表单数据。如果后台返回的数据不为空,则将其显示在页面上。
阅读全文