<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 55  文章 - 187  trackbacks - 0
    <2008年7月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    常用鏈接

    留言簿(12)

    隨筆分類

    隨筆檔案

    groovy

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    工程目錄


    web.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns
    ="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
        xsi:schemaLocation
    ="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
        id
    ="WebApp_ID" version="2.5">
        
    <display-name>android</display-name>
        
    <welcome-file-list>
            
    <welcome-file>index.html</welcome-file>
            
    <welcome-file>index.htm</welcome-file>
            
    <welcome-file>index.jsp</welcome-file>
            
    <welcome-file>default.html</welcome-file>
            
    <welcome-file>default.htm</welcome-file>
            
    <welcome-file>default.jsp</welcome-file>
        
    </welcome-file-list>

        
    <!-- 第一 這個過濾器與Struts的核心過濾器協(xié)同工作,以便更容易與sitemesh整合 -->
        
    <filter>
            
    <filter-name>struts-cleanup</filter-name>
            
    <filter-class>org.apache.struts2.dispatcher.ActionContextCleanUp</filter-class>
        
    </filter>

        
    <!-- 第二 sitemesh的過濾器,同時也整合了Freemarker -->
        
    <filter>
            
    <filter-name>sitemesh</filter-name>
            
    <filter-class>org.apache.struts2.sitemesh.FreeMarkerPageFilter</filter-class>
        
    </filter>

        
    <!-- 第三 struts2過濾器 -->
        
    <filter>
            
    <filter-name>struts2Filter</filter-name>
            
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
        
    </filter>


        
    <filter-mapping>
            
    <filter-name>struts-cleanup</filter-name>
            
    <url-pattern>/*</url-pattern>
        
    </filter-mapping>
        
    <filter-mapping>
            
    <filter-name>sitemesh</filter-name>
            
    <url-pattern>/*</url-pattern>
        
    </filter-mapping>
        
    <filter-mapping>
            
    <filter-name>struts2Filter</filter-name>
            
    <url-pattern>/*</url-pattern>
        
    </filter-mapping>

        
    <!--
            使FreeMarker模塊能夠使用strut2標簽,使用方式:<#assign
            s=JspTaglibs["/WEB-INF/struts-tags.tld"] />
        
    -->
        
    <servlet>
            
    <servlet-name>JspSupportservlet</servlet-name>
            
    <servlet-class>org.apache.struts2.views.JspSupportServlet</servlet-class>
            
    <load-on-startup>1</load-on-startup>
        
    </servlet>

        
    <servlet>
            
    <servlet-name>sitemesh-freemarker</servlet-name>
            
    <servlet-class>com.opensymphony.module.sitemesh.freemarker.FreemarkerDecoratorServlet</servlet-class>
            
    <init-param>
                
    <param-name>TemplatePath</param-name>
                
    <param-value>/</param-value>
            
    </init-param>
            
    <init-param>
                
    <param-name>default_encoding</param-name>
                
    <param-value>UTF-8</param-value>
            
    </init-param>
            
    <load-on-startup>1</load-on-startup>
        
    </servlet>

        
    <servlet-mapping>
            
    <servlet-name>sitemesh-freemarker</servlet-name>
            
    <url-pattern>/*</url-pattern>
        
    </servlet-mapping>

    </web-app>

    struts.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"
            "http://struts.apache.org/dtds/struts-2.1.dtd"
    >
    <struts>
        
    <constant name="struts.convention.default.parent.package" value="crud-default" />
        
    <constant name="struts.convention.package.locators" value="action" />
        
    <constant name="struts.convention.package.locators.basePackage" value="org.david.android" />
        
    <constant name="struts.convention.result.path" value="/WEB-INF/web" />

        
    <!-- 用于CRUD Action的parent package -->
        
    <package name="crud-default" extends="convention-default">
            
    <!-- 基于paramsPrepareParamsStack,
                增加store interceptor保證actionMessage在redirect后不會丟失 
    -->
            
    <interceptors>
                
    <interceptor-stack name="crudStack">
                    
    <interceptor-ref name="store">
                        
    <param name="operationMode">AUTOMATIC</param>
                    
    </interceptor-ref>
                    
    <interceptor-ref name="paramsPrepareParamsStack" />
                
    </interceptor-stack>
            
    </interceptors>

            
    <default-interceptor-ref name="crudStack" />
        
    </package>

        
    <!-- 
            使用Convention插件,實現(xiàn)約定大于配置的零配置文件風格.
                   特殊的Result路徑在Action類中使用@Result設(shè)定. 
        
    -->
    </struts>

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

    <decorators defaultdir="/WEB-INF/decorators">
        
    <decorator name="main" page="main.ftl">
            
    <pattern>/*</pattern>
        
    </decorator>
    </decorators>

    HelloWorldAction.java
    package org.david.android.action.user;


    public class HelloWorldAction {
        
    private String message;
        
    public String getMessage() {
            
    return message;
        }
        
        
    public void setMessage(String message) {
            
    this.message = message;
        }
        
        
    public String execute(){
            
    this.message = "ITdavid";
            
    return "success";
        }
    }

    main.ftl
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>${title}</title>
    </head>
    <body>
    <div>
    hello
    ${body}
    </body>
    </html>

    hello-world.ftl
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <meta name="layout" content="main"/>
    <title>Insert title here</title>
    </head>
    <body>
        Hello ${message!}
    </body>
    </html>


    posted @ 2009-11-29 17:05 大衛(wèi) 閱讀(3294) | 評論 (4)編輯 收藏
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee"
        xmlns:web
    ="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
        id
    ="WebApp_ID" version="2.5">
        
    <display-name>fmtest</display-name>
        
    <welcome-file-list>
            
    <welcome-file>index.html</welcome-file>
            
    <welcome-file>index.htm</welcome-file>
            
    <welcome-file>index.jsp</welcome-file>
            
    <welcome-file>default.html</welcome-file>
            
    <welcome-file>default.htm</welcome-file>
            
    <welcome-file>default.jsp</welcome-file>
        
    </welcome-file-list>

        
    <context-param>
            
    <param-name>contextConfigLocation</param-name>
            
    <param-value>/WEB-INF/config/service-context.xml</param-value>
        
    </context-param>
        
    <listener>
            
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
        
    </listener>

        
    <filter>
            
    <display-name>Stripes Filter</display-name>
            
    <filter-name>StripesFilter</filter-name>
            
    <filter-class>net.sourceforge.stripes.controller.StripesFilter</filter-class>
            
    <init-param>
                
    <param-name>ActionResolver.Packages</param-name>
                
    <param-value>net.sourceforge.stripes.examples</param-value>
            
    </init-param>
            
    <init-param>
                
    <param-name>Interceptor.Classes</param-name>
                
    <param-value>net.sourceforge.stripes.integration.spring.SpringInterceptor</param-value>
            
    </init-param>
        
    </filter>
        
    <filter-mapping>
            
    <filter-name>StripesFilter</filter-name>
            
    <servlet-name>StripesDispatcher</servlet-name>
        
    </filter-mapping>

        
    <servlet>
            
    <servlet-name>StripesDispatcher</servlet-name>
            
    <servlet-class>net.sourceforge.stripes.controller.DispatcherServlet</servlet-class>
            
    <load-on-startup>1</load-on-startup>
        
    </servlet>
        
    <servlet-mapping>
            
    <servlet-name>StripesDispatcher</servlet-name>
            
    <url-pattern>*.action</url-pattern>
        
    </servlet-mapping>

        
    <servlet>
            
    <servlet-name>Freemarker</servlet-name>
            
    <servlet-class>freemarker.ext.servlet.FreemarkerServlet</servlet-class>
            
    <init-param>
                
    <param-name>TemplatePath</param-name>
                
    <param-value>/</param-value>
            
    </init-param>
            
    <init-param>
                
    <param-name>template_update_delay</param-name>
                
    <param-value>0</param-value> <!-- 0 is for dev only! Use higher value otherwise. -->
            
    </init-param>
            
    <init-param>
                
    <param-name>DefaultEncoding</param-name>
                
    <param-value>utf-8</param-value>
            
    </init-param>
            
    <load-on-startup>1</load-on-startup>
        
    </servlet>
        
    <servlet-mapping>
            
    <servlet-name>Freemarker</servlet-name>
            
    <url-pattern>*.ftl</url-pattern>
        
    </servlet-mapping>

    </web-app>
    posted @ 2009-11-25 15:45 大衛(wèi) 閱讀(1756) | 評論 (2)編輯 收藏
    解決FreeMarker中文亂碼問題。
    在web.xml中配置如下:
    <servlet>
        
    <servlet-name>Freemarker</servlet-name>
        
    <servlet-class>freemarker.ext.servlet.FreemarkerServlet</servlet-class>
        
    <init-param>
            
    <param-name>TemplatePath</param-name>
            
    <param-value>/</param-value>
        
    </init-param>
        
    <init-param>
            
    <param-name>template_update_delay</param-name>
            
    <param-value>3600</param-value> <!-- 0 值僅用于開發(fā)環(huán)境,生產(chǎn)環(huán)境請設(shè)置為3600或者更大。 -->
        
    </init-param>
        
    <init-param>
            
    <param-name>DefaultEncoding</param-name> <!-- 解決中文編碼問題 -->
            
    <param-value>utf-8</param-value>
        
    </init-param>
        
    <load-on-startup>1</load-on-startup>
    </servlet>
    --------------------

        PES準高手
    posted @ 2009-11-25 15:02 大衛(wèi) 閱讀(5067) | 評論 (1)編輯 收藏
    RT
    太保守會影響效率,當某些代碼邏輯是認為可控制時,不用保守。
    posted @ 2009-09-28 10:08 大衛(wèi) 閱讀(429) | 評論 (0)編輯 收藏
    關(guān)于類的劃分,上層應該按業(yè)務(wù)領(lǐng)域含義劃分,下層應該按實現(xiàn)細節(jié)劃分。
    posted @ 2009-09-27 12:10 大衛(wèi) 閱讀(414) | 評論 (0)編輯 收藏
    其實很簡單,就把標記@Id放在主鍵(非自增)上就OK了。
    posted @ 2009-02-25 14:12 大衛(wèi) 閱讀(2555) | 評論 (0)編輯 收藏
         摘要: 在設(shè)計數(shù)據(jù)庫表的時候,往往會設(shè)計出帶有復合主鍵的表,即表的記錄由多個字段聯(lián)合標識,如: 表 CREATE TABLE TB_HOUR_DATA (   STAT_DATE  DATE            &...  閱讀全文
    posted @ 2009-02-25 14:10 大衛(wèi) 閱讀(3005) | 評論 (2)編輯 收藏

    如何調(diào)用執(zhí)行iframe中的方法?如下:

    document.getElementById("iframeId").contentWindow.functionName();
    posted @ 2008-10-07 14:50 大衛(wèi) 閱讀(5359) | 評論 (5)編輯 收藏
    http://www.nciku.com/
    這個網(wǎng)站里面的手寫輸入真棒!
    posted @ 2008-09-19 14:15 大衛(wèi) 閱讀(1275) | 評論 (1)編輯 收藏

    最近用smartdraw畫了一些結(jié)構(gòu)圖,感覺比visio之類好用,而且也包羅萬象,推薦一下!
    下載地址:http://soft.mumayi.net/downinfo/3393.html

    posted @ 2008-09-18 14:04 大衛(wèi) 閱讀(1854) | 評論 (2)編輯 收藏
    /* 判斷是否含有GBK以外的特殊字符 */
    boolean isGBK(String s) throws UnsupportedEncodingException
    {
        
    if(s.equals(new String(s.getBytes("gbk"))))
            
    return true;
        
    else
            
    return false;
    }
    posted @ 2008-09-16 13:04 大衛(wèi) 閱讀(878) | 評論 (1)編輯 收藏
    使用這個組合,感覺還是很方便靈活的。

    1、將struts2的json插件加入web工程的lib,jsonplugin的下載地址:http://code.google.com/p/jsonplugin/downloads/list

    2、struts.xml添加專為ajax使用的package
    <package name="ajax" extends="json-default">
            
    <action name="ajaxRequest"
                class
    ="org.david.struts2.HelloWorld">
                
    <result type="json"></result>
            
    </action>
        
    </package>

    3、helloworld.jsp
               <SCRIPT type="text/javascript" src="js/jquery-1.2.6.min.js"></script>
            
    <SCRIPT type="text/javascript">
                
    function clickButton()
                
    {    
                    
    var url = 'ajaxRequest.action';
                    
    var params = {
                            name:$('#name').attr('value')
                    }
    ;
                    jQuery.post(url, params, callbackFun, 'json');
                }

                
    function callbackFun(data)
                
    {
                    alert(data.result);//對應HelloWorld類的message屬性
                        //獲取數(shù)據(jù)后渲染頁面
                }

            
    </SCRIPT>



           
    <input id="name" type="text">
            
    <input type="button" value="ok" onclick="javascript:clickButton();">

    4、HelloWorld.java
    package org.david.struts2;

    public class HelloWorld {

        
    private String name;
        
    private String result;

        
    // ajax請求參數(shù)賦值
        public void setName(String name) {
            
    this.name = name;
        }


        
    // ajax返回結(jié)果
        public String getResult() {
            
    return result;
        }


        
    public String execute() {
            
    this.result = "Hello! " + this.name + ".";
            
    return "success";
        }


    }
    posted @ 2008-09-07 23:07 大衛(wèi) 閱讀(41960) | 評論 (17)編輯 收藏
    鼠標手型代碼:
    this.style.cursor='pointer'
    不要用hand,否則firefox無效。
    posted @ 2008-08-01 17:03 大衛(wèi) 閱讀(2341) | 評論 (1)編輯 收藏
    word-wrap:break-word 在firefox中不會起作用,以下是解決辦法:
    完整的css代碼為
    word-wrap:break-word; overflow:hidden;
    這段代碼應添加到td標簽的樣式中。另外,應該在外層的table標簽中添加樣式
    table-layout:fixed;
    posted @ 2008-07-11 13:34 大衛(wèi) 閱讀(2109) | 評論 (1)編輯 收藏
    主站蜘蛛池模板: 亚洲国产成人片在线观看 | 国产亚洲大尺度无码无码专线| 亚洲av片劲爆在线观看| 国产精品亚洲综合一区在线观看 | 在线免费观看一区二区三区| 亚洲高清国产AV拍精品青青草原| 亚洲av无码成人精品区一本二本| 最近2019中文字幕免费直播| 亚洲中文字幕伊人久久无码| 亚洲精品自偷自拍无码| 99久久久国产精品免费牛牛| 中文字幕亚洲图片| 精品国产日韩亚洲一区91| 久久久久久精品免费看SSS| 亚洲成A∨人片在线观看不卡| 手机永久免费的AV在线电影网| 成人人免费夜夜视频观看| 亚洲精品电影天堂网| 两个人看www免费视频| 亚洲高清最新av网站| 亚洲国产午夜精品理论片在线播放| 亚洲视频免费一区| 久久久久亚洲精品无码系列| 久久免费观看视频| 亚洲精品A在线观看| 国产一区二区三区亚洲综合| 毛片a级毛片免费播放下载| 亚洲资源在线视频| 小日子的在线观看免费| 亚洲欧洲美洲无码精品VA| 一道本在线免费视频| 免费女人18毛片a级毛片视频| 亚洲精华液一二三产区| 成人毛片18女人毛片免费96| 亚洲一区免费视频| 国产精品爱啪在线线免费观看| 亚洲图片在线观看| 少妇人妻偷人精品免费视频| 人人狠狠综合久久亚洲婷婷| 成人精品一区二区三区不卡免费看| 亚洲香蕉成人AV网站在线观看|