Angular 将数据从servlet javaEE发送到角度组件

Angular 将数据从servlet javaEE发送到角度组件,angular,web,servlets,jakarta-ee,Angular,Web,Servlets,Jakarta Ee,我是javaEE的初学者,我在前端使用angular,在后端使用javaEE。我想将数据从servlet发送到angular组件,我想知道是否可能在servlet中包含什么指令,在这个示例中,我想将用户列表(用户)发送到angular组件进行处理,这是我的servlet代码。 ps1:我在angular中使用模块HttpClient。 ps2:我不使用Spring框架 Test.java package com.coors.servlets; import java.io.IOException

我是javaEE的初学者,我在前端使用angular,在后端使用javaEE。我想将数据从servlet发送到angular组件,我想知道是否可能在servlet中包含什么指令,在这个示例中,我想将用户列表(用户)发送到angular组件进行处理,这是我的servlet代码。 ps1:我在angular中使用模块HttpClient。 ps2:我不使用Spring框架

Test.java

package com.coors.servlets;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.octest.beans.Utilisateur;
import com.octest.dao.DaoFactory;
import com.octest.dao.UtilisateurDao;
import com.octest.dao.UtilisateurDaoImpl;

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/test")
public class Test extends HttpServlet {
private static final long serialVersionUID = 1L;
private UtilisateurDao utilisateurDao;
private DaoFactory daoFactory; 

public Test() {
    super();
}

@Override
public void init() throws ServletException {
    daoFactory=DaoFactory.getInstance();
    utilisateurDao=daoFactory.getUtilisateurDao();
}

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    this.utilisateurDao.lister();//I  get the list of users

    //here what instruction ?????????????????????????????????????????
}

public void doPost( HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException {
}

}

假设我调用这个URL,其中test是来自servlet的urlPattern。因此,当我在浏览器中发送此URL时,会触发doGet方法。在doGet中,我可以这样做:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    List<String> myList = new ArrayList<>();
    myList.add("User 1");
    myList.add("User 2");
    request.setAttribute("users", myList);
    request.getRequestDispatcher("second.jsp").forward(request, response);
}
angular.jsp页面中的URL将为:

http://localhost:8080/test/angular.jsp?users=User+1&users=User+2

现在是Angular从URL获取值的时候了。

我同意你的观点,但我在前端使用Angular而不是jsp页面,我的问题是如何将数据从servlet(响应)发送到Angular组件?我用Angular迷你应用程序更新了答案,也使用了响应。现在有两种方法可以获取angular应用程序所在页面中的数据。
    String urlUsers= "";
    for(String u : angularList) {
        urlUsers +=                      "users="+URLEncoder.encode(u,StandardCharsets.UTF_8.name())+"&";
    }
    urlUsers = urlUsers.substring(0,urlUsers.length()-1);

    response.sendRedirect("angular.jsp?"+urlUsers);
http://localhost:8080/test/angular.jsp?users=User+1&users=User+2