2

ご挨拶、

私が開発しているWebアプリケーションでは、次のようなことをしたい:

I Have a Bean like

class Gene{
String geneid;
String sequence;
..
}

// EL expression (sometimes should be simple as "${geneid}" without URL pattern)
String exp="<a> href='http://www.ncbi.nlm.nih.gov/pubmed?term=${geneid}' />";
String outputString=someframeworkobject.somemethod(exp,aGeneInstance);

したがって、outputString は次のように補間されます。http://www.ncbi.nlm.nih.gov/pubmed?term=gene19191X

これに使用できる軽量の EL フレームワークはありますか?

4

2 に答える 2

3

多分MVELはあなたのために働くでしょう。

のようなテンプレートで

 Hello, @{person.getSex() == 'F' ? 'Ms.' : 'Mr.'} @{person.name}

できるよ

 context.put("person", personBean);
 String output = (String) TemplateRuntime.eval(template, context);

このチュートリアルをチェックしてください(私がこれについて読んだところで、私はMVELの経験がありません)。

于 2010-01-20T04:03:24.037 に答える
2

必要なのはコア Java ライブラリ クラスMessageFormatだけのようです。使い方はとても簡単で、文字列内のテンプレートを置き換えることができます。

String outputString = MessageFormat.format("<a> href='http://www.ncbi.nlm.nih.gov/pubmed?term={0}' />", "gene19191X");

MessageFormat のインスタンスを作成し、それを異なる値で再利用することもできます。

あなたが試すことができる他のオプションは次のとおりです。

  • Apache Commons EL - Web アプリケーションでの式用に構築されています。
  • Groovy GStrings - 「スクリプト」を評価するために時々これを使用します。これには、より複雑なロジックを使用できるという利点があります。
于 2010-01-20T03:48:33.643 に答える