Java 如何先运行servlet,然后对其进行jsp调用以获取json数据?

Java 如何先运行servlet,然后对其进行jsp调用以获取json数据?,java,json,jsp,servlets,Java,Json,Jsp,Servlets,我正在使用Eclipse动态web项目。 我有4个文件 servlet-> Loginservlet.java [has doGet()方法调用ConnectionUtil.java并从中获取json数据] ConnectionUtil.java [检查到db的连接后,调用DataDao.java并从中获取json数据,然后从数据库中获取该数据] DataDao.java [从数据库中获取数据,并以json格式返回 //List<Map<String,Object&

我正在使用Eclipse动态web项目。 我有4个文件

servlet-> Loginservlet.java 
[has doGet()方法调用ConnectionUtil.java并从中获取json数据]

ConnectionUtil.java 
[检查到db的连接后,调用DataDao.java并从中获取json数据,然后从数据库中获取该数据]

DataDao.java 
[从数据库中获取数据,并以json格式返回

//List<Map<String,Object>> 
[index.jsp需要来自名为Loginservlet.java的servlet的json数据。]

因此,如果我需要LoginServlet.java中的json数据,我必须

  • 首先运行servlet
  • 然后我的jsp必须调用它来获取数据

  • 我的问题是如何实现它?

    您正在获得JSP所需的数据。下面是示例流程1:

    • 用户访问yourapp.com/login
    • Loginservlet被映射到/login,因此它被调用
    • Loginservlet使用其他类来获取数据,并使用
      request.setAttribute(“data”,data)将其放入请求中
    • Loginservlet然后转发到index.jsp
    • jsp利用数据,例如,通过在
      标记之间写出数据,使JavaScript可以使用数据
    如果您已经考虑使用
    Loginservlet
    来完成用户的实际登录,那么您可能需要一个单独的servlet来获取数据-可能称为
    WelcomeServlet
    映射到“/”,因此在用户点击应用程序时默认加载

    当然还有另一种方法,例如流程2:

    • 用户访问index.jsp
    • jsp包含对servlet进行AJAX调用的Javascript
    • servlet获取数据并将其直接写入响应
    • jsp上的处理程序接收数据并对其进行处理
    index.jsp