久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

歡迎光臨 - 琳婕小筑-老貓的理想 - Struts配置說明 -

 hongmu 2006-05-12
未知 Struts配置說明    [ 日期:2005-12-27 ]   [ 來自:zt ]

首先新建一個(gè)web項(xiàng)目


 


取個(gè)項(xiàng)目名稱


 

選擇項(xiàng)目,右鍵,MyEclipse->Add Struts Capabilities


 

 

出現(xiàn)畫面:


 

此界面是在自動(dòng)配置struts的配置文件 可以根據(jù)需要配置信息.

其中default application resource :指的是消息資源的配置

 

配置完成之后,會(huì)出現(xiàn)左側(cè)列表中的文件,其中web.xml如下:


在 ActionServlet 的 web.xml 中使用調(diào)試級(jí)別來確保獲得擴(kuò)展的調(diào)試消息,。有效的 debug 值是 0(不記錄)到 6(最嚴(yán)重)。 將 detail 參數(shù)設(shè)置為調(diào)試來自 digestor 的消息.

 

 

Struts-config.xml文件如下:


 

其中data-sources用于配置數(shù)據(jù)庫連接池 

form-beans用于配置actionform

global-exceptions用于配置全局異常處理

global-forwards用于配置全局Forward

action-mappings 用于配置Action映射;

message-resources 用于配置消息資源,也就是上面提到過的default application resource

 

 

 

 

 

下面開始正式編寫程序;以做一個(gè)查詢?yōu)槔?

 

假設(shè)現(xiàn)在我們已經(jīng)知道了數(shù)據(jù)庫結(jié)構(gòu)和查詢條件.

數(shù)據(jù)庫結(jié)構(gòu)為

 

T_user


字段名
    
類型
    
長(zhǎng)度
    
中文詮釋
    
備注

userId
    
Char
    
10
    
用戶id
    
主鍵

userName
    
Varchar
    
20
    
用戶名
    
 

查詢條件:通過userId精確查找,通過userName模糊搜索

注意,為了小組開發(fā)能夠順利進(jìn)行,在命名標(biāo)識(shí)符時(shí)請(qǐng)遵循標(biāo)識(shí)符的一些約定,譬如此處變量名第一個(gè)字母小寫,第二個(gè)單詞的第一個(gè)字母大寫等等

 

首先可以肯定查詢條件中會(huì)存在userId和userName兩個(gè)字段,所以我們可以先新建一個(gè)ActionForm,過程如下:


找到你想存放該java類的包目錄,右鍵,新建,類

出現(xiàn)畫面:


 

定義類名,盡量使其有意義,而且一眼就能看懂,然后選擇超類,繼承

org.apache.struts.action.ActionForm類,然后點(diǎn)擊完成

然后在類中聲明兩個(gè)變量userId和userName,以及最終需要返回的內(nèi)容,這個(gè)內(nèi)容在這里應(yīng)該時(shí)一個(gè)列表;我們約定所有的查詢結(jié)果如果返回時(shí)列表的都命名為results,如果時(shí)單一內(nèi)容的都命名為result,這樣有助于小組開發(fā)的時(shí)候減少后期加工


然后找到菜單中的源代碼,選擇生成Getter和Setter方法


出現(xiàn)界面:


選擇全部選中,單擊確定;

然后覆蓋父類ActionForm的reset()方法

      

       public void reset(ActionMapping mapping,HttpServletRequest request){

              userId=null;

              userName=null;

              results=null;

       }

此方法用于當(dāng)一個(gè)請(qǐng)求處理完之后,清除或者重置ActionForm的數(shù)據(jù).

 

ActionForm 還包含一個(gè)名為 validate() 的方法,??梢允褂?nbsp;validate 方法驗(yàn)證表單項(xiàng),如果驗(yàn)證失敗,,則填充 ActionErrors 對(duì)象,,并將控制權(quán)返還給調(diào)用頁面,隨后調(diào)用頁面會(huì)顯示這些錯(cuò)誤,。

 

定義完ActionForm之后可以定義一個(gè)返回的results里面存放的bean,新建一個(gè)類

/*

 * 創(chuàng)建日期 2005-10-26

 *

 * TODO 要更改此生成的文件的模板,,請(qǐng)轉(zhuǎn)至

 * 窗口 - 首選項(xiàng) - Java - 代碼樣式 - 代碼模板

 */

package com.yourcompany.struts;

 

/**

 * @author Admin

 *

 * TODO 要更改此生成的類型注釋的模板,請(qǐng)轉(zhuǎn)至

 * 窗口 - 首選項(xiàng) - Java - 代碼樣式 - 代碼模板

 */

public class User {

       private String userId;

       private String userName;

      

      

 

       /**

        * @return 返回 userId,。

        */

       public String getUserId() {

              return userId;

       }

       /**

        * @return 返回 userName,。

        */

       public String getUserName() {

              return userName;

       }

       /**

        * @param userId 要設(shè)置的 userId。

        */

       public void setUserId(String userId) {

              this.userId = userId;

       }

       /**

        * @param userName 要設(shè)置的 userName,。

        */

       public void setUserName(String userName) {

              this.userName = userName;

       }

}

 

      

 

 

之后可以新建一張jsp頁面


 

