正文

strutsNotes(3)2008-04-01 20:17:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/ghlat520/33788.html

分享到:

第三章 struts的应用举例
                   在这一章里面我们要学习
                     1)struts的开发步骤
                     2)运用struts开发一个用户登录的例子,要求显示欢迎界面
                     3)运用struts开发一个拥有员工增加,删除应用程序,在增加时检查工号不能重复,在                         删除时检查职工是否存在,操作后做出友情提示
                     4)定义全局的Forward共多个Action共享

                            struts的开发步骤
                    1)进行需求分析,确定Web应用程序的功能
                    2)设计数据库
                    3)设计jsp页面(视图)
                    4)设计ActionForm
                    5)设计Action
                    6)设计业务逻辑组件(模型)
                   说明:
                     1:在上述的开发步骤中并没有看到struts-config.xml配置文件,那是因为运用                               eclipse开发工具,struts-config.xml文件会自动产生,并自动更新
                     2:一个struts一般会有多个Action,也就会有多个ActionForm.而ActionServlet由                             struts自动生成,用户无需管理
                    
              
                  
                              用户登录的例子
                      1)创建模型:
                          A:数据层:
         ===========================DbManager===================================
                             public class dbManager
                               {
                           private static Connection conn=null;
                           private static PreparedStatement ps=null;
                           static
                              {
                                   
                                Class.forName("oracle.jdbc.driver.OracleDriver");
                                   conn=DriverManager.getConnection                                                                  ("jdbc:oracle:thin:@chen:1521:ht","scott","tiger");                                 //注意要把D:\oracle\ora90\jdbc\lib下的classes12.jar复制到
                                     //应用程序的lib下面
                             }
 
                 public static void RunNoneResultSql(String sql)
                     {
          ps=conn.prepareStatement(sql);
          ps.executeUpdate();       
             }
  
               public static ResultSet RunHasResultSql(String sql)
                  {
       ps=conn.prepareStatement(sql);
       ResultSet rs=ps.executeQuery();
       return rs;        
                  }
        ===========================DbManager============================================                            
                      B:创建业务层:
       ===============================LoginJavaBean======================================
                          public static boolean CheckIsValid(String UserName,String PassWord)
                             {
                         String sql=String.format("select id from userinfo where                                           UserName='%s' and PassWord='%s'",UserName,PassWord);
                         ResultSet rs=dbManager.RunHasResultSql(sql);  
                 if (rs.next())
                   {   
                 return true;
                   }
                                return false;
                            }
 ===============================LoginJavaBean======================================

                   在Action的excute里面写上写上关键代码
                loginForm loginform=(loginForm)form;
  String uid=loginform.getUid();
  String pwd=loginform.getPwd();
  if (LoginJavaBean.CheckIsValid(uid, pwd))
  {
           request.setAttribute("uid", uid);//设置共享的uid到request里面,可以在                                                        //scuess.jsp中通过${uid}表达式语言来访问uid
   return mapping.findForward("scuess");
  }  
  return mapping.findForward("error"); 

 

                       定义全局的Forward共多个Action共享
          1)通常情况下,一个Action里面可以设置多个Forward,来决定Action处理之后要跳转的页面
          2)有时需要多个Action共享多个Forward,比如:多个业务逻辑处理错误之后都要跳转到同一个页面
            每一个业务逻辑相当于一个Action,同一个页面相当于一个共享的Forward.
          3)可以在strtus-config.xml配置文件的<global-forwards>配置节下面进行配置。如下格式:
                   <global-forwards>
                        <forward name="msg" path="/msg.jsp"></forward>
          <forward name="error" path="/error.jsp"></forward>
               </global-forwards>
               这样一个Web应用程序的所有Action都将共享msg.jsp与error.jsp页面。
  

 


                        

阅读(1988) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册