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

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

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

    溫馨提示:您的每一次轉載,體現了我寫此文的意義!!!煩請您在轉載時注明出處http://m.tkk7.com/sxyx2008/謝謝合作!!!

    雪山飛鵠

    溫馨提示:您的每一次轉載,體現了我寫此文的意義!!!煩請您在轉載時注明出處http://m.tkk7.com/sxyx2008/謝謝合作!!!

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      215 Posts :: 1 Stories :: 674 Comments :: 0 Trackbacks

    2012年9月5日 #

    該項目基于maven3.0構建的,項目中融合了Struts1、Struts2、Spring、SpringMVC、Hibernate、Ibatis、MyBatis、Spring Data JPA、Spring JDBC、Spring DWR。頁面展現這里使用Struts1、Struts2、SpringMVC(jsp視圖、velocity視圖、freemarker視圖、pdf視圖、excel視圖、xml視圖、json視圖等)。是一個綜合性行的項目。該項目后期會陸續集成Spring的一些好的框架進來比如說Spring Web Flow、Spring Security 、Jbpm、WebService、Compass、Solr、nutch等??傊且粋€綜合性的項目。該項目不處理業務,主要是把目前自己工作中用到過的各種框架糅合到一個項目中。純粹是一個jee框架的糅合,主要是介紹各種技術。

    介紹下目前使用的各個框架的版本信息

    Struts1 1.3.10

    Struts2 2.3.8

    Spring 3.2.0.RELEASE

    Hibernate 4.2.0.Final

    Ibatis 2.3.4.726

    MyBatis 3.1.1

    Spring Data JPA 1.3.0.RELEASE

    DWR 3.0.M1

    項目中的持久化框架sql語句的跟蹤采用了log4jdbc4結合log4j,在控制臺可以看到完整的sql語句。

    該項目中使用到的技術均與Spring已集成。除了DWR與Spring集成使用xml文件中配置bean外 其他的bean均使用注解完善。每一個與數據庫有關的都有事務處理。

    項目結構圖


    項目托管SVN地址:http://maven-framework-project.googlecode.com/svn/trunk/ (限于大陸google code 不穩定,導致經常無法訪問,該地址已不在同步,建議使用github地址)
    項目托管GitHub地址:https://github.com/sxyx2008/maven-framework-project/(推薦使用)

    最后希望有興趣的朋友可以加入進來,大家一起完善他。把自己的技術分享出來。如有任何問題可以與我聯系

    聯系方式

    QQ:184675420

    Email:sxyx2008@gmail.com

    posted @ 2012-09-25 11:40 雪山飛鵠 閱讀(5095) | 評論 (2)編輯 收藏

    build.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <project default="run" name="build-project-with-ant">
        
        <!-- 最終編譯后的jar包名稱 -->
        <property name="jar.prefix-name" value="cms"></property>
        <property name="jar.version" value="1.0"></property>
        <property name="tomcat.version" value="6.0.18" />
        
        <property name="mailhost" value="smtp.qq.com"></property>
        <property name="username" value="**********" />
        <property name="password" value="**********"></property>
        <property name="mailfrom" value="184675420@qq.com" />
        <property name="mailto" value="184675420@qq.com"></property>
        <property name="mailsubject" value="使用Ant自助構建項目測試打包文檔"></property>
        
        <!-- 項目構建時所需要的lib -->
        <property name="project.lib.dir" value="${basedir}/WebRoot/WEB-INF/lib"></property>

        <!-- 項目構建時tomcat的home目錄 -->
        <property name="tomcat.download.url" value="http://archive.apache.org/dist/tomcat/tomcat-6/v${tomcat.version}/bin/apache-tomcat-${tomcat.version}.zip"></property>
        
        <!-- 項目構建時下載tomcat的存放目錄 -->
        <property name="tomcat.dir" value="${basedir}/dist/"></property>
        
        <!-- 定義項目的當前目錄 -->
        <property name="basedir" value="."/>
        <!-- 定義項目源碼目錄 -->
        <property name="src.dir" value="${basedir}/src"></property>
        <!-- 定義項目源碼編譯后的目錄 -->
        <property name="build.dir" value="${basedir}/classes"></property>
        <!-- 定義項目最終編譯生成的目錄 -->
        <property name="dist.dir" value="${basedir}/dist"></property>
        <!-- 定義項目文檔的目錄 -->
        <property name="doc.dir" value="${basedir}/doc"></property>
        <!-- 定義項目文檔api的目錄 -->
        <property name="doc.dir.api" value="${doc.dir}/api"></property>
        <!-- 定義項目單元測試文檔的目錄 -->
        <property name="junit.doc.dir" value="${basedir}/doc/api/junit"></property>
        <!-- 定義項目單元測試源碼的目錄 -->    
        <property name="junit.src.dir" value="${basedir}/test"></property>
        <!-- 定義項目單元測試編譯的目錄 -->    
        <property name="junit.dir" value="${basedir}/junit"></property>
        <property name="junit.build.dir" value="${junit.dir}/classes"></property>
        <!-- 定義項目單元測試測試報告的目錄 -->    
        <property name="junit.report.dir" value="${junit.dir}/report"></property>
        
        
        <target name="init" description="init">
            
            <echo>項目初始化設置</echo>
            
            <delete dir="${build.dir}"></delete>
            <delete dir="${dist.dir}"></delete>
            <delete dir="${doc.dir}"></delete>
            <delete dir="${junit.dir}"></delete>
            
            <mkdir dir="${build.dir}"/>
            <mkdir dir="${dist.dir}"/>
            <mkdir dir="${doc.dir}"/>
            <mkdir dir="${junit.build.dir}"/>
            <mkdir dir="${junit.report.dir}"/>
            
        </target>
        
        
        <target name="compile" depends="init" description="compile source">
            <echo>編譯源碼</echo>
            <javac srcdir="${src.dir}" includeantruntime="false" destdir="${build.dir}" verbose="true">
            <classpath>
                <fileset dir="${project.lib.dir}">
                    <include name="*.jar"/>
                </fileset>
            </classpath>
            </javac>
        </target>


        <target name="api-doc" depends="compile" description="build javadoc">
            <echo>生成api-doc幫助文檔</echo>
            <javadoc
                   destdir="${doc.dir.api}"
                   author="true"
                   version="true"
                   use="true"
                   windowtitle="${jar.prefix-name} API"
                   sourcepath="${src.dir}">
                <doctitle><![CDATA[<h1>Test</h1>]]></doctitle>
                <bottom><![CDATA[<i>Copyright © 2012 Dummy Corp. All Rights Reserved.</i>]]></bottom>
                
                <classpath>
                    <fileset dir="${project.lib.dir}">
                        <include name="*.jar"/>
                    </fileset>
                </classpath>
            </javadoc>
        </target>
        
        <target name="junit-javac" depends="api-doc" description="junit test case compile">
            <echo>編譯junit</echo>
            <javac destdir="${junit.build.dir}" srcdir="${junit.src.dir}" fork="false" includeantruntime="false">
            <classpath>
                <fileset dir="${project.lib.dir}">
                    <include name="*.jar"/>
                </fileset>
            </classpath>
            </javac>
        </target>
        
        <target name="junit-run" depends="junit-javac" description="junit test case execute">
            <echo>運行單元測試</echo>
            <junit printsummary="yes" haltonfailure="false">
                <classpath>
                    <pathelement location="${junit.build.dir}"/>
                    <fileset dir="${project.lib.dir}">
                        <include name="*.jar"/>
                    </fileset>
                </classpath>
                <formatter type="xml"/>
                <batchtest todir="${junit.report.dir}">
                    <fileset dir="${junit.src.dir}">
                        <include name="**/*Test.java"/>
                    </fileset>
                </batchtest>
            </junit>
        </target>
        
        <target name="junit-report" depends="junit-run" description="junit test case report">
            <echo>生成單元測試報告</echo>
            <junitreport todir="${junit.report.dir}">
                <fileset dir="${junit.report.dir}">
                    <include name="**/*.xml"/>
                </fileset>
                <report format="frames" todir="${junit.report.dir}/html"/>
            </junitreport>
            
        </target>
        
        <target name="junit-doc" depends="junit-report" description="build javadoc">
            <echo>生成junit-doc幫助文檔</echo>
            <javadoc
                   destdir="${junit.doc.dir}"
                   author="true"
                   version="true"
                   use="true"
                   windowtitle="Junit Test API"
                   sourcepath="${junit.src.dir}">
                <classpath>
                    <fileset dir="${project.lib.dir}">
                        <include name="*.jar"/>
                    </fileset>
                </classpath>
                <doctitle><![CDATA[<h1>Test</h1>]]></doctitle>
                <bottom><![CDATA[<i>Copyright © 2012 Dummy Corp. All Rights Reserved.</i>]]></bottom>
            </javadoc>
        </target>
        
        <target name="package" depends="api-doc" description="package">
            <echo>使用jar打包編譯后的class文件</echo>
            <jar destfile="${dist.dir}/${jar.prefix-name}-${jar.version}.jar" includes="**/*.class" basedir="${build.dir}">
            </jar>
            <echo>使用zip打包源碼</echo>
            <zip destfile="${dist.dir}/${jar.prefix-name}-source.zip" basedir="${src.dir}">
                <exclude name="**/*.class"/>
            </zip>
            <echo>使用zip打包javadoc</echo>
            <zip destfile="${dist.dir}/${jar.prefix-name}-doc.zip" basedir="${doc.dir.api}">
            </zip>
            <echo>使用war打war包</echo>
            <war destfile="${dist.dir}/${jar.prefix-name}.war" webxml="${basedir}/WebRoot/WEB-INF/web.xml">
                <fileset dir="${basedir}/WebRoot">
                    <include name="**/*.*"/>
                </fileset>
                <!--
                <lib dir="${basedir}/WebRoot/WEB-INF/lib"></lib>
                <classes dir="${basedir}/WebRoot/WEB-INF/classes"></classes>
                -->
            </war>
        </target>
        
        <target name="junit-package" depends="junit-doc" description="junit-package">
            <echo>打包</echo>
            <echo>使用jar打包編譯后的class文件</echo>
            <jar destfile="${dist.dir}/${jar.prefix-name}-${jar.version}.jar" includes="**/*.class" basedir="${build.dir}">
            </jar>
            <echo>使用zip打包源碼</echo>
            <zip destfile="${dist.dir}/${jar.prefix-name}-source.zip" basedir="${src.dir}">
                <exclude name="**/*.class"/>
            </zip>
            <echo>使用zip打包javadoc</echo>
            <zip destfile="${dist.dir}/${jar.prefix-name}-doc.zip" basedir="${doc.dir.api}">
            </zip>
            <echo>使用war打war包</echo>
            <war destfile="${dist.dir}/${jar.prefix-name}.war" webxml="${basedir}/WebRoot/WEB-INF/web.xml">
                <fileset dir="${basedir}/WebRoot">
                    <include name="**/*.*"/>
                </fileset>
                <!--
                <lib dir="${basedir}/WebRoot/WEB-INF/lib"></lib>
                <classes dir="${basedir}/WebRoot/WEB-INF/classes"></classes>
                -->
            </war>
            <echo>使用jar打junit單元測試編譯好的class文件</echo>
            <jar destfile="${dist.dir}/${jar.prefix-name}-junit-${jar.version}.jar" includes="**/*.class" basedir="${junit.build.dir}">
            </jar>
            <echo>使用zip打junit單元測試源文件</echo>
            <zip destfile="${dist.dir}/${jar.prefix-name}-junit-source.zip" basedir="${junit.src.dir}">
                <exclude name="**/*.class"/>
            </zip>
            <echo>使用zip打junit單元測試測試報告</echo>
            <zip destfile="${dist.dir}/junit-report.zip" basedir="${junit.report.dir}/html">
            </zip>
        </target>
        
        
        
        <target name="clean">
            <echo>清理項目</echo>
            <delete dir="${build.dir}" includeemptydirs="true"></delete>
            <delete dir="${doc.dir}" includeemptydirs="true"></delete>
            <delete dir="${junit.dir}" includeemptydirs="true"></delete>
        </target>
        
        
        <target name="mail"  description="use java mail send mail message" depends="clean">
            
            <echo>將打包的文件email發送</echo>
            <mail
                mailhost="${mailhost}"
                mailport="25"
                subject="${mailsubject}"  
                charset="utf-8"
                user="${username}"
                password="${password}"
                >
              <from address="${mailfrom}"/>
              <to address="${mailto}"/>
              <message>使用Ant自助構建項目測試打包文檔</message>
              <attachments>
                <fileset dir="${dist.dir}">
                  <include name="*.*"/>
                </fileset>
              </attachments>
            </mail>
        </target>
        
        
        <target name="wget" depends="mail">
            <echo>下載tomcat</echo>
            <get dest="${tomcat.dir}" verbose="true">
              <url url="${tomcat.download.url}"/>
            </get>
        </target>
        
        
        <target name="unzip" depends="wget">
            <echo>解壓tomcat</echo>
            <unzip src="${tomcat.dir}/apache-tomcat-${tomcat.version}.zip" dest="${tomcat.dir}">
            </unzip>
        </target>
        
        <target name="copy" depends="unzip">
            <echo>拷貝war包到tomcat中部署</echo>
             <copy file="${dist.dir}/${jar.prefix-name}.war" tofile="${tomcat.dir}/apache-tomcat-${tomcat.version}/webapps/${jar.prefix-name}.war"/>
        </target>
        
        <target name="startup" depends="copy">
            <echo>啟動tomcat web容器</echo>
            <exec executable="${tomcat.dir}/apache-tomcat-${tomcat.version}/bin/startup.bat">
                 <env key="CATALINA_HOME" path="${tomcat.dir}/apache-tomcat-${tomcat.version}/"/>
            </exec>
        </target>
        
        
        <target name="run" depends="package,startup" description="不存在單元測試時執行的任務">
        </target>
        
        <target name="junitrun" depends="junit-package,startup" description="存在單元測試時執行的任務">
        </target>
        
        
        
        
    </project>
    構建控制臺日志
    init:
         [echo] 項目初始化設置
       [delete] Deleting directory D:\workspace\Ant1\classes
       [delete] Deleting directory D:\workspace\Ant1\dist
       [delete] Deleting directory D:\workspace\Ant1\doc
       [delete] Deleting directory D:\workspace\Ant1\junit
        [mkdir] Created dir: D:\workspace\Ant1\classes
        [mkdir] Created dir: D:\workspace\Ant1\dist
        [mkdir] Created dir: D:\workspace\Ant1\doc
        [mkdir] Created dir: D:\workspace\Ant1\junit\classes
        [mkdir] Created dir: D:\workspace\Ant1\junit\report
    compile:
         [echo] 編譯源碼
        [javac] Compiling 3 source files to D:\workspace\Ant1\classes
    junit-javac:
         [echo] 編譯junit
        [javac] Compiling 1 source file to D:\workspace\Ant1\junit\classes
    junit-run:
         [echo] 運行單元測試
        [junit] Running com.junit.test.OtherTest
        [junit] Tests run: 2, Failures: 0, Errors: 0, Time elapsed: 0.027 sec
    junit-report:
         [echo] 生成單元測試報告
    [junitreport] Processing D:\workspace\Ant1\junit\report\TESTS-TestSuites.xml to C:\Users\scott\AppData\Local\Temp\null1056173236
    [junitreport] Loading stylesheet jar:file:/E:/apache-ant-1.8.4/lib/ant-junit.jar!/org/apache/tools/ant/taskdefs/optional/junit/xsl/junit-frames.xsl
    [junitreport] Transform time: 334ms
    [junitreport] Deleting: C:\Users\scott\AppData\Local\Temp\null1056173236
    doc:
         [echo] 生成幫助文檔
      [javadoc] Generating Javadoc
      [javadoc] Javadoc execution
      [javadoc] 正在創建目標目錄: "D:\workspace\Ant1\doc\api\"
      [javadoc] 正在裝入軟件包 com.ant.lesson1 的源文件...
      [javadoc] 正在構造 Javadoc 信息...
      [javadoc] 標準 Doclet 版本 1.6.0_25
      [javadoc] 正在構建所有軟件包和類的樹...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\com/ant/lesson1/\Main.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\com/ant/lesson1/\MyHttpServlet.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\com/ant/lesson1/\SimpleTask.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\com/ant/lesson1/\package-frame.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\com/ant/lesson1/\package-summary.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\com/ant/lesson1/\package-tree.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\constant-values.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\serialized-form.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\com/ant/lesson1/\class-use\SimpleTask.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\com/ant/lesson1/\class-use\MyHttpServlet.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\com/ant/lesson1/\class-use\Main.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\com/ant/lesson1/\package-use.html...
      [javadoc] 正在構建所有軟件包和類的索引...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\overview-tree.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\index-all.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\deprecated-list.html...
      [javadoc] 正在構建所有類的索引...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\allclasses-frame.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\allclasses-noframe.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\index.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\help-doc.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\stylesheet.css...
      [javadoc] Generating Javadoc
      [javadoc] Javadoc execution
      [javadoc] 正在創建目標目錄: "D:\workspace\Ant1\doc\api\junit\"
      [javadoc] 正在裝入軟件包 com.junit.test 的源文件...
      [javadoc] 正在構造 Javadoc 信息...
      [javadoc] 標準 Doclet 版本 1.6.0_25
      [javadoc] 正在構建所有軟件包和類的樹...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\junit\com/junit/test/\OtherTest.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\junit\com/junit/test/\package-frame.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\junit\com/junit/test/\package-summary.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\junit\com/junit/test/\package-tree.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\junit\constant-values.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\junit\com/junit/test/\class-use\OtherTest.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\junit\com/junit/test/\package-use.html...
      [javadoc] 正在構建所有軟件包和類的索引...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\junit\overview-tree.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\junit\index-all.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\junit\deprecated-list.html...
      [javadoc] 正在構建所有類的索引...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\junit\allclasses-frame.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\junit\allclasses-noframe.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\junit\index.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\junit\help-doc.html...
      [javadoc] 正在生成 D:\workspace\Ant1\doc\api\junit\stylesheet.css...
    package:
         [echo] 打包
          [jar] Building jar: D:\workspace\Ant1\dist\cms-1.0.jar
          [zip] Building zip: D:\workspace\Ant1\dist\cms-source.zip
          [zip] Building zip: D:\workspace\Ant1\dist\cms-doc.zip
          [jar] Building jar: D:\workspace\Ant1\dist\cms-junit-1.0.jar
          [zip] Building zip: D:\workspace\Ant1\dist\cms-junit-source.zip
          [zip] Building zip: D:\workspace\Ant1\dist\junit-report.zip
          [war] Building war: D:\workspace\Ant1\dist\cms.war
    clean:
         [echo] 清理項目
       [delete] Deleting directory D:\workspace\Ant1\classes
       [delete] Deleting directory D:\workspace\Ant1\doc
       [delete] Deleting directory D:\workspace\Ant1\junit
    mail:
         [echo] 將打包的文件email發送
         [mail] Sending email: Test build
    最終編譯后的目錄為
    posted @ 2012-09-05 16:26 雪山飛鵠 閱讀(2801) | 評論 (0)編輯 收藏

    主站蜘蛛池模板: 在线亚洲高清揄拍自拍一品区| 国产精品亚洲成在人线| 亚洲三级在线视频| 麻花传媒剧在线mv免费观看| 亚洲人成网址在线观看| 中文字幕免费视频| 亚洲国产成人久久99精品| 三年片在线观看免费大全| 国产午夜亚洲精品| 国产一卡二卡≡卡四卡免费乱码 | 国产一级一片免费播放i| 国产精品亚洲天堂| 国产成人精品久久亚洲高清不卡 | 羞羞视频在线观看免费| 亚洲热线99精品视频| 日本人成在线视频免费播放| 亚洲一卡2卡三卡4卡有限公司| 国产高清不卡免费在线| 亚洲人成色在线观看| 亚洲精品视频在线观看你懂的| 国产成人1024精品免费| 亚洲AV本道一区二区三区四区| 国产高清不卡免费在线| 亚洲精品无码mⅴ在线观看 | 夜色阁亚洲一区二区三区| 一日本道a高清免费播放| 亚洲av无码乱码国产精品| 美女视频黄的全免费视频| 深夜福利在线免费观看| 亚洲AV无码久久精品狠狠爱浪潮 | 亚洲精品成人a在线观看| 亚洲免费人成在线视频观看 | 亚洲成A∨人片天堂网无码| 九九精品成人免费国产片| 97久久国产亚洲精品超碰热| 亚洲国产成人精品女人久久久| 国产精品免费观看调教网| 亚洲国产精品ⅴa在线观看| 国产精品亚洲а∨无码播放| 好先生在线观看免费播放| 中文字幕永久免费视频|