知识大全 Struts整合spring方法(三)

Posted

篇首语:人永远是要学习的。死的时候,才是毕业的时候。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Struts整合spring方法(三)相关的知识,希望对你有一定的参考价值。

Struts整合spring方法(三)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  Spring提供了DelegatingActionProxy类 用来代替struts中的动作 负责在Spring配置文档中查找对应的动作映射 从而把Struts的Action与Spring分离 并把struts的动作置于Spring框架的控制下     新建一个登陆页面loginDelegatingActionProxy jsp 示例代码如下

       <%@page contentType= text/;charset=GBK isELIgnored= false %>    <>        <head>           <title>实现用户登录的Struts实例</title>        </head>        <body>           <font size= > $msg<br></font>           <form name= form action= /myLogin /loginDelegatingActionProxy do                method= post >               用户名                <input type= text name= username value= $user username />               <br>               密码                <input type= password name= password value= $user password />               <br>               <input type= submit name= method value= 提交 />           </form>        </body>    </>

   创建一个存储登陆用户信息的类 User java该类继承于ActionForm 代码如下

        package zhaosoft bean;

  import apache struts action ActionForm;

  publicclass User extends ActionForm

  private String username=null;        private String password=null;        public String getUsername()            returnusername;                publicvoid setUsername(String username)            this username = username;                public String getPassword()            returnpassword;                publicvoid setPassword(String password)            this password = password;           

    在 Com zhaosoft action中新建一个控制器 LoginDelegatingActionProxy java 该类继承于Struts的Action 代码如下

       package zhaosoft action;

  import javax servlet HttpServletRequest;    import javax servlet HttpServletResponse;    import apache struts action Action;    import apache struts action ActionForm;    import apache struts action ActionForward;    import apache struts action ActionMapping;

  import zhaosoft bean User;    import zhaosoft domain Login;

  publicclass LoginDelegatingActionProxy extends Action

  private Login login;

  public Login getLogin()            returnlogin;       

  publicvoid setLogin(Login login)            this login = login;       

  public ActionForward execute(ActionMapping mapping ActionForm form                HttpServletRequest request HttpServletResponse response)               throws Exception            String forwardJsp = login ;           getLogin() login((User) form);           request setAttribute( msg login getMsg());           request setAttribute( user (User) form);           return mapping findForward( login );       

  

   新建包 zhaosoft domain和 zhaosoft domain impl在包 zhaosoft domain中新建一个接口 Login java用来定义登陆的逻辑处理 示例代码如下

        package zhaosoft domain;

  import zhaosoft bean User;

  publicinterface Login     publicabstractvoid login(User user);    publicabstract String getMsg();   

    . 在包 zhaosoft domain impl中建立LoginImpl java用来实现登陆的逻辑处理:

    package zhaosoft domain impl;

  import zhaosoft bean User;    import zhaosoft domain Login;

  publicclass LoginImpl implements Login

  private String msg;        public String getMsg()            returnthis msg;       

  publicvoid login(User user)            String username = user getUsername();           String password = user getPassword();           if (username == null && password == null)                msg = 请输入用户名和密码 ;           elseif ( equals(username) || equals(password))                msg = 请输入用户名和密码 ;           elseif ( zhaosoft equals(username) && zhaosoft equals(password))                msg = 登陆成功 ;           elseif (! zhaosoft equals(username))                msg = 用户名填写错误 ;                  

  

   修改struts的配置文件struts config xml 注册ContextLoaderPlugIn插件 实例代码如下

     <?xml version= encoding= UTF ?>    <!DOCTYPE struts config PUBLIC //Apache Sofare Foundation//DTD Struts Configuration //EN config_ _ dtd >    <struts config>        <! 定义formbean >        <form beans>           <form bean name= helloWorld                type= zhaosoft bean HelloWorld />           <form bean name= user type= zhaosoft bean User ></form bean>        </form beans>        <action mappings>           <action path= /loginDelegatingActionProxy                type= springframework web struts DelegatingActionProxy                name= user >               <forward name= login                   path= /jsp/loginDelegatingActionProxy jsp >               </forward>           </action>           <action path= /loginDelegatingActionProxyTemp                type= apache struts actions ForwardAction                parameter= /jsp/loginDelegatingActionProxy jsp >           </action>        </action mappings>        <plug in           className= springframework web struts ContextLoaderPlugIn >           <set property property= contextConfigLocation                value= /WEB INF/spring config xml />        </plug in>    </struts config>

   编写Spring的配置文件spring config xml 放在WEB INF目录中 代码如下

cha138/Article/program/Java/ky/201311/28945

相关参考