頁面內(nèi)容如下

<%@ page language="java" contentType="text/html; charset=gb2312"%>

 

<%@ taglib uri="‘ target=_blank>http://jakarta./struts/tags-bean&q ... quot;bean" %>

<%@ taglib uri="‘ target=_blank>http://jakarta./struts/tags-html&q ... quot;html" %>

<%@ taglib uri="‘ target=_blank>http://jakarta./struts/tags-logic&q ... quot;logic" %>

<%@ taglib uri="‘ target=_blank>http://jakarta./struts/tags-tiles&q ... quot;tiles" %>

<%@ taglib uri="‘ target=_blank>http://jakarta./struts/tags-template&q ... uot;template" %>

<%@ taglib uri="‘ target=_blank>http://jakarta./struts/tags-nested&q ... quot;nested" %>

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html:html locale="true">

  <head>

    <html:base />

   

    <title>UserSearch.jsp</title>

    <META http-equiv="content-type" content="text/html; charset=gb2312">

  </head>


  <body>

    <html:form action="/userSearch" method="post">

    <table border="0">

        <TR>

            <TD align="right"> 姓名:</TD>

            <TD><html:text property="name"/></TD>

        </TR>

        <TR>

            <TD></TD>

            <td>-- or --</td>

        </TR>

        <TR>

            <TD align="right">

                用戶id:

            </TD>

            <TD><html:text property="ssNum"/>(xxx-xx-xxxx)</TD>

        </TR>

        <TR>

            <TD></TD>

            <TD> <html:submit  /></TD>

        </TR>

    </table>

   

</html:form>

 

<logic:present name="userForm" property="results">

    <hr width="100%" size="1" noshade="noshade">

   

    <bean:size id="size" name="userForm" property="results"/>

    <logic:equal name="size" value="0">

        <center> <FONT color="red"><b>No Employee Found</FONT></center>

    </logic:equal>

    <logic:greaterThan name="size" value="0">

        <table border="1">

            <tr>

                <th>姓名

                </th>

                <TH>用戶id</TH>

            </tr>

            <logic:iterate id="result" name="userForm" property="results">

                <tr>

                    <TD><bean:write name="result" property="userName"/> </TD>

                    <td><bean:write name="result" property="userId"/> </td>

                </tr>

            </logic:iterate>

        </table>

       

    </logic:greaterThan>

 

</logic:present>

</body>

</html:html>

這個(gè)jsp頁面中有一個(gè)form,

 

<html:form action="/userSearch " method="post">

他的action是/userSearch; 所以我們可以在struts-config.xml中定義這個(gè)action;

由于此action用到了一個(gè)ActionForm叫userForm,我們可以同時(shí)配置form-beans配置如下:

 

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "‘ target=_blank>http://jakarta./struts/d ... fig_1_1.dtd">

<struts-config>

   <data-sources />

   <form-beans >

        <form-bean type="com.yourcompany.struts.UserForm" name="userForm" >

           

        </form-bean>

   </form-beans>

   <global-exceptions />

   <global-forwards />

   <action-mappings >

   <action path="/userSearch" input="UserSearch.jsp" scope="request" name="userForm" ></action>

   </action-mappings>

   <message-resources parameter="com.yourcompany.struts.ApplicationResources" />

</struts-config>

 

這里的action還差一個(gè)內(nèi)容,就是action所指向的java類,我們可以添加一個(gè)Action,取名叫UserSearchAction,并且繼承org.apache.struts.action.Action類


他的內(nèi)容,通過覆蓋Action的execute方法,進(jìn)行操作,最終得到結(jié)果

 


 

然后我們?cè)趕truts-config.xml中添加這個(gè)類: (加粗的部分);

   <action path="/userSearch" input="UserSearch.jsp" scope="request" name="userForm" type="com.yourcompany.struts.UserSearchAction"></action>

 

在UserSearchAction.java中,我們可以通過getDataSource(HttpServerletRequest request)方法得到數(shù)據(jù)庫連接池,數(shù)據(jù)庫連接池的配置如下:

找到struts-config.xml文件,修改data-sources標(biāo)簽

<data-sources>

      <data-source type="org.apache.struts.util.GenericDataSource">…數(shù)據(jù)庫連接池

         <set-property property="password" value="lpl**#@)()#rjxy" /> ……….密碼

         <set-property property="minCount" value="5" />…………………...最小連接數(shù)

         <set-property property="maxCount" value="10" />…………………..最大連接數(shù)

         <set-property property="user" value="sa" />………………………..用戶名

         <set-property property="driverClass" value="com.microsoft.jdbc.sqlserver.SQLServerDriver" />………………….驅(qū)動(dòng)程序

         <set-property property="description" value="" />………………描述

         <set-property property="url" value="jdbc:microsoft:sqlserver://localhost:1433;databaseName=rongda;selectMethod=cursor" /> ……………………………………………………………………………連接地址

         <set-property property="readOnly" value="false" />       …..是否只讀

         <set-property property="autoCommit" value="false" />….是否自動(dòng)提交事務(wù)

         <set-property property="loginTimeout" value="" />   ……登陸超時(shí)

      </data-source>

  

   </data-sources>

 

 

然后程序就可以運(yùn)行了

 


    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多