gpt4 book ai didi

java - 无法在java中使用jsp变量

转载 作者:太空宇宙 更新时间:2023-11-04 14:42:01 25 4
gpt4 key购买 nike

我们想要从同一文件中的 java 类内的 jsp 访问变量。有人可以建议如何使用它吗?

下面是代码。在这里,我们在 jsp 标签中使用 data 变量,并且我们想要访问 java 的 DummyDB 类中 data 的值。

JSP 文件:

<%@page import="java.util.ArrayList"%>
<%@page import="java.util.List"%>
<%@page import="java.util.StringTokenizer"%>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<%@ page import="java.net.*" %>

<%

HttpSession Session = request.getSession(true);

String data = Session.getAttribute("data").toString();

%>

<%!

public class DummyDB {
private int totalCountries;

RequestDispatcher rd = request.getRequestDispatcher("include.jsp");
rd.include(request, response);

private List<String> countries;
public DummyDB() {
countries = new ArrayList<String>();
StringTokenizer st = new StringTokenizer(data, ",");

while(st.hasMoreTokens()) {
countries.add(st.nextToken().trim());
}
totalCountries = countries.size();
}

public List<String> getData(String query) {
String country = null;
query = query.toLowerCase();
List<String> matched = new ArrayList<String>();
for(int i=0; i<totalCountries; i++) {

country = countries.get(i).toLowerCase();
if(country.startsWith(query)) {
matched.add(countries.get(i));
}
}
return matched;
}
}
%>

最佳答案

更改此:

StringTokenizer st = new StringTokenizer(data, ",");

至:

StringTokenizer st = new StringTokenizer(request.getSession().getAttribute("data"), ",");

如果有效,您可以完全删除此行:

String data = Session.getAttribute("data").toString();

关于java - 无法在java中使用jsp变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24841801/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com