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作为持续集成管理

……

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值