リソースバンドルのプロパティファイルには、次のテキストがあります
system.invalidID = This accountID $ is not valid for current session.
JSP および Java クラスの上記のリソース テキストから $(これは実行時の実際の ID になります) を動的に置き換えたいと考えています。
JSP と Java でこれを行うことはできますか?
リソースバンドルのプロパティファイルには、次のテキストがあります
system.invalidID = This accountID $ is not valid for current session.
JSP および Java クラスの上記のリソース テキストから $(これは実行時の実際の ID になります) を動的に置き換えたいと考えています。
JSP と Java でこれを行うことはできますか?
JSTL<fmt:message>
と<fmt:param>
タグを一緒に使用して、メッセージをパラメーター化できます。
以下の属性は、Web アプリケーションのクラスパスでアクセスできる必要があるプロパティ ファイルbasename
のベース名を参照します。ResourceBundle
すべてをまとめると、次のようになります。
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<fmt:setBundle basename="com.y.app.Messages" var="bundle" />
<fmt:message bundle="${bundle}" key="system.invalidID">
<fmt:param value="${attemptedID}" />
</fmt:message>
あなたは試すことができますJSTL Core <fmt:bundle> Tag
http://www.tutorialspoint.com/jsp/jstl_format_bundle_tag.htmを参照してください。
実際には、次のようなメソッドを使用して単純なクラスを作成できます
public class ResourceBundleHelper{
public String resolveMessage(String key){
//code
}
}
次に、このクラスのインスタンスを作成しServletContext
、それをjsp elに入れたり、から入れたりします
${resourceBundleHelper.resolveMessage(YOUR_VARIABLE)}