細心!用心!耐心!

          吾非文人,乃市井一俗人也,讀百卷書,跨江河千里,故申城一游; 一兩滴辛酸,三四年學業,五六點粗墨,七八筆買賣,九十道人情。

          BlogJava 聯系 聚合 管理
            1 Posts :: 196 Stories :: 10 Comments :: 0 Trackbacks
          上一篇我主要介紹dwr的概況。這一篇我用dwr做了個可以不刷新頁面就更新的表格。
          screen.jpg
          運行環境:
          windows xp pro sp2
          j2sdk1.2.4_03
          weblogic8.1
          struts1.2.4
          開發工具eclipse3.0
          其實dwr和struts沒有什么關系,只不過最近我們項目組在用struts作東西。我就順便用把我的程序建立在Struts上。
          主要文件。
          dwr.jar--dwr的類庫包
          struts的類庫包,具體我不說了,這東西誰都知道。
          jdts0.9.jar--數據庫SQLServer的驅動程序包。
          以上jar包放在WebContent\WEB-INF\lib下
          web.xml--誰都知道這東西干嘛用的吧。
          struts-config.xml --這個也不說了。
          dwr.xml -- dwr的配置文件
          weblogic.xml -- weblogic模塊配置文件。
          還有一個struts的tld就不說了
          以上文件放在WebContent\WEB-INF下面。
          login.jsp -- 登陸界面,這里我也用到了dwr
          showtable.jsp --登陸成功會轉到這個頁面,一個ajax表格。
          showtable.js -- showtable.jsp中用到的javascript
          main.css -- 不說了
          還有 *.gif界面要到的圖片
          以上文件放在WebContent下
          剩下的就是java類了。
          LoginAction.java --Struts的Action,負責登陸
          TableAction.java --Struts的Action,負責表格內容初始化
          UserLogic.java --負責驗證用戶
          TableRowConverter.java -- 繼承于dwr的BeanConverter,負責將一個對象轉成javascript能用的東西。
          LoginForm.java --Struts的Form,負責登陸信息
          TableModelBean.java --TableModel一部分給struts用一部分給dwr用。
          TableRowBean.java 用戶存放行信息的Bean。
          ModelOneDAO.java --隨便取的名字,有點惡(三聲)。負責從數據庫操作的。

          這個例子還需要一個數據庫,我用的是SQLServer。
          下面是建表的SQL語句。輸入數據的SQL就不貼了太長了。我會弄個源碼下載的。
          /*==============================================================*/
          /* DBMS name:      Microsoft SQL Server 2000                    */
          /* Created on:     2005-8-1 13:21:33                            */
          /*==============================================================*/


          if exists (select 1
                      
          from  sysobjects
                     
          where  id = object_id('AJAX_MODEL_ONE')
                      
          and   type = 'U')
             
          drop table AJAX_MODEL_ONE
          go


          /*==============================================================*/
          /* Table: AJAX_MODEL_ONE                                        */
          /*==============================================================*/
          create table AJAX_MODEL_ONE (
             col1                 
          int                  not null,
             col2                 
          int                  not null,
             col3                 
          int                  not null,
             
          constraint PK_AJAX_MODEL_ONE primary key  (col1)
          )
          go
          接下來是寫業務邏輯
          Login.java
          /*
           * Created on 2005-7-29
           *
           * TODO To change the template for this generated file go to
           * Window - Preferences - Java - Code Style - Code Templates
           
          */

          package org.mstar.strutsajax.action;

          import javax.servlet.http.HttpServletRequest;
          import javax.servlet.http.HttpServletResponse;

          import org.apache.struts.action.Action;
          import org.apache.struts.action.ActionForm;
          import org.apache.struts.action.ActionForward;
          import org.apache.struts.action.ActionMapping;
          import org.mstar.strutsajax.ajax.UserLogic;
          import org.mstar.strutsajax.form.LoginForm;

          /**
           * @author matianyi
           *
           * TODO To change the template for this generated type comment go to
           * Window - Preferences - Java - Code Style - Code Templates
           
          */

          public class LoginAction extends Action {

              
          /* (non-Javadoc)
               * @see org.apache.struts.action.Action#execute(org.apache.struts.action.ActionMapping, org.apache.struts.action.ActionForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
               
          */

              
          public ActionForward execute(ActionMapping mapping, ActionForm form,
                      HttpServletRequest request, HttpServletResponse response) throws Exception 
          {
                  
          if(validateUser((LoginForm)form)){
                      
          return mapping.findForward("success");            
                  }
           else {
                      
          return mapping.findForward("failure");
                  }
                  
              }

              
              
          private boolean validateUser(LoginForm form){
                  UserLogic userLogic 
          = new UserLogic();
                  
          return userLogic.validate(form.getUsername(),form.getPassword());        
              }

          }
          UserLogic.java
          package org.mstar.strutsajax.ajax;

          /**
           * @author matianyi
           *
           * TODO To change the template for this generated type comment go to
           * Window - Preferences - Java - Code Style - Code Templates
           
          */

          public class UserLogic {
              
          public boolean validate(String username,String password){
                  
          if("mty".equals(username)&&"123".equals(password)){
                      
          return true;
                  }
           else {
                      
          return false;
                  }

              }

          }

          LoginForm.java
          package org.mstar.strutsajax.form;

          import org.apache.struts.action.ActionForm;

          /**
           * @author matianyi
           *
           * TODO To change the template for this generated type comment go to
           * Window - Preferences - Java - Code Style - Code Templates
           
          */

          public class LoginForm extends ActionForm {
              
          private String username;
              
          private String password;

              
          /**
               * @return Returns the password.
               
          */

              
          public String getPassword() {
                  
          return password;
              }

              
          /**
               * @param password The password to set.
               
          */

              
          public void setPassword(String password) {
                  
          this.password = password;
              }

              
          /**
               * @return Returns the username.
               
          */

              
          public String getUsername() {
                  
          return username;
              }

              
          /**
               * @param username The username to set.
               
          */

              
          public void setUsername(String username) {
                  
          this.username = username;
              }

          }

          TableRowBean.java
          package org.mstar.strutsajax.form;


          /**
           * @author matianyi
           *
           * TODO To change the template for this generated type comment go to
           * Window - Preferences - Java - Code Style - Code Templates
           
          */

          public class TableRowBean{
              
          private String col1Value;
              
          private String col2Value;
              
          private String col3Value;
              

              
          /**
               * @return Returns the col1Value.
               
          */

              
          public String getCol1Value() {
                  
          return col1Value;
              }

              
          /**
               * @param col1Value The col1Value to set.
               
          */

              
          public void setCol1Value(String col1Value) {
                  
          this.col1Value = col1Value;
              }

              
          /**
               * @return Returns the col2Value.
               
          */

              
          public String getCol2Value() {
                  
          return col2Value;
              }

              
          /**
               * @param col2Value The col2Value to set.
               
          */

              
          public void setCol2Value(String col2Value) {
                  
          this.col2Value = col2Value;
              }

              
          /**
               * @return Returns the col3Value.
               
          */

              
          public String getCol3Value() {
                  
          return col3Value;
              }

              
          /**
               * @param col3Value The col3Value to set.
               
          */

              
          public void setCol3Value(String col3Value) {
                  
          this.col3Value = col3Value;
              }

          }
          上面的代碼都比較簡單,不用說大家也都知道是干什么用的。
          下面就是主要的內容了。預知后事如何,且聽下回分解。
          posted on 2007-04-16 15:29 張金鵬 閱讀(563) 評論(1)  編輯  收藏 所屬分類: AJAX技術

          Feedback

          # re: dwr簡介--一個例子(一) 2012-11-12 16:50 67
          天通苑  回復  更多評論
            

          主站蜘蛛池模板: 兴化市| 潜江市| 蓬安县| 维西| 兰溪市| 泸西县| 岢岚县| 太湖县| 利津县| 汪清县| 闻喜县| 依安县| 达尔| 精河县| 攀枝花市| 沐川县| 临安市| 海城市| 保山市| 郑州市| 湾仔区| 鄯善县| 赤壁市| 松原市| 英山县| 锦州市| 卫辉市| 永善县| 鲜城| 榆中县| 宜章县| 葵青区| 阿尔山市| 舟山市| 济源市| 池州市| 毕节市| 合川市| 商南县| 苍梧县| 余庆县|