Java类能否将字符串传递到JSP页面?

4
我需要创建一个字符串(SQL语句),该字符串可能会传递给2个或更多的jsp文件。推荐的方法是“通过Java scriptlet访问ServletContext属性或通过EL访问applicationScope”。但是,是否有一种简单的方法将字符串从Java类传递到jsp?类似下面的方式吗?
public class SharedSQL extends HttpServlet{

public String example() {

    String sqlstmt = "select ABC from ABC";

    return sqlstmt;
}

}

JSP

<%
     SharedSQL sqlStatement = new SharedSQL() ;
     String sqlstmt = sqlStatement.example();
     db4.query ( sqlstmt ) ;
%>

我对servlet/JSP这些内容还很陌生,需要一些提示和技巧。


首先,浏览我们的 jstljsp 维基页面。不要使用脚本块。 - Sotirios Delimanolis
过去我是多么的愚蠢,现在我开始使用JSTL在JSP中编写项目。非常感激... - 薛源少
2个回答

2
在Servlet中,可以像下面这样操作:
public class SharedSQL extends HttpServlet{

    doGet(request ,response){
         request.setAttribute("sqlstmt", "select ABC from ABC");
    }
}

在JSP中,可以像下面这样操作:
<%
     String sqlstmt = request.getAttribute("sqlstmt") 
     db4.query ( sqlstmt ) ;
%>

1
您也可以通过会话属性进行设置:

HttpSession session = request.getSession();
session.setAttribute("string",value) //you can set string, object in the value

然后在jsp中使用EL表达式直接访问该值。

${string} 

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接