java - jsp 页面和 Servlet 之间通信的最佳方式是什么?

标签 java jsp servlets

我正在 Eclipse 中创建一个动态 Web 项目,但无法弄清楚如何将用户的请求(通过单击按钮)发送到 servlet,该 servlet 将执行某些操作(包括数据库查找),然后填充网页与格式化的结果。我已经创建了所有数据库查找函数。做这个的最好方式是什么?我实际上只需要一个字符串传递回 servlet,这将是我希望作为 ArrayList 返回的书籍“类别”。一些消息来源似乎表明 jsp 页面甚至不应该用于将信息中继到 servlet,所以我很困惑。

最佳答案

有几种方法可以做到这一点:

  1. 表单提交

    <form action="/myServlet" method="post">
        <input type="text" name="category" id="category"/>
        <input type="submit" value="submit" id="btnSubmit"/>
    

    然后在您的 servlet 代码中 (doPost()):

    String category = request.getParameter("category");
    
  2. 使用ajax(jQuery ajax 更简洁)

    $.ajax({
        method: "POST",
        url: "/myServlet",
        data: { category: $("#category").val()} //post category field
    }).done(function( msg ) {
        alert( msg ); //alert html returned from servlet 
    });
    
  3. JQuery Ajax(获取)

    $("btnSubmit").click(function(event){
        event.preventDefault();
        $.get("/myServlet", function(data, status){
            alert("Data: " + data + "\nStatus: " + status);
        }); 
    });
    

关于java - jsp 页面和 Servlet 之间通信的最佳方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29933382/

相关文章:

java - 从列表创建数组并初始化它 - Java

java - Android RunTimeException 无法实例化类

java - eclipse下是否可以配置tomcat使用外部目录

java - Servlet 有构造函数,为什么我们需要在 Servlet 中使用 Init() 方法?

java - MySql Java 分离抛出的相同错误

java - 从servlet获取图像到JSP

java - HttpMessageNotReadableException : Could not read document: Stream closed;

java - Spring MVC : How to get the right URL for controllers?

java if 语句不一致

java - 如何从jsp文件中调用java文件中带参数的函数?