在java中使用ajax的评论表单示例

在这个例子中,我们正在创建一个表单来发表评论。表单数据保存在数据库中,所有已发布评论的列表显示在评论表单下方。
在Java中使用AJAX创建评论表单示例的步骤【在java中使用ajax的评论表单示例】你需要执行以下步骤:

  1. 在数据库中创建表
  2. 加载org.json.jar文件
  3. 创建评论表格
  4. 创建服务器端页面以保存表单数据并打印所有已发布的评论
在数据库中创建表在此示例中,我们使用的是oracle 10g数据库。表结构如下:
“ usercomment”表的id字段自动增加。
加载org.json.jar文件下载此示例,我们已将org.json.jar文件包含在WEB-INF / lib目录中。
创建评论表格在此页面中,我们创建了一个获取用户输入的表单。当用户单击“发表评论”按钮时,将调用postComment()函数。我们已经在此函数内编写了所有ajax代码。
< !DOCTYPE html> < html> < head> < script> var request; function postComment(){ var comment=document.commentform.comment.value; var email=document.commentform.email.value; var url="index.jsp?comment="+comment+"& email="+email; if(window.XMLHttpRequest){ request=new XMLHttpRequest(); } else if(window.ActiveXObject){ request=new ActiveXObject("Microsoft.XMLHTTP"); }try{ request.onreadystatechange=function(){ if(request.readyState==4){ var val=request.responseText; document.getElementById('mylocation').innerHTML=val; } }//end of function request.open("GET", url, true); request.send(); }catch(e){alert("Unable to connect to server"); } } < /script> < /head> < body> < h1>Comment Form< /h1> < form name="commentform"> Enter Comment:< br/> < textarea name="comment" style="width:300px; height:100px" required> < /textarea>< br/> Enter Email:< br/> < input type="text" name="email" required/>< br/>< br/>< input type="button" value="http://www.srcmini.com/Post Comment" onclick="postComment()"> < /form>< span id="mylocation">< /span> < /body> < /html>

创建服务器端页面以处理请求在此jsp页面中,我们正在编写数据库代码以保存评论并打印所有评论。
< !DOCTYPE html> < html> < head> < style> div.box{margin:2px; border:1px solid pink; padding:10px; background-color:#e3e3e3} < /style> < /head> < body>< %@ page import="java.sql.*" %> < % String comment=request.getParameter("comment"); String email=request.getParameter("email"); if(comment==null||email==null||comment.trim().equals("")||email.trim().equals("")){ out.print("< p>Please write comment< /p>"); }else{try{ Class.forName("oracle.jdbc.driver.OracleDriver"); Connection con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe", "system", "oracle"); PreparedStatement ps=con.prepareStatement("insert into usercomment(comment1, email) values(?, ?)"); ps.setString(1, comment); ps.setString(2, email); int i=ps.executeUpdate(); PreparedStatement ps2=con.prepareStatement("select * from usercomment order by id desc"); ResultSet rs=ps2.executeQuery(); out.print("< hr/>< h2>Comments:< /h2>"); while(rs.next()){ out.print("< div class='box'>"); out.print("< p>"+rs.getString(2)+"< /p>"); out.print("< p>< strong>By: "+rs.getString(3)+"< /strong>< /p>"); out.print("< /div>"); }con.close(); }catch(Exception e){out.print(e); }}//end of else %> < /body> < /html>

输出量请参阅评论表。
现在,写评论和电子邮件ID,然后单击“发布评论”按钮。发表评论的列表将显示在评论表格下方。

    推荐阅读