web-dev-qa-db-ja.com

JSPで関数を宣言しますか?

私はPHP world、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;
62
Nathan H

それを<%で囲む必要があります! %>は次のとおりです。

<%!

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) %>
106
karim79