sturust2框架中,在action中设了一个对象,并且set了一下,在给set赋值后,在页面可以直接调用这个set属性,而不用保存到request中,请问这样有什么好的地方和不好的地方

解决方案 »

  1.   

      S2 是属性驱动的
        通过set和get传值就好比是全局的变量,而用request传到前台就好比是局部变量
        看你自己的需求来进行不同的选择。
      

  2.   

    省去了一堆request.getPraramter()...代码 ,你觉得不好吗? 效率不高吗?
      

  3.   

    与Struts1相比,Struts2省去了FormBean,靠param拦截器填充属性,页面上struts2标签采用OGNL表达式去访问OGNL Context/ValueStack中的值,比EL好的地方不是三言两语能说明白的.!
      

  4.   

    你不觉的省了很多代码吗 不过你要明白中间到底做了什么 和struts1 比起来 还是好用很多
      

  5.   

    这是个简单的 Struts2 Action实现,很好用的,相对于1.x来说大大减少了代码行数,而且调用起来更容易。public class AnnountAction extends ActionSupport implements ModelDriven<TBusiAnnounce>,ServletRequestAware,SessionAware{ private TBusiAnnounce annount=new TBusiAnnounce();
    protected HttpServletRequest request;
    protected Map<String, Object> session;

    public void setServletRequest(HttpServletRequest request) {
    this.request=request;
    }

    public void setSession(Map<String, Object> session) {
    this.session=session;
    }

    public TBusiAnnounce getModel() {
    return annount;
    } ApplicationContext ctx=AppContext.getInstance().getAppContext();
    PaginateInterface pageM = (PaginateInterface) ctx.getBean("pageInate");
    QueryManage quM = (QueryManage)ctx.getBean("queryManage");
    public synchronized String addAnnount() throws Exception{
    return "AnnountHandle";

    }

    public String queryAnnount() throws Exception{
    return "AnnM";
    }

    public String viewAnnount() {
    // 查询单个来电信息
    return "ViewAnnount";
    }

    public String editAnnount(){
    return "EditAnnount"; }

    public String delAnnount(){
    return "AnnountHandle";
    } public String isTopAnnount(){
    return "AnnountHandle";
    }
    }
      

  6.   

    是比Struts1好很多,但是我面试时,面试官问我,Struts2传值有什么缺点