1. 程式人生 > >搭建Maven版SSM工程

搭建Maven版SSM工程

down hang utf typealias 加載數據 tor prop pil fig

Maven對於開發人員來說是一個很方便的jar管理工具,可以自定下載所需要的jar包只要定義好版本即。

剛開始自己學著搭建maven,發現網上每個人搭建的都不一樣,都有自己的風格,我就自己嘗試讀懂他們的配置文件來寫一個屬於自己的。

一方面是可以提供大家學習,一方面也是為記性不好自己,保留一個備份。

幹Java這個行業,剛開始認為Java是面向對象編程,等以後就會發現幹Java其實是面向百度編程~很真實

開始正題:

我們需要一個下載Maven,這個大家面向百度就可以了。就不詳細說了。

技術分享圖片

新建新工程

技術分享圖片

groupid和artifactId被統稱為“坐標”是為了保證項目唯一性而提出的,如果你要把你項目弄到maven本地倉庫去,你想要找到你的項目就必須根據這兩個id去查找。
  groupId一般分為多個段,這裏我只說兩段,第一段為域,第二段為公司名稱。域又分為org、com、cn等等許多,其中org為非營利組織,com為商業組織。舉個apache公司的tomcat項目例子:這個項目的groupId是org.apache,它的域是org(因為tomcat是非營利項目),公司名稱是apache,artigactId是tomcat。

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

看一下我之前做練習的工程包分布

技術分享圖片

log4j.properties日誌文件

技術分享圖片

這個文件是對數據庫優化的配置文件SqlMapConfig.xml

技術分享圖片

這個是我的SSM-mybatis.xml文件

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">
<property name="locations">
<!--加載數據庫連接-->
<list>
<value>classpath:db.properties</value>
</list>
<!--加載加入外部mybatis配置 文件-->
</property>
</bean>
<!--連接數據庫-->
<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource">
<property name="driverClassName" value="${jdbc_driver}"/>
<property name="url" value="${jdbc_url}"/>
<property name="username" value="${jdbc_username}"/>
<property name="password" value="${jdbc_password}"/>
<property name="maxIdle" value="${jdbc_maxIdle}"/>
</bean>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<!--配置Mapper.xml文件的路徑-->
<property name="typeAliasesPackage" value="com.myword.user.po"/>
<property name="mapperLocations" value="classpath*:mapper/*Mapper.xml"/>
<!--加載mybatis配置文件-->

<property name="configLocation" value="classpath:SqlMapConfig.xml"></property>

</bean>
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<!--配置Mapper接口的路徑-->
<property name="basePackage" value="com.myword.*.mapper"/>
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
</bean>

這個是我的SSM-servlet.xml

<!--配置SpringMVC-->

<!--mvc的註解驅動-->
<!--作用:可以用註解的方式,而不用每個類都寫bean-->
<mvc:annotation-driven/>

<!--註解的包掃描-->
<!--作用:將這個配置的包下所有類都相當於配置好了bean, 調用時使用註解-->
<!--每個bean默認的id是首字母小寫-->
<!--正常不該寫在此文件, 但目前就一個配置文件-->
<context:component-scan base-package="com.myword"/>

<!--默認的資源文件的處理方式-->
<!--類似js,css,img等資源文件, 本身並不需要springMVC做處理-->
<mvc:default-servlet-handler/>

<!--面向切面-->
<!--<aop:aspectj-autoproxy></aop:aspectj-autoproxy>-->

<!--視圖解析器-->
<!--根據代碼的邏輯處理, 配置正確的jsp/html等文件路徑-->
<!--id固定-->
<bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">

<!--prefix - 前綴-->
<!--suffix - 後綴-->
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
<property name="prefix" value="/WEB-INF/jsps/"/>
<property name="suffix" value=".jsp"/>

</bean>

web.xml文件

技術分享圖片

pom.xml

<?xml version="1.0" encoding="UTF-8"?>

<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>com.Myword</groupId>
<artifactId>Myword</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>

<name>Myword Maven Webapp</name>
<!-- FIXME change it to the project‘s website -->
<url>http://www.example.com</url>

<properties>
<spring.version>4.2.6.RELEASE</spring.version>
<mybatis.version>3.4.0</mybatis.version>
<slf4j.version>1.7.7</slf4j.version>
<log4j.version>1.2.17</log4j.version>
<jackson.version>2.7.1</jackson.version>
</properties>


<dependencies> 
放導入的文件!
</dependencies>

<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>

<!-- 添加jstl依賴 -->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>

<!--阿裏json包-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.7</version>
</dependency>

<!--jdbc連接池-->
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>commons-pool</groupId>
<artifactId>commons-pool</artifactId>
<version>1.6</version>
</dependency>

<!-- spring核心??-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</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-core</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-jms</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-tx</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${spring.version}</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.7.4</version>
</dependency>
<dependency>
<groupId>aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.5.4</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.11</version>
</dependency>
<!--mybatis核心??-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.1</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.0</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.21</version>
</dependency>
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.1.2</version>
<type>jar</type>
</dependency>

<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.5</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<!--json所需要的依賴-->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.7.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.7.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.7.3</version>
</dependency>

</dependencies>


<build>
<finalName>Myword</finalName>
<pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
<plugins>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>3.0.0</version>
</plugin>
<!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging -->
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.2</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>
</plugins>


</pluginManagement>
</build>
</project>

Maven怎麽下載jar包:

在這裏給大家提供一個網址:http://mvnrepository.com

技術分享圖片

技術分享圖片

技術分享圖片

搭建Maven版SSM工程