使用IDEA创建maven的SSM项目

使用IDEA2017.3.1创建Maven项目,搭建SSM

1、第一步:创建Maven项目
在这里插入图片描述
2、点击Next,填写包名和项目名
在这里插入图片描述
3、点击Next,选择自己安装的Maven版本
在这里插入图片描述

4、点击Next,确认项目名和项目路径,点击Finish
在这里插入图片描述

5、点击Finish,等待加载完毕后,出现的maven项目的目录如下:
在这里插入图片描述

6、创建缺少的java文件,以及resources文件。并修改文件的类型
在这里插入图片描述

7、将java文件修改为Sources Root类型,表示可以创建class类,即可编译的文件类型
在这里插入图片描述

将resources修改为Resources Root 表示可以存放配置文件,可编译的文件夹
在这里插入图片描述
8、复制pom文件到项目中

<?xmlversion="1.0"encoding="UTF-8"?>

<projectxmlns="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.0http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>cn.bdqn.ssm</groupId>
<artifactId>SSMDemo</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>

<name>SSMDemoMavenWebapp</name>
<!--FIXMEchangeittotheproject'swebsite-->
<url>http://www.example.com</url>

<properties>
	<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	<maven.compiler.source>1.7</maven.compiler.source>
	<maven.compiler.target>1.7</maven.compiler.target>
	
	<!--spring版本号-->
	<spring.version>3.2.13.RELEASE</spring.version>
	<!--mybatis版本号-->
	<mybatis.version>3.4.1</mybatis.version>
	<!--log4j日志文件管理包版本-->
	<slf4j.version>1.7.7</slf4j.version>
	<log4j.version>1.2.17</log4j.version>
</properties>

<profiles>
	<profile>
		<id>jdk-1.7</id>
		<activation>
			<activeByDefault>true</activeByDefault>
			<jdk>1.7</jdk>
		</activation>
		<properties>
			<maven.compiler.source>1.7</maven.compiler.source>
			<maven.compiler.target>1.7</maven.compiler.target>
			<maven.compiler.compilerVersion>1.7</maven.compiler.compilerVersion>
		</properties>
	</profile>
</profiles>

<dependencies>
	<dependency>
		<groupId>junit</groupId>
		<artifactId>junit</artifactId>
		<version>4.12</version>
		<!--表示开发的时候引入,发布的时候不会加载此包-->
		<scope>test</scope>
	</dependency>
	<dependency>
		<groupId>javax.servlet</groupId>
		<artifactId>javax.servlet-api</artifactId>
		<version>3.1.0</version>
	</dependency>
<!--spring核心包-->
	<dependency>
		<groupId>org.springframework</groupId>
		<artifactId>spring-core</artifactId>
		<version>${spring.version}</version>
	</dependency>
	
	<dependency>
		<groupId>org.springframework</groupId>
		<artifactId>spring-web</artifactId>
		<version>${spring.version}</version>
	</dependency>
	
	<dependency>
		<groupId>org.springframework</groupId>
		<artifactId>spring-oxm</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-jdbc</artifactId>
		<version>${spring.version}</version>
	</dependency>
	
	<dependency>
		<groupId>org.springframework</groupId>
		<artifactId>spring-webmvc</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-context-support</artifactId>
		<version>${spring.version}</version>
	</dependency>

	<dependency>
		<groupId>org.springframework</groupId>
		<artifactId>spring-test</artifactId>
		<version>${spring.version}</version>
	</dependency>
	<!--mybatis核心包-->
	<dependency>
		<groupId>org.mybatis</groupId>
		<artifactId>mybatis</artifactId>
		<version>${mybatis.version}</version>
	</dependency>
	<!--mybatis/spring包-->
	<dependency>
		<groupId>org.mybatis</groupId>
		<artifactId>mybatis-spring</artifactId>
		<version>1.3.0</version>
	</dependency>
	<!--导入javaeejar包-->
	<dependency>
		<groupId>javax</groupId>
		<artifactId>javaee-api</artifactId>
		<version>7.0</version>
	</dependency>
	<!--导入Mysql数据库链接jar包-->
	<dependency>
		<groupId>com.mysql</groupId>
		<artifactId>jdbc</artifactId>
		<version>5.1.0</version>
	</dependency>
	<!--导入dbcp的jar包,用来在applicationContext.xml中配置数据库-->
	<dependency>
		<groupId>commons-dbcp</groupId>
		<artifactId>commons-dbcp</artifactId>
		<version>1.4</version>
	</dependency>

	<!--JSTL标签类-->
	<dependency>
		<groupId>jstl</groupId>
		<artifactId>jstl</artifactId>
		<version>1.2</version>
	</dependency>
	<!--日志文件管理包-->
	<!--logstart-->
	<dependency>
		<groupId>log4j</groupId>
		<artifactId>log4j</artifactId>
		<version>${log4j.version}</version>
	</dependency>
	
	<!--格式化对象,方便输出日志-->
	<dependency>
		<groupId>com.alibaba</groupId>
		<artifactId>fastjson</artifactId>
		<version>1.2.17</version>
	</dependency>
	
	<dependency>
		<groupId>org.slf4j</groupId>
		<artifactId>slf4j-api</artifactId>
		<version>${slf4j.version}</version>
	</dependency>
	
	<dependency>
		<groupId>org.slf4j</groupId>
		<artifactId>slf4j-log4j12</artifactId>
		<version>${slf4j.version}</version>
	</dependency>
	<!--logend-->
	
	<!--映入JSON-->
	<dependency>
		<groupId>org.codehaus.jackson</groupId>
		<artifactId>jackson-mapper-asl</artifactId>
		<version>1.9.13</version>
	</dependency>
	
	<dependency>
		<groupId>com.fasterxml.jackson.core</groupId>
		<artifactId>jackson-core</artifactId>
		<version>2.8.3</version>
	</dependency>
	
	<dependency>
		<groupId>com.fasterxml.jackson.core</groupId>
		<artifactId>jackson-databind</artifactId>
		<version>2.8.3</version>
	</dependency>
	
	<dependency>
		<groupId>com.fasterxml.jackson.core</groupId>
		<artifactId>jackson-annotations</artifactId>
		<version>2.8.3</version>
	</dependency>

	<!--上传组件包-->
	<dependency>
		<groupId>commons-fileupload</groupId>
		<artifactId>commons-fileupload</artifactId>
		<version>1.3.1</version>
	</dependency>
	
	<dependency>
		<groupId>commons-io</groupId>
		<artifactId>commons-io</artifactId>
		<version>2.5</version>
	</dependency>
	
	<dependency>
		<groupId>commons-codec</groupId>
		<artifactId>commons-codec</artifactId>
		<version>1.10</version>
	</dependency>
	
	<dependency>
		<groupId>org.apache.commons</groupId>
		<artifactId>commons-lang3</artifactId>
		<version>3.4</version>
	</dependency>
	
	<dependency>
		<groupId>org.hibernate</groupId>
		<artifactId>hibernate-validator</artifactId>
		<version>4.2.0.Final</version>
	</dependency>
