2

これを行うためのカスタムタグを作成する前に、ELまたはJSTLで何かを見逃していないことを確認したいと思います。

リクエストスコープに格納されているBeanプロパティによって返されるintがあります。16進数で出力する必要があります。しかし、検索した後、JSPではELによってBeanから返されるintを出力する方法がないようです...

${someBean.someInt}

... 16進値として、そのように...

<%= String.format("0x%X", someBean.getSomeInt()) %>

...だろう。

私は正しいですか?そうでない場合、それはどのように行われますか?(私たちの部門のコーディング標準では、構文を使用してJavaをJSPに直接含めることは許可されて<% %>いません。すでに利用可能なものが見つからない場合は、タグを作成する必要があります。)

4

1 に答える 1

2

ELまたはJSTLのフォーマットタグを使用してこれを行うことはできません。カスタムタグまたはEL関数を作成するのが最良のオプションです。

フォーマットする必要があるのが1つだけの場合intは、Beanに文字列ゲッターを追加してフォーマットを行うことができます。

public String getSomeIntAsHex(){
  return String.format("0x%X", someInt);
}

その後、ELでそのゲッターを使用できます

${someBean.someIntAsHex}
于 2012-09-12T10:44:43.177 に答える