1. 请问如何按照一个text的不同值去引导到不同的页面?
比如输入“小学”进入xiaoxue.jsp,输入“中学”进入zhongxue.jsp
2. 如何制定package?这个package是不是只有在struts.xml有体现而不会再java中体现?
3. 如何跟session通信?
谢谢各位

解决方案 »

  1.   

     通过映射可以做到,就是struts-config.xml了 定制package基本上就是逻辑上能不能区分开咯,能区分开的一类就可以定在一个package中
     当然xml和java中是类似的 struts2封装了HttpSession 可以参考Struts2的Session 挺方便的 混个分。。
      

  2.   

    text里面写的是中文,然后你要转到和中文拼音一样的页面很有意思嘛,如果是你本人来输中文的话,那还好,如果是别人输的话,那就有可能响应的JSP文件就不存在喽,所以,为了大纵话,建议你写成select下拉列表会好些,这洋可以你选择一个属性就可以直接跳到响应的JSP界面
      

  3.   

    感觉Struts2过于简单,一个ActionSupport搞定了一切事情!
      

  4.   

    1.有先你要有个action,并且让这个action继承ActionSupport,虽然可以不继承,但ActionSupport封装了很多不错的方法,因此推荐继承.
    2.在action里定义属性,属性名和jsp页面的text ID保持一致,这样jsp提交到action时会自动把text的值带给action里面定义的该属性.
    3.在action里写方法private String schoolName;
    public String jumpPage() throws Exception{
      if(schoolName.equals("小学")){
         return "xiaoxue";
      }
      if(schoolName.equals("中学")){
         return "zhongxue";
      }
      return null;
    }4.在struts.xml中配置action,当然你可以自己建个struts-xuexiao.xml自定义的配置文件,但必须遵循
    struts2的dtd规则,然后在struts.xml中引用自己建的xml.
    在xml里首先要定义package(这里的package只是一个标识的作用),package要继承struts2内部定义的package(struts-default).<package name="xuexiao" extends="struts-extend">
       <action name="xuexiaoAction" class="com.test.xuexiao.XueXiaoAction">
            <result name="xiaoxue">/xiaoxue.jsp</result>
            <result name="zhongxue">/zhongxue.jsp</resutl>
       </action>
    </package>其中<result></result>表示结果码,action里的方法指定跳往哪个页面就是return 一个字符串,
    程序会根据return的字符串去培植文件中找到<result></result>中名字匹配的结果.
      

  5.   

     补充以下,还要在
    web.xml里添加struts2的Filter<filter>
     <filter-name>struts2</filter-name>
     <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
    </filter>
    <filter-mapping>
     <filter-name>struts2</filter-name>
     <url-pattern>/*</url-pattern>
    </filter-mapping>
      

  6.   

    我也觉得下拉框比较好...设置为"小学"并且设置value为xiaoxue然后后台直接str.equals("xiaoxue")这样还不容易出错,然后根据equals条件符合的输出相应的字符串并在xml文件中加上这些reutrn结果如4#的xml code
      

  7.   

    private String schoolName;
    public String jumpPage() throws Exception{
      if(schoolName.equals("小学")){
         return "xiaoxue";
      }
      if(schoolName.equals("中学")){
         return "zhongxue";
      }
      return null;
    }