jsp - 在 JSP 中声明函数?

标签 jsp function

我来自 PHP 世界,在 PHP 页面中间声明函数非常简单。 我尝试在 JSP 中执行相同的操作:

public String getQuarter(int i){
String quarter;
switch(i){
    case 1: quarter = "Winter";
    break;

    case 2: quarter = "Spring";
    break;

    case 3: quarter = "Summer I";
    break;

    case 4: quarter = "Summer II";
    break;

    case 5: quarter = "Fall";
    break;

    default: quarter = "ERROR";
}

return quarter;
}

我收到以下错误:

An error occurred at line: 20 in the jsp file: /headers.jsp
Illegal modifier for the variable getQuarter; only final is permitted return;

最佳答案

您需要将其括在 <%! %> 如下:

<%!

public String getQuarter(int i){
String quarter;
switch(i){
        case 1: quarter = "Winter";
        break;

        case 2: quarter = "Spring";
        break;

        case 3: quarter = "Summer I";
        break;

        case 4: quarter = "Summer II";
        break;

        case 5: quarter = "Fall";
        break;

        default: quarter = "ERROR";
}

return quarter;
}

%>

然后您可以在脚本或表达式中调用该函数:

<%
     out.print(getQuarter(4));
%>

<%= getQuarter(17) %>

关于jsp - 在 JSP 中声明函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/826932/

相关文章:

java - 将 SiteMesh 与 RequestDispatcher 的 forward() 结合使用

javascript - 为什么 Javascript 加载到函数 "functions as parameters"之前而不是变量?

python - 访问Python函数内部定义的变量

c++ - 递归斐波那契函数(带负数)

php - 为什么会有函数create_function()?在 PHP 中

java - 在页面加载 jsp 上运行方法

java - 在jsp标签文件的java代码中使用标签属性

c - 状态功能栏-C

JSP/Servlet 表达式语言私有(private)变量访问

java.lang.ClassNotFoundException : com. mysql.jdbc.Driver(jar 文件已链接并放置在 WEB-INF/lib 中)