Maven学习笔记(三.用于Web项目中)

    看了一段时间网上的教程,也会用了一些功能,于是尝试把maven应用于我自己的web项目中。
 
其实把maven用在web项目中非常简单,maven本来就有这样的功能(site)。
 
新建maven项目,只需设置pom.xml中的packaging为war,增加相关的依赖,这里有个sample
 
<project xmlns="http://maven.apache.org/pom/4.0.0" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">  <modelversion>4.0.0</modelversion>  <groupid>cn.noside</groupid>  <artifactid>nportal</artifactid>  <version>0.0.1-snapshot</version>  <packaging>war</packaging>  <description>	</description>  <properties>	<spring.version>3.0.5.release</spring.version>	<log4j.version>1.2.16</log4j.version>	  </properties>  <dependencies>		<dependency>            <groupid>org.springframework</groupid>            <artifactid>spring-orm</artifactid>            <version>${spring.version}</version>        </dependency>		<dependency>            <groupid>org.springframework</groupid>            <artifactid>spring-jdbc</artifactid>            <version>${spring.version}</version>        </dependency>		  <dependency>            <groupid>org.springframework</groupid>            <artifactid>spring-core</artifactid>            <version>${spring.version}</version>            <exclusions>                <exclusion>                    <groupid>commons-logging</groupid>                    <artifactid>commons-logging</artifactid>                </exclusion>            </exclusions>        </dependency>        <dependency>            <groupid>org.springframework</groupid>            <artifactid>spring-test</artifactid>            <version>${spring.version}</version>            <scope>test</scope>            <exclusions>                <exclusion>                    <groupid>commons-logging</groupid>                    <artifactid>commons-logging</artifactid>                </exclusion>            </exclusions>        </dependency>        <dependency>            <groupid>org.springframework</groupid>            <artifactid>spring-context</artifactid>            <version>${spring.version}</version>        </dependency>        <dependency>            <groupid>org.springframework</groupid>            <artifactid>spring-aop</artifactid>            <version>${spring.version}</version>        </dependency>        <dependency>            <groupid>org.springframework</groupid>            <artifactid>spring-aspects</artifactid>            <version>${spring.version}</version>        </dependency>        <dependency>            <groupid>org.springframework</groupid>            <artifactid>spring-tx</artifactid>            <version>${spring.version}</version>        </dependency>		<dependency>			<groupid>org.springframework</groupid>			<artifactid>spring-context-support</artifactid>			<version>${spring.version}</version>			<exclusions>				<exclusion>					<groupid>quartz</groupid>					<artifactid>quartz</artifactid>				</exclusion>			</exclusions>		</dependency>		<dependency>            <groupid>org.springframework</groupid>            <artifactid>spring-web</artifactid>            <version>${spring.version}</version>            <exclusions>                <exclusion>                    <groupid>commons-logging</groupid>                    <artifactid>commons-logging</artifactid>                </exclusion>            </exclusions>        </dependency>        <dependency>            <groupid>org.springframework</groupid>            <artifactid>spring-webmvc</artifactid>            <version>${spring.version}</version>            <exclusions>                <exclusion>                    <groupid>commons-logging</groupid>                    <artifactid>commons-logging</artifactid>                </exclusion>            </exclusions>        </dependency>        <dependency>        	<groupid>log4j</groupid>        	<artifactid>log4j</artifactid>        	<version>${log4j.version}</version>        </dependency>        <dependency>  		    <groupid>commons-logging</groupid>  		    <artifactid>commons-logging</artifactid>  		    <version>1.0.4</version>  		    <exclusions>  		        <exclusion>  		            <groupid>javax.servlet</groupid>  		            <artifactid>servlet-api</artifactid>  		        </exclusion>  		    </exclusions>  		</dependency>        <dependency>  		    <groupid>javax.servlet</groupid>  		    <artifactid>jstl</artifactid>  		    <version>1.2</version>		</dependency>        <dependency>  		    <groupid>commons-dbcp</groupid>  		    <artifactid>commons-dbcp</artifactid>  		    <version>1.3</version>		</dependency>        <dependency>  		    <groupid>mysql</groupid>  		    <artifactid>mysql-connector-java</artifactid>  		    <version>5.1.13</version>		</dependency>  </dependencies></project>
 
完成了pom.xml,需要在/{project_home}/src/main/webapp里面增加目录"web-inf",再在"web-inf"里面增加web.xml文件。到这里就完成了构建工作。
 
构建只需简单右键项目->run as->maven package,生成的war包回存放于target文件夹中。
 
相比于ant,maven实在是太简单了,因为maven不需要自己编写说明项目源码放在什么地方,资源文件放在哪里,编译后放在哪里,maven已经帮我们这样做了,唯一的代价就是需要依照maven规定的项目结构(否则需要增加插件,指明源码与目标路径,这样的话相比ant貌似没有优势)。
 
一连三篇文章,简述了我在一般项目中如何使用maven,但是maven的学习不仅仅这么少,maven作为一个项目管理工具,不仅仅是依赖管理与build项目而已。下面列举一些maven需要学习的重点
1.maven配置,包括settings的配置(大陆居然访问不到maven主仓库……settings配置就非常重要了),包括如何建立私有仓库,项目团队如何使用仓库。
2.maven生命周期
3.maven管理项目模块,有时我们把一个项目分成core、web、dao等几部分
4.maven插件
5.maven作为持续集成管理
……
 
 
 
 

你可能感兴趣的:(java,工作)