アプリケーションをサーブレットから Struts 2 に書き直しました。
以前は、パラメーター値を取得するために次のように書くことができました。
request.getParameter("name");
今私はすべきです:
public class MyAction implements ParameterAware {
private Map<String, String[]> parameters;
@Override
public void setParameters(Map<String, String[]> parameters) {
this.parameters = parameters;
}
public String getParameterValue(String name){
return parameters.get(name)[0];
}
// get this parameter
サーブレットを使用すると、はるかに簡単になりました。
コードを DRYer にするために、ActionSupport を拡張するクラス CustomActionSupport を作成し、このコードをそこに配置します。しかし、なぜ Struts は私のためにそれをしないのでしょうか? どうすれば生活が楽になりますか?
ドキュメントが推奨される方法であると述べているので、私は ParameterAware を使用します。