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

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

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

    北風(fēng)  
    日歷
    <2012年4月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    293012345
    統(tǒng)計(jì)
    • 隨筆 - 1
    • 文章 - 0
    • 評(píng)論 - 0
    • 引用 - 0

    導(dǎo)航

    常用鏈接

    留言簿

    隨筆檔案

    搜索

    •  

    最新評(píng)論

     

    使用Eclipse構(gòu)建Maven的SpringMVC項(xiàng)目

     

            首先Eclipse需要安裝Maven的插件,地址:http://m2eclipse.sonatype.org/sites/m2e。

            用MyEclipse安裝Maven插件,建出的Maven項(xiàng)目有些問(wèn)題。一是,發(fā)布tomcat的時(shí)候resources總是不會(huì)被發(fā)布到tomcat下;二是,把WEB-INF下的classes改到target下的classes,但是不知道為什么MyEclipse要么仍然在WEB-INF下生成class。要么真不在WEB-INF生成classes了但是發(fā)布tomcat的時(shí)候,class文件一個(gè)都不會(huì)給你發(fā)布過(guò)去,超級(jí)郁悶。但是使用Eclipse構(gòu)建Maven項(xiàng)目后,使用MyEclipse打開就沒問(wèn)題了。

            用maven的好處:我感覺最主要就是自動(dòng)下載jar包和它所依賴的包,這樣可以保證了多人開發(fā)時(shí)jar版本不同的問(wèn)題。再就是文件結(jié)構(gòu)清晰,java文件,資源文件,測(cè)試文件都分的很清楚。

            將介紹兩種方法:一,直接建立Maven項(xiàng)目方法;二、建立Dynamic Web project轉(zhuǎn)成Maven項(xiàng)目方法。

    一、直接建立Maven項(xiàng)目方法

    1、建立Maven項(xiàng)目

            接下來(lái)使用Eclipse的maven構(gòu)建一個(gè)web項(xiàng)目,以構(gòu)建SpringMVC項(xiàng)目為例:

    1.1 選擇建立Maven Project

    選擇File -> New -> Other,在New窗口中選擇 Maven -> Maven Project。點(diǎn)擊newxt。


     

     

    1.2 選擇項(xiàng)目路徑

    Use default Workspace location默認(rèn)工作空間。


     

     

    1.3 選擇項(xiàng)目類型

    在Artifact Id中選擇maven-archetype-webapp


     

     

    1.4 輸入Group ID和 Artifact ID,以及Package

    Group ID一般寫大項(xiàng)目名稱。Artifact ID是子項(xiàng)目名稱。

    例如Spring的web包,Group ID:org.springframework,artifactId:spring-web。

    Package是默認(rèn)給你建一個(gè)包,不寫也可以。


     

     

    1.5 剛建立好后的文件結(jié)構(gòu)如下圖


     

    如果這里顯示的內(nèi)容多,一般是Filters設(shè)置的問(wèn)題。或perspective為JavaEE模式,改成Java模式就可以了。

     

     

    2、配置Maven項(xiàng)目

    接下來(lái)就需要更改好多配置了。

     

    2.1 添加Source文件夾

    接下來(lái)需要添加src/main/java,src/test/java ,src/test/resources三個(gè)文件夾。右鍵項(xiàng)目根目錄點(diǎn)擊New -> Source Folder,

    建出這三個(gè)文件夾。注意不是建普通的Folder,而是Source Folder。



     

     

    2.2 更改class路徑

    右鍵項(xiàng)目,Java Build Path -> Source

    下面應(yīng)該有4個(gè)文件夾。src/main/java,src/main/resources,src/test/java ,src/test/resources。

     

    雙擊每個(gè)文件夾的Output folder,選擇路徑。

    src/main/java,src/main/resources,選擇target/classes;

    src/test/java ,src/test/resources, 選擇target/test-classes;

     

    選上Allow output folders for source folders.

     

     

    在此處還要更改:

    更改文件夾顯示的順序:點(diǎn)擊Order and Export。

    更改JDK版本:在Libraries雙擊JRE System Library,要1.6版本。


     

    2.3 把項(xiàng)目變成Dynamic Web項(xiàng)目

     

    2.3.1 右鍵項(xiàng)目,選擇Project Facets,點(diǎn)擊Convert to faceted from


     

    2.3.2 配置Project Facets

     

    更改Dynamic Web Module的Version為2.5。(3.0為Java7的)。

    如果提示錯(cuò)誤,可能需要在Java Compiler設(shè)置Compiler compliance level 為1.6。或者需要在此窗口的Java的Version改成1.6。


     

     

    2.3.3 配置 Modify Faceted Project

    點(diǎn)擊Further configuration available…,彈出Modify Faceted Project窗口

    此處是設(shè)置web.xml文件的路徑,我們輸入src/main/webapp。

    Generate web.xml deployment descriptor自動(dòng)生成web.xml文件,可選可不選。

     

     

    2.4 設(shè)置部署程序集(Web Deployment Assembly)

     

    上面步驟設(shè)置完成后,點(diǎn)擊OK,Properties窗口會(huì)關(guān)閉,在右鍵項(xiàng)目打開此窗口。在左側(cè)列表中會(huì)出現(xiàn)一個(gè)Deployment Assembly,點(diǎn)擊進(jìn)去后,如下圖:


     

     

    此處列表是,部署項(xiàng)目時(shí),文件發(fā)布的路徑。

    1,我們刪除test的兩項(xiàng),因?yàn)閠est是測(cè)試使用,并不需要部署。

    2,設(shè)置將Maven的jar包發(fā)布到lib下。

    Add -> Java Build Path Entries -> Maven Dependencies -> Finish

    設(shè)置完成效果圖


     

     

     

     

     

    3、向maven項(xiàng)目中添加jar包

    maven可以管理項(xiàng)目依賴的jar包,通過(guò)groupID、artifactId以及版本號(hào)可以唯一確定一個(gè)jar包。這樣可以防止老式Web項(xiàng)目中WEB-INF/lib下jar包不一致的問(wèn)題。并且maven還會(huì)自動(dòng)下載添加進(jìn)的jar包所依賴的jar包。

     

    3.1 在pom.xml中添加所需要的jar包

    使用Maven POM editor打開項(xiàng)目中的pom.xml文件,選擇Dependencies,在Dependencies欄目點(diǎn)擊Add進(jìn)行,首先彈出一個(gè)搜索按鈕,例如輸入spring-web,就會(huì)自動(dòng)搜索關(guān)于spring-web相關(guān)的jar包,我們選擇3.0.5版本的spring。將spring包全部添加進(jìn)來(lái)。需要添加的其他jar包有:junit、jstl。或者點(diǎn)擊pom.xml直接編輯pom.xml文件。這樣可以直接copy過(guò)來(lái)dependencies內(nèi)容。




    3.2設(shè)置jar包的scope

     

    當(dāng)添加進(jìn)入一個(gè)jar包后,有一些屬性需要設(shè)置,最重要的就是scope,它有以下幾種取值:

    1.         compile,缺省值,適用于所有階段,會(huì)隨著項(xiàng)目一起發(fā)布。

    2.         provided,類似compile,期望JDK、容器或使用者會(huì)提供這個(gè)依賴。如servlet.jar。

    3.         runtime,只在運(yùn)行時(shí)使用,如JDBC驅(qū)動(dòng),適用運(yùn)行和測(cè)試階段。

    4.         test,只在測(cè)試時(shí)使用,用于編譯和運(yùn)行測(cè)試代碼。不會(huì)隨項(xiàng)目發(fā)布。

    5.         system,類似provided,需要顯式提供包含依賴的jar,Maven不會(huì)在 Repository中查找它。

     

     

    通常SpringMVC項(xiàng)目所需要配置scope的jar包如下圖:


     

    有的時(shí)候發(fā)現(xiàn)servlet-api還是被打包到lib下面了,此時(shí)肯定會(huì)報(bào)錯(cuò)。就需要把maven插件中的WTP也安裝一下。

    Eclipse在線安裝路徑:http://m2eclipse.sonatype.org/sites/m2e-extras。選擇for Eclipse WTP。


     

     

     

    4、構(gòu)建SpringMVC框架

     

    4.1 編輯web.xml文件

     

    需要添加log4j,字符過(guò)濾,Spring 的dispatcher等。

    webx.xml代碼如下:

     

    Xml代碼  收藏代碼
    1. <?xml version="1.0" encoding="UTF-8"?>  
    2. <web-app xmlns="http://java.sun.com/xml/ns/javaee"   
    3.          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    4.          xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   
    5.                              http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"   
    6.          version="2.5" >  
    7.       
    8.     <!-- 區(qū)分項(xiàng)目名稱,防止默認(rèn)重名 -->  
    9.     <context-param>  
    10.         <param-name>webAppRootKey</param-name>  
    11.         <param-value>maven.example.root</param-value>  
    12.     </context-param>  
    13.   
    14.     <!-- Spring的log4j監(jiān)聽器 -->  
    15.     <listener>  
    16.         <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>  
    17.     </listener>  
    18.   
    19.     <!-- 字符集 過(guò)濾器  -->  
    20.     <filter>  
    21.         <filter-name>CharacterEncodingFilter</filter-name>  
    22.         <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>  
    23.         <init-param>  
    24.             <param-name>encoding</param-name>  
    25.             <param-value>UTF-8</param-value>  
    26.         </init-param>  
    27.         <init-param>  
    28.             <param-name>forceEncoding</param-name>  
    29.             <param-value>true</param-value>  
    30.         </init-param>  
    31.     </filter>  
    32.     <filter-mapping>  
    33.         <filter-name>CharacterEncodingFilter</filter-name>  
    34.         <url-pattern>/*</url-pattern>  
    35.     </filter-mapping>  
    36.   
    37.     <!-- Spring view分發(fā)器 -->  
    38.     <servlet>  
    39.         <servlet-name>dispatcher</servlet-name>  
    40.         <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  
    41.         <init-param>  
    42.             <param-name>contextConfigLocation</param-name>  
    43.             <param-value>/WEB-INF/dispatcher-servlet.xml</param-value>  
    44.         </init-param>  
    45.         <load-on-startup>1</load-on-startup>  
    46.     </servlet>  
    47.     <servlet-mapping>  
    48.         <servlet-name>dispatcher</servlet-name>  
    49.         <url-pattern>*.do</url-pattern>  
    50.     </servlet-mapping>  
    51.   
    52. </web-app>  
     

     

    4.2 編寫Spring配置文件dispatcher-servlet.xml

     

    如要添加MVC驅(qū)動(dòng)、注解檢測(cè)、視圖解析等。dispatcher-servlet.xml代碼如下:

     

    Xml代碼  收藏代碼
    1. <?xml version="1.0" encoding="UTF-8"?>  
    2. <beans xmlns="http://www.springframework.org/schema/beans"   
    3.        xmlns:aop="http://www.springframework.org/schema/aop"   
    4.        xmlns:context="http://www.springframework.org/schema/context"  
    5.        xmlns:mvc="http://www.springframework.org/schema/mvc"   
    6.        xmlns:tx="http://www.springframework.org/schema/tx"   
    7.        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    8.        xsi:schemaLocation="http://www.springframework.org/schema/aop   
    9.         http://www.springframework.org/schema/aop/spring-aop-3.0.xsd   
    10.         http://www.springframework.org/schema/beans   
    11.         http://www.springframework.org/schema/beans/spring-beans-3.0.xsd   
    12.         http://www.springframework.org/schema/context   
    13.         http://www.springframework.org/schema/context/spring-context-3.0.xsd   
    14.         http://www.springframework.org/schema/mvc   
    15.         http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd   
    16.         http://www.springframework.org/schema/tx   
    17.         http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">  
    18.   
    19.     <mvc:annotation-driven />  
    20.     <context:component-scan base-package="liming.maven.example" />  
    21.   
    22.     <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">  
    23.         <property name="prefix" value="/WEB-INF/views/" />  
    24.         <property name="suffix" value=".jsp" />  
    25.     </bean>  
    26.   
    27. </beans>  
     

     

     

     

    4.3 編寫一個(gè)Controller層測(cè)試類

     

    編寫一個(gè)SpringMVC的Controller層測(cè)試類。此類只有一個(gè)方法做地址映射,并向頁(yè)面?zhèn)鬟f一個(gè)數(shù)據(jù)。代碼如下:

     

    Java代碼  收藏代碼
    1. package liming.maven.example.view;  
    2.   
    3. import org.springframework.stereotype.Controller;  
    4. import org.springframework.ui.Model;  
    5. import org.springframework.web.bind.annotation.RequestMapping;  
    6.   
    7. @Controller  
    8. public class GeneralController {  
    9.   
    10.     @RequestMapping(value="index.do")  
    11.     public void index_jsp(Model model){  
    12.         model.addAttribute("liming", "黎明你好");  
    13.         System.out.println("index.jsp");  
    14.     }  
    15. }  
     

     

     

     

    4.4 編寫index.jsp頁(yè)面

    首先在src/main/webapp/WEB-INF下建文件夾views。此處和dispatcher-servlet.xml配置文件中的prefix屬性路徑要一樣。

    在views下建index.jsp文件

    我們使用jstl獲取Controlleradd的數(shù)據(jù)。

    Jsp頁(yè)面代碼如下:

     

    Html代碼  收藏代碼
    1. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>  
    2. <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>  
    3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
    4. <html>  
    5.     <head>  
    6.         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  
    7.         <title>Insert title here</title>  
    8.     </head>  
    9.       
    10.     <body>  
    11.         <c:out value="${liming}"></c:out>  
    12.     </body>  
    13. </html>  
     

     

     

     

    5,發(fā)布到tomcat

    這個(gè)就沒啥說(shuō)的了。

    Eclipse下Tomcat常用設(shè)置:http://limingnihao.iteye.com/admin/blogs/825394

     

     

    6,測(cè)試

    訪問(wèn)地址:http://localhost:8080/liming.maven.example/index.do

    訪問(wèn)的結(jié)果來(lái)個(gè)截圖:


     

     

    二、建立Dynamic Web project轉(zhuǎn)成Maven項(xiàng)目方法

    7、第二種方法DynamicWeb項(xiàng)目轉(zhuǎn)成Mavan

    7.1 新建Dynamic Web Project

    依次選擇選擇File -> New -> Other。在New窗口中選擇Web下的Dynamic Web Project。點(diǎn)擊next。


     

    7.2 配置項(xiàng)目信息

    7.2.1 輸入項(xiàng)目信息

    首先輸入項(xiàng)目名稱。

    Target runtime 一般選擇使用什么容器,tomcat之類的。可以先不選。

    Dynamic web module version。就是版本號(hào)。選擇2.5(3.0是Java7的)。

    Configuration 是選擇容易的配置。如果Target runtime選擇了tomcat。這里對(duì)應(yīng)也是選擇tomcat。

    Next。


    7.2.2 配置source和output的folder

    此窗口輸入需要建立的Source folders。和默認(rèn)output folder。

    這個(gè)我們的Source folders等建立完項(xiàng)目后在添加。

    output folder可以順手改成target/classes。


     

    7.2.3 配置web.xml文件的路徑


     

     

    7.3 轉(zhuǎn)成maven項(xiàng)目

    Dynamic web項(xiàng)目建立完后,首先將其轉(zhuǎn)成maven項(xiàng)目。

    右鍵此項(xiàng)目,選擇maven -> Enable Dependency Management。彈出的窗口,直接finish就可以了。


     

    7.4 其他配置

    接下來(lái)的配置工作就和前面的基本一樣了。

    請(qǐng)參考上面。

    2.1添加Source文件夾

    2.2更改class路徑。

    2.3.3 配置 Modify Faceted Project

    2.4 設(shè)置部署程序集(Web Deployment Assembly)

     

    接著就是構(gòu)建SpringMVC框架,發(fā)布到tomcat,測(cè)試。

    posted on 2012-04-15 09:57 xujj 閱讀(265) 評(píng)論(0)  編輯  收藏

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
     
    Copyright © xujj Powered by: 博客園 模板提供:滬江博客
    主站蜘蛛池模板: 亚洲乱亚洲乱妇无码麻豆| 国产亚洲高清不卡在线观看| 亚洲小说区图片区另类春色| 亚洲高清资源在线观看| 亚洲暴爽av人人爽日日碰| 久久久久女教师免费一区| 妻子5免费完整高清电视| 亚洲一区精品伊人久久伊人| 亚洲精品在线播放| 有码人妻在线免费看片| 91九色老熟女免费资源站| 亚洲成aⅴ人片久青草影院 | 日韩免费无砖专区2020狼| 亚洲级αV无码毛片久久精品| 久久精品国产亚洲AV蜜臀色欲| 一级毛片免费在线| 久久精品a一国产成人免费网站| 在线亚洲人成电影网站色www| 一本天堂ⅴ无码亚洲道久久| 99免费在线视频| 又粗又大又硬又爽的免费视频| 亚洲综合免费视频| 国产免费区在线观看十分钟| 色吊丝永久在线观看最新免费| 亚洲日韩图片专区第1页| 日韩精品无码免费视频| 国产精品美女午夜爽爽爽免费| 亚洲AV无码国产精品麻豆天美| 香蕉97碰碰视频免费| 国产一卡二卡3卡四卡免费| 亚洲不卡无码av中文字幕| 亚洲香蕉在线观看| 国产成人免费AV在线播放| 免费看国产一级片| 亚洲第一区二区快射影院| 色欲色香天天天综合网站免费| 超清首页国产亚洲丝袜| 无码天堂亚洲国产AV| 成人免费a级毛片| 亚洲成年人免费网站| 免费高清国产视频|