1
양식을 제출할 때 게시물을 데이터베이스에 저장하고 양식 아래에 표시해야하는 포럼을 만들려고합니다. 데이터베이스에 저장되고 있지만 페이지를 새로 고침 한 후에 만 나타납니다. 우리가 양식을 제출할 때 나타나는 몇 가지 방법이 있습니까?다시로드하지 않고도 JSP 페이지에서 응답을 얻으려면 어떻게해야합니까?
<%@ page import="java.sql.*"%>
<%@page import="org.json.*"%>
<%
System.out.println("Start");
String value = request.getParameter("jsonData");
JSONObject newObj = new JSONObject();
try {
newObj = new JSONObject(request.getParameter("jsonData"));
} catch (JSONException e) {
e.printStackTrace();
}
String title = "";
String tag = "";
String postData = "";
try {
title = newObj.getJSONObject("mydata").getString("title");
tag = newObj.getJSONObject("mydata").getString("tag");
postData = newObj.getJSONObject("mydata").getString("postData");
} catch (JSONException e) {
e.printStackTrace();
}
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql?useSSL=true", "root", "1111");
//System.out.println(con);
PreparedStatement ps = con.prepareStatement("insert into forumdb.userpost(title,post,tag) values(?,?,?)");
ps.setString(1, title);
ps.setString(2, postData);
ps.setString(3, tag);
ps.executeUpdate();
con.close();
} catch (Exception e) {
}
System.out.println("End");
response.setContentType("text/html");
response.getWriter().write("success");
%>
var request;
function postArticle() {
var title=document.postform.title.value;
var postDescription = CKEDITOR.instances.postDescription.getData();
var tag=document.postform.tag.value;
var myData = {"mydata": {"title": title, "tag": tag, "postData":postDescription}};
$.ajax({
type: "POST",
url: "/forum1/index.jsp",
data: {jsonData: JSON.stringify(myData)},
dataType: "json",
success: function(){
if(success==false)
{ location.reload(); }
}
});
}
아약스를 사용할 수 있습니다. –
http://stackoverflow.com/questions/9280345/updating-contents-of-a-jsp-page-without-refreshing 시도해보십시오. 동일한 개념입니다. –