雖然如今流行SpringBoot了,可是對於之前的SSM配置地獄的框架搭建整合作一個簡單的Demo前端
首先建立新的項目,選擇Maven管理咱們的依賴 如圖所示:java
固然我是爲了作列子,因此採用的中文,mysql
而後選擇本身的maven地址,這裏稍微注意的是,Maven默認讀取的是 .m2/setting.xml做爲配置文件,web
我改動了配置文件的相關下載和配置文件存儲路徑,因此我選用我本身的配置文件做爲啓動配置spring
而後等待下載,下載完以後,項目構建以下:sql
而後建立java 文件夾,做爲咱們存放代碼的文件,並在下面建立出響應的 package 模塊 數據庫
最後就是這樣的apache
——————————前期的基本準備工做到此爲止,下面開始搭建環境————————————api
先把最後的樣子貼出來,能夠先把結構搭起來,再填充內容:spring-mvc
1:優先配置 maven的 pom.xml 導入相關依賴
1 <dependencies>
2 <!--Spring-->
3 <dependency>
4 <groupId>org.springframework</groupId>
5 <artifactId>spring-core</artifactId>
6 <version>5.1.5.RELEASE</version>
7 </dependency>
8 <dependency>
9 <groupId>org.springframework</groupId>
10 <artifactId>spring-beans</artifactId>
11 <version>5.1.5.RELEASE</version>
12 </dependency>
13 <dependency>
14 <groupId>org.springframework</groupId>
15 <artifactId>spring-context</artifactId>
16 <version>5.1.5.RELEASE</version>
17 </dependency>
18 <dependency>
19 <groupId>org.springframework</groupId>
20 <artifactId>spring-jdbc</artifactId>
21 <version>5.0.8.RELEASE</version>
22 </dependency>
23 <dependency>
24 <groupId>org.springframework</groupId>
25 <artifactId>spring-tx</artifactId>
26 <version>5.0.8.RELEASE</version>
27 </dependency>
28 <dependency>
29 <groupId>org.springframework</groupId>
30 <artifactId>spring-web</artifactId>
31 <version>5.0.8.RELEASE</version>
32 </dependency>
33 <dependency>
34 <groupId>org.springframework</groupId>
35 <artifactId>spring-webmvc</artifactId>
36 <version>5.0.8.RELEASE</version>
37 </dependency>
38 <dependency>
39 <groupId>org.springframework</groupId>
40 <artifactId>spring-test</artifactId>
41 <version>5.0.8.RELEASE</version>
42 </dependency>
43
44 <!--MyBatis 依賴-->
45 <dependency>
46 <groupId>org.mybatis</groupId>
47 <artifactId>mybatis</artifactId>
48 <version>3.4.6</version>
49 </dependency>
50 <dependency>
51 <groupId>org.mybatis</groupId>
52 <artifactId>mybatis-spring</artifactId>
53 <version>1.3.2</version>
54 </dependency>
55
56 <!--鏈接池 採用阿里的druid-->
57 <dependency>
58 <groupId>com.alibaba</groupId>
59 <artifactId>druid</artifactId>
60 <version>1.1.6</version>
61 </dependency>
62 <!--mysql-->
63 <dependency>
64 <groupId>mysql</groupId>
65 <artifactId>mysql-connector-java</artifactId>
66 <version>5.1.44</version>
67 </dependency>
68 <!--lombok 推薦使用這個依賴,註解解決掉set get...-->
69 <dependency>
70 <groupId>org.projectlombok</groupId>
71 <artifactId>lombok</artifactId>
72 <version>1.16.22</version>
73 </dependency>
74 <!--jackson-->
75 <dependency>
76 <groupId>com.fasterxml.jackson.core</groupId>
77 <artifactId>jackson-annotations</artifactId>
78 <version>2.9.7</version>
79 </dependency>
80 <!-- 通用mapper -->
81 <dependency>
82 <groupId>tk.mybatis</groupId>
83 <artifactId>mapper</artifactId>
84 <version>4.1.5</version>
85 </dependency>
86 <!--單元測試 Junit-->
87 <dependency>
88 <groupId>junit</groupId>
89 <artifactId>junit</artifactId>
90 <version>4.12</version>
91 </dependency>
92 <!--日誌打印-->
93 <dependency>
94 <groupId>ch.qos.logback</groupId>
95 <artifactId>logback-core</artifactId>
96 <version>1.2.3</version>
97 </dependency>
98 <dependency>
99 <groupId>ch.qos.logback</groupId>
100 <artifactId>logback-classic</artifactId>
101 <version>1.2.3</version>
102 </dependency>
103 <dependency>
104 <groupId>org.slf4j</groupId>
105 <artifactId>slf4j-api</artifactId>
106 <version>1.7.25</version>
107 </dependency>
108 </dependencies>
109
110 <build>
111 <finalName>ChatRobot</finalName>
112 <plugins>
113 <plugin>
114 <groupId>org.apache.maven.plugins</groupId>
115 <artifactId>maven-compiler-plugin</artifactId>
116 <configuration>
117 <!-- 設置JDK版本 -->
118 <source>1.8</source>
119 <target>1.8</target>
120 </configuration>
121 </plugin>
122 </plugins>
123 </build>
而後配置web.xml
<!-- 配置監聽器加載spring -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- 配置SpringBeans的配置文件所在目錄-->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/applicationContext.xml</param-value>
</context-param>
<!-- 配置 SpringMVC前端控制器 -->
<servlet>
<servlet-name>springMVC</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<!-- 修改默認springmvc加載的配置文件路徑 -->
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/springmvc.xml</param-value>
</init-param>
<!-- 配置Spring的啓動時機 >=0隨着容器一塊兒啓動 <0第一次來請求時啓動 -->
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springMVC</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<!-- 配置編碼方式-->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern> </filter-mapping> <!--設置一個默認訪問的頁面--> <welcome-file-list> <welcome-file>/WEB-INF/index.jsp</welcome-file> </welcome-file-list>
web.xml中指定的文件,咱們循序漸進的造出來
依次爲:applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.2.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.2.xsd">
<!-- 配置註解掃描 -->
<context:component-scan base-package="com.test.ssm.service" />
<!-- 加載數據源所須要的參數配置文件 -->
<context:property-placeholder location="classpath:jdbc.properties"/>
<!-- 配置 數據源 -->
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
<property name="driverClassName" value="${jdbc.driver}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</bean>
<!-- 讓Spring管理myBatis的會話工廠 SqlsessionFactory -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean" >
<!--注入數據庫鏈接池-->
<property name="dataSource" ref="dataSource"/>
<!--掃描Model包,使用別名-->
<property name="typeAliasesPackage" value="com.test.ssm.model"/>
<!-- 掃描sql配置文件: mapper須要的xml文件 -->
<property name="mapperLocations" value="classpath:mapper/*.xml"/>
</bean>
<!-- 配置掃描Dao接口包,動態實現Dao接口,注入到spring容器中 -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<!--注入Dao-->
<property name="basePackage" value="com.test.ssm.dao"/>
<!--注入sqlSession工廠-->
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
</bean>
<!--配置事務管理器-->
<bean id="trancationManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
<!--開啓聲明式事務-->
<tx:annotation-driven transaction-manager="trancationManager"/>
</beans>
其次:springmvc.xml
1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc" 4 xmlns:context="http://www.springframework.org/schema/context" 5 xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" 6 xsi:schemaLocation="http://www.springframework.org/schema/beans 7 http://www.springframework.org/schema/beans/spring-beans-3.2.xsd 8 http://www.springframework.org/schema/mvc 9 http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd 10 http://www.springframework.org/schema/context 11 http://www.springframework.org/schema/context/spring-context-3.2.xsd"> 12 13 <!-- 1.配置註解掃描位置 --> 14 <context:component-scan base-package="com.test.ssm.controller" /> 15 16 <!-- 2.配置註解處理映射 3.配置適配器--> 17 <mvc:annotation-driven /> 18 19 <!-- 4.配置springmvc視圖解析器 視圖解析器解析的視頻路徑爲:前綴 + 後綴 --> 20 <bean 21 class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 22 <property name="prefix" value="/WEB-INF/views" /> 23 <property name="suffix" value=".jsp" /> 24 </bean> 25 </beans>
而後 applicationContext.xml 又依賴新的配置文件,逐一配置出來
jdbc.properties
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8
jdbc.username=root
jdbc.password=root
logback.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <configuration debug="true">
3 <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
4 <encoder>
5 <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
6 </encoder>
7 </appender>
8 <root level="INFO">
9 <appender-ref ref="STDOUT"/>
10 </root>
11 </configuration>
運行服務器,看看效果
自動跳轉到了默認的index.jsp
測試一下數據庫,查詢一點數據看看可否連通
發現本身都不太熟悉了,但願之後再也用不上!