校园电商项目3(基于SSM)——配置Maven

时间:2021-06-25 21:25:42

步骤一:添加必要文件夹

  先在src/main/resources下添加两个文件夹

校园电商项目3(基于SSM)——配置Maven

接着在webapp文件夹下添加一个resources文件夹存放我们的静态网页内容

  WEB-INF里的文件是不会被客户端访问的,它里面有一个web.xml文件,它是用来配置初始化信息的。

  target目录主要用来存放项目构建后的文件和目录,jar包、war包和编译后的class文件都会放在这,是创建maven项目后生成的。

步骤二:创建必要包

  web:控制层

  service:业务逻辑层

  service.impl:业务逻辑实现

  dao:与数据相关操作

  dto:数据传输对象的封装

  (=゚ω゚)ノ

  简单介绍一下什么是dto

  DTO (经过处理后的PO,可能增加或者减少PO的属性):Data Transfer Object数据传输对象

  主要用于远程调用等需要大量传输对象的地方。
  比如我们一张表有100个字段,那么对应的PO就有100个属性。
  但是我们界面上只要显示10个字段,
  客户端用WEB service来获取数据,没有必要把整个PO对象传递到客户端,
  这时我们就可以用只有这10个属性的DTO来传递结果到客户端,这样也不会暴露服务端表结构.到达客户端以后,如果用这个对象来对应界面显示,那此时它的身份就转为VO。

  

  enums:枚举对象存放包

  interceptor:拦截器

  util:工具类包

步骤三:引入jar包

  由于这个项目是用maven来管理的,所以我们通过配置pom.xml来引入jar包

  在<dependencies>标签里添加<dependency>标签来引入jar包

  https://mvnrepository.com/   我们可以去官网找寻我们想要的jar包,搜索复制就ok,非常容易

  首先需要junit,用于测试

  ②logback classic module

  校园电商项目3(基于SSM)——配置Maven校园电商项目3(基于SSM)——配置Maven

<!-- https://mvnrepository.com/artifact/ch.qos.logback/logback-classic -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
<scope>test</scope>
</dependency>

  这里说一下<scope>标签,scope的值是可以改变jar包的出现范围

校园电商项目3(基于SSM)——配置Maven

  我们希望logback可以出现在项目线上环境中,所以我们把默认的<scope>标签去掉,默认为compile

  接下来配置Spring全家桶

          <!-- Spring -->
<!-- 1)Spring核心 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- 2)Spring DAO层 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- 3)Spring web -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- 4)Spring test -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring.version}</version>
               <scope>test</scope>
</dependency>

  接下来将变量spring.version赋值

<properties>
<spring.version>4.3.7.RELEASE</spring.version>
</properties>

  还有一些其他的jar包

  Servlet web,json解析,commons-collections,最后一个是Map工具类,对标准java Collection的扩展

  spring-core.jar需要commons-collections.jar

<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency> <!-- 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> <dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2</version>
</dependency>

  mybatis:

<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.2</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.1</version>
</dependency>

  数据库相关jar包

<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.37</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.1.2</version>
</dependency>