校园商铺-2项目设计和框架搭建-5配置maven

/src/main/java 存放业务的Java代码
/src/main/resources 存储项目所用到的资源文件,如各种Spring,batis,日志的配置文件
/src/test/java 单元测试所设计的Java代码
/src/test/resources 单元测试所设计到的配置文件

新建source folder,命名为src/main/resources/spring,用来存放Spring相关的配置信息
新建source folder,命名为src/main/resources/mapper,用来存放dao中每个方法对应的sql。设计的sql在maven中配置,不需要再写dao的实现类,mybatis会自动帮我们去实现
maven dependencies存放maven管理的Java报,通过pom.xml指定下载
apache tomcat 存放tomcat用到的jar包
JRE System Library 存放Java运行时用到的一些jar包
/src/main/webapp存放前端的静态资源,如jsp,html,js,css等
通常有2个文件夹
/src/main/webapp/resources:js,css,图片等,没有就创建一个folder,命名为resources
/src/main/webapp/WEB-INF:外部浏览器是不能直接访问的,如localhost:8080/o2o/WEB-INF/index.jsp报404资源不存在
/src/main/webapp/web.xml用来初始化配置信息的

	<welcome-file-list><!--输入项目名,默认加载welcome-file-list的内容-->
		<welcome-file>index.jsp</welcome-file>
		<welcome-file>index.html</welcome-file>
	</welcome-file-list>

此外它还可以用来初始化servlet,servlet-mapping ,filter,listener,启动加载级别等
target目录主要用来存放项目构建后的文件和目录,jar包,war包,文件等
在com.imooc.o2o新建package,命名为web,web就是controller层,用于存放controller控制器
在com.imooc.o2o新建package,命名为service.impl,
在com.imooc.o2o新建package,命名为dao,负责数据库的操作、文件的读写操作,负责Redis的缓存操作,总之与数据相关的操作都会存放在这里,不需要创建实现,用MyBatis可以直接在接口实现每个方法,记载/src/main/resources/mapper中实现接口的逻辑
在com.imooc.o2o新建package,命名为dto,用来弥补entity的不足。例如entity返回一个商品列表,带有是否返回成功的一个标识,此时单靠商品列表是不能实现的,需要在外面在封装一层,即dto会有一个商品列表,还有一个status,就能满足要求了
在com.imooc.o2o新建package,命名为enums,即枚举类型都会存放在这里面
在com.imooc.o2o新建package,命名为interceptor,拦截器的代码将会写在这里
在com.imooc.o2o新建package,命名为util,通用的工具类就会存放在util里

引入jar包

<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/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.csj2018</groupId>
	<artifactId>o2o</artifactId>
	<packaging>war</packaging>
	<version>0.0.1-SNAPSHOT</version>
	<name>o2o Maven Webapp</name>
	<url>http://maven.apache.org</url>
	<properties>
		<spring.version>4.3.7.RELEASE</spring.version>
	</properties>
	<dependencies>
		<!-- 1 -->
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.12</version>
			<scope>test</scope><!--只希望出现在测试中 -->
		</dependency>
		<!-- 2https://mvnrepository.com/artifact/ch.qos.logback/logback-classic -->
		<dependency>
			<groupId>ch.qos.logback</groupId>
			<artifactId>logback-classic</artifactId>
			<version>1.2.3</version>
			<!-- 希望线上也会打印log,因此去掉 <scope>test</scope>,默认compile -->
		</dependency>
		<!-- Spring -->
		<!-- 3.包含Spring框架基本的核心工具类。Spring其他组件都要用到这个包里的类,是其他组件的基本核心 -->
		<!-- https://mvnrepository.com/artifact/org.springframework/spring-core -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-core</artifactId>
			<version>${spring.version}</version>
		</dependency>
		<!-- 4.这个jar文件是所有应用都要用到的,它包含访问配置文件、创建和管理bean以及进行Inversion off Control/Dependency 
			Injection(IoC.DI)操作相关的所有累,如果应用只需基本的IoC/DI支持,引入spring-core和spring-beas.jar文件就可以了 -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-beans</artifactId>
			<version>${spring.version}</version>
		</dependency>
		<!-- 5.这个jar文件为Spring核心提供了大量扩展。可以找到使用Spring ApplicationContext特性时所需的全部***所需的全部类,instrumentation组件以及检验Validation方面的相关类 -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context</artifactId>
			<version>${spring.version}</version>
		</dependency>
		<!-- 6.这个jar文件包含对Spring对JDBC数据访问进行封装的所有类 -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-jdbc</artifactId>
			<version>${spring.version}</version>
		</dependency>
		<!-- 7.为JDBC、Hibernate、JDO、JPA等提供的一致的声明式和编程式事务管理 -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-tx</artifactId>
			<version>${spring.version}</version>
		</dependency>

		<!-- 8.Spring web包含Web应用开发时,用到Spring框架时所需的核心类,包括自动载入WebApplicationControl -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-web</artifactId>
			<version>${spring.version}</version>
		</dependency>
		<!-- 9.包含SpringMVC框架相关的所有类 -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>${spring.version}</version>
		</dependency>
		<!-- 10.Spring text对UNIT等测试框架的简单封装 -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-test</artifactId>
			<version>${spring.version}</version>
			<scope>test</scope>
		</dependency>
		<!-- 11.javax.servlet -->
		<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
			<version>3.1.0</version>
			<scope>provided</scope>
		</dependency>
		<!-- 12.json解析 -->
		<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
			<version>2.8.7</version>
		</dependency>

		<!-- 13.Map工具类对标准Java Collection的货站 spring-core.jar需要commons-collections.jar -->
		<!-- https://mvnrepository.com/artifact/commons-collections/commons-collections -->
		<dependency>
			<groupId>commons-collections</groupId>
			<artifactId>commons-collections</artifactId>
			<version>3.2</version>
		</dependency>

		<!-- 14. -->
		<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
		<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis</artifactId>
			<version>3.4.2</version>
		</dependency>

		<!-- 15. -->
		<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->
		<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis-spring</artifactId>
			<version>1.3.1</version>
		</dependency>

		<!-- 16.数据库 -->
		<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.37</version>
		</dependency>
		<!-- 17.连接池 -->
		<!-- https://mvnrepository.com/artifact/c3p0/c3p0 -->
		<dependency>
			<groupId>c3p0</groupId>
			<artifactId>c3p0</artifactId>
			<version>0.9.1.2</version>
		</dependency>
	</dependencies>
	<build>
		<finalName>o2o</finalName>
		<plugins>
			<plugin>
				<!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-compiler-plugin -->
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.8.0</version>
				<configuration>
					<source>1.8</source>
					<target>1.8</target>
					<encoding>UTF-8</encoding>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>
posted on 2019-09-19 10:43  singleSpace  阅读(380)  评论(0编辑  收藏  举报