</dependencies>
	
<build>
	<finalName>SSMDemo</finalName>
	<pluginManagement><!--lockdownpluginsversionstoavoidusingMavendefaults(maybemovedtoparentpom)-->
	<plugins>
		<plugin>
			<artifactId>maven-clean-plugin</artifactId>
			<version>3.0.0</version>
		</plugin>
	          <plugin>
		         <artifactId>maven-compiler-plugin</artifactId>
			<version>3.7.0</version>
		</plugin>
		<plugin>
			<artifactId>maven-surefire-plugin</artifactId>
			<version>2.20.1</version>
		</plugin>
		<plugin>
			<artifactId>maven-war-plugin</artifactId>
			<version>3.2.0</version>
		</plugin>
		<plugin>
			<artifactId>maven-install-plugin</artifactId>
			<version>2.5.2</version>
		</plugin>
		<plugin>
			<artifactId>maven-deploy-plugin</artifactId>
			<version>2.8.2</version>
		</plugin>
		<plugin>
			<artifactId>maven-resources-plugin</artifactId>
			<version>2.6</version>
			<executions>
				<execution>
					<id>copy-xmls</id>
					<phase>process-resources</phase>
					<goals>
						<goal>copy-resources</goal>
					</goals>
					<configuration>
						<outputDirectory>${basedir}/target/classes</outputDirectory>
							<resources>
								<resource>
									<directory>${basedir}/src/main/java</directory>
									<includes>
										<include>**/*.xml</include>
									</includes>
								</resource>
						</resources>
					</configuration>
				</execution>
			</executions>
		</plugin>
	</plugins>
	</pluginManagement>
</build>
</project>

注:
1、在导入pom.xml文件的时候,要注意版本和 plugin 的问题,由于idea在builde的时候 或者执行 maven test 的时候 ,才能把源码文件夹里的xml文件与java文件一起搬到target/classes 里面去 ,别人如果导入你的这个maven工程也不用设置idea了。
但是,在eclipse里面,即使pom不做这个特别配置,也没问题,原因是eclipse在build工程的时候不依赖maven的pom文件。eclipse的编译器不会忽略源码文件夹里面的xml文件。
所以如果不导入以下插件

	<plugin>
	        <artifactId>maven-resources-plugin</artifactId>
	        <version>2.6</version>
	        <executions>
	                <execution>
                    <id>copy-xmls</id>
                    <phase>process-resources</phase>
                    <goals>
                            <goal>copy-resources</goal>
                    </goals>
                    <configuration>
	                         <outputDirectory>${basedir}/target/classes</outputDirectory>
	                                 <resources>
                                      <resource>
                                     	<directory>${basedir}/src/main/java</directory>
                                          <includes>
                                                  <include>**/*.xml</include>
                                          </includes>
                                        </resource>
	                         </resources>
	                 </configuration>
	                </execution>
	        </executions>
	</plugin>

就会出现找不到映射文件的问题!

9、将事先写好的ssm代码复制粘贴到包cn.smbms下。
注意:在导入springmvc-servlet.xml文件的时候,
<mvc:resouces />标签 可能会报错,原因是 在默认的xsd中,没有resources这个属性,需要在引入
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
的后面,将spring-mvc的版本变成spring-mvc-3.2 才能生效!

10、将该导入的文件导入到项目中。
在这里插入图片描述

11、运行项目
当编译后的文件出现以下情况,才可以正常的去访问和登录。如果没有出现以下情况,需要先将项目clean一下,然后再test运行,看是否生成,如果生成去测试即可!
在这里插入图片描述

以上就是通过IDEA2017.3.1版本创建SSM的maven项目的步骤!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值