如何调用返回 JSP 文件中列表的 Java 方法?

发布于 2025-01-13 14:00:00 字数 1147 浏览 0 评论 0原文

我已经考虑过调用 Java 方法,但我一直试图调用返回列表的 Java 方法,以便我可以在 JSP 中使用该列表。

JSP:

<%@ page import="mainPack.ShoppingService"%>
<%@ page import="java.util.List" %>

     $('#mainCheckbox').on( "change",function () {
            <%
             ShoppingService s = new ShoppingService();
            %>
            <%
            List<String> storesList = s.getStoresList();
            %>
            //unresolved variable error
            console.log(storesList.contains("Macys"));

        });

Java:

 public List<String> getStoresList() {
        return storeDao.getStoresList();
 }

我还尝试进入控制器并将其设为属性。

JSP:

 $('#mainCheckbox').on( "change",function () {
                //I get a Uncaught Reference Error: Macys Not Defined
                var jsArray = ${storesList};
    
            });

Java:

model.addAttribute("storesList", ShoppingService.getStoresList());

我不确定第二次尝试是否有效。当我打开调试器时,我看到它似乎将列表转换为:

var jsArray = [Macys, JcPenny, Kohls, Target];

I've looked into invoking a Java method but I am stuck trying to call a Java method which returns a list so that I can use that list in JSP.

JSP:

<%@ page import="mainPack.ShoppingService"%>
<%@ page import="java.util.List" %>

     $('#mainCheckbox').on( "change",function () {
            <%
             ShoppingService s = new ShoppingService();
            %>
            <%
            List<String> storesList = s.getStoresList();
            %>
            //unresolved variable error
            console.log(storesList.contains("Macys"));

        });

Java:

 public List<String> getStoresList() {
        return storeDao.getStoresList();
 }

I've also tried going into the controller and making it an attribute.

JSP:

 $('#mainCheckbox').on( "change",function () {
                //I get a Uncaught Reference Error: Macys Not Defined
                var jsArray = ${storesList};
    
            });

Java:

model.addAttribute("storesList", ShoppingService.getStoresList());

I am not sure the second attempt isn't working. When I open up debugger I see that it seems to translate the list into:

var jsArray = [Macys, JcPenny, Kohls, Target];

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

橘香 2025-01-20 14:00:00

如果我正确理解你的问题,你想返回/显示列表到 JSP 中,那么这就是我的想法 -

<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@ page import="java.util.List"%>
<html>
<%List<String> str=new ArrayList(); 
str.add(0, "testing");
str.add(1, "testing1");
str.add(2, "testing2");
%>
<tr><%=str%></tr>


</html>

If I understand your question correctly, you want to return / display list into JSP , then this is what I am thinking --

<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@ page import="java.util.List"%>
<html>
<%List<String> str=new ArrayList(); 
str.add(0, "testing");
str.add(1, "testing1");
str.add(2, "testing2");
%>
<tr><%=str%></tr>


</html>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文