亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Spring Mvc + Spring + Mybatis3 搭建Web工程詳解

2019-11-14 09:46:12
字體:
來源:轉載
供稿:網友

SPRing MVC + Spring + Mybatis3 搭建Web工程原理

可能需要用到參考:

Maven創建web項目:http://blog.csdn.net/liangmaoxuan/article/details/54172426

項目例子下載地址:http://download.csdn.net/detail/liangmaoxuan/9747471

Mybatis逆向工程:http://blog.csdn.net/liangmaoxuan/article/details/54563615

引入的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.lmx.ptest</groupId>	<artifactId>ptest</artifactId>	<packaging>war</packaging>	<version>0.0.1-SNAPSHOT</version>	<name>ptest Maven Webapp</name>	<url>http://maven.apache.org</url>	<properties>		<!-- spring版本號 -->		<spring.version>4.0.2.RELEASE</spring.version>		<!-- mybatis版本號 -->		<mybatis.version>3.2.6</mybatis.version>		<!-- log4j日志文件管理包版本 -->		<slf4j.version>1.7.7</slf4j.version>		<log4j.version>1.2.17</log4j.version>	</properties>	<dependencies>		<dependency>			<groupId>junit</groupId>			<artifactId>junit</artifactId>			<version>4.12</version>			<!-- 表示開發的時候引入,發布的時候不會加載此包 -->			<scope>test</scope>		</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.2.2</version>		</dependency>		<!-- 導入java ee jar 包 -->		<dependency>			<groupId>javax</groupId>			<artifactId>javaee-api</artifactId>			<version>7.0</version>		</dependency>		<!-- 導入MySQL數據庫鏈接jar包 -->		<dependency>			<groupId>mysql</groupId>			<artifactId>mysql-connector-java</artifactId>			<version>5.1.25</version>		</dependency>		<!-- 導入dbcp的jar包,用來在applicationContext.xml中配置數據庫 -->		<dependency>			<groupId>commons-dbcp</groupId>			<artifactId>commons-dbcp</artifactId>			<version>1.2.2</version>		</dependency>		<!-- JSTL標簽類 -->		<dependency>			<groupId>jstl</groupId>			<artifactId>jstl</artifactId>			<version>1.2</version>		</dependency>		<!-- 日志文件管理包 -->		<!-- log start -->		<dependency>			<groupId>log4j</groupId>			<artifactId>log4j</artifactId>			<version>${log4j.version}</version>		</dependency>		<!-- 格式化對象,方便輸出日志 -->		<dependency>			<groupId>com.alibaba</groupId>			<artifactId>fastjson</artifactId>			<version>1.1.41</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>		<!-- log end -->		<!-- 映入JSON -->		<dependency>			<groupId>org.codehaus.jackson</groupId>			<artifactId>jackson-mapper-asl</artifactId>			<version>1.9.13</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.4</version>		</dependency>		<dependency>			<groupId>commons-codec</groupId>			<artifactId>commons-codec</artifactId>			<version>1.9</version>		</dependency>		<dependency>			<groupId>com.fasterxml.jackson.core</groupId>			<artifactId>jackson-core</artifactId>			<version>2.7.8</version>		</dependency>		<dependency>			<groupId>org.mockito</groupId>			<artifactId>mockito-all</artifactId>			<version>1.10.19</version>		</dependency>		<dependency>			<groupId>junit</groupId>			<artifactId>junit</artifactId>			<version>4.12</version>		</dependency>	</dependencies>	<build>		<plugins>			<plugin>				<groupId>org.apache.maven.plugins</groupId>				<artifactId>maven-compiler-plugin</artifactId>				<version>2.3.2</version>				<configuration>					<source>1.7</source>					<target>1.7</target>				</configuration>			</plugin>		</plugins>		<finalName>ptest</finalName>	</build></project>

1.設置web.xml

(1)spring 方面:

spring 啟動時候會首先去執行放在WEB-INF/目錄下applicationContext.xml文件(如果在web.xml中不寫任何參數配置信息,默認的路徑是"/WEB-INF/applicationContext.xml),在啟動Web 容器時,自動裝配Spring applicationContext.xml 的配置信息。

PS:

WEB-INF目錄下創建的xml文件的名稱必須是applicationContext.xml。如果是要自定義文件名可以在web.xml里加入contextConfigLocation這個context參數,多個相同前綴也可以使用通配符(*).

ContextLoaderListener的作用就是啟動Web容器時,自動裝配ApplicationContext的配置信息。系統啟動的時候,系統自動加載org.springframework.web.context.ContextLoaderListener這個類,然后由它負責創建Spring容器即WebApplicationContext,系統會把bean放在其中,保存在內存,需要時候就會取出,一般情況下,創建完成后,負責IOC操作,你不需要獲取它,如果非要在程序中調用它,可以通過WebApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(servletContext);來獲取這個容器。

 <!-- Spring監聽器 -->      <listener>          <listener-class>               org.springframework.web.context.ContextLoaderListener         </listener-class>      </listener>  

對應的重命名applicationContext.xml文件改名后指定的位置
    <!-- Spring和mybatis的配置文件 -->      <context-param>          <param-name>contextConfigLocation</param-name>          <param-value>classpath:spring-mybatis.xml</param-value>      </context-param>  

(2)spring MVC方面:

容器初始化時候一同初始化Servlet,并且監聽指定入口(/,*.do,*.action等),監聽被激活時候,進入spring MVC處理并且返回輸出

  <!-- Spring MVC servlet -->      <servlet>          <servlet-name>SpringMVC</servlet-name>          <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>          <init-param>          <!-- 對應的XML文件 -->                <param-name>contextConfigLocation</param-name>                         <param-value>classpath:spring-mvc.xml</param-value>          </init-param>          <!-- 初始化時候啟動 -->          <load-on-startup>1</load-on-startup>          <async-supported>true</async-supported>      </servlet>      <servlet-mapping>          <servlet-name>SpringMVC</servlet-name>          <url-pattern>/</url-pattern>      </servlet-mapping>  

2.設置XML

(1)Spring 對應的spring-mybatis.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:p="http://www.springframework.org/schema/p"	xmlns:context="http://www.springframework.org/schema/context"	xmlns:mvc="http://www.springframework.org/schema/mvc"	xsi:schemaLocation="http://www.springframework.org/schema/beans  	http://www.springframework.org/schema/beans/spring-beans-3.1.xsd  	http://www.springframework.org/schema/context  	http://www.springframework.org/schema/context/spring-context-3.1.xsd  	http://www.springframework.org/schema/mvc  	http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">	<!--會對base-package包或者子包下的所有的進行java類進行掃描,并把匹配的java類注冊成bean。 -->	<context:component-scan base-package="com.lmx" />	<!-- 開啟注解模式 PS:要使用spring mvc中的@Controller注解,就必須要配置<mvc:annotation-driven 		/>, 否則org.springframework.web.servlet.DispatcherServlet無法找到控制器并把請求分發到控制器 -->	<mvc:annotation-driven />	<!-- 通過把對應值發射進入class類內組建dataSource對象 以下只需通過ID反射調用傳送對象 -->	<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"		destroy-method="close">		<property name="driverClassName" value="com.mysql.jdbc.Driver" />		<property name="url" value="jdbc:mysql://localhost:3306/netcare_db" />		<property name="username" value="root" />		<property name="passWord" value="" />	</bean>	<!-- 通過把對應值發射進入class類內組建datsqlsessionFactory對象 以下只需通過ID反射調用傳送對象 -->	<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">		<property name="dataSource" ref="dataSource" />		<property name="mapperLocations" value="classpath:mapping/*.xml"></property>	</bean>	<!-- MapperScannerConfigurer 自動掃描 將Mapper接口生成代理注入到Spring -->	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">		<property name="basePackage" value="com.lmx"></property>		<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>	</bean>	<!-- 創建sqlSessionTemplate類 -->	<bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">		<constructor-arg index="0" ref="sqlSessionFactory" />	</bean>	<!-- 創建事務 -->	<bean id="transactionManager"		class="org.springframework.jdbc.datasource.DataSourceTransactionManager">		<property name="dataSource" ref="dataSource" />	</bean></beans>  

(1)Spring 對應的spring-MVC.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:p="http://www.springframework.org/schema/p"      xmlns:context="http://www.springframework.org/schema/context"      xmlns:mvc="http://www.springframework.org/schema/mvc"      xsi:schemaLocation="http://www.springframework.org/schema/beans                            http://www.springframework.org/schema/beans/spring-beans-3.1.xsd                            http://www.springframework.org/schema/context                            http://www.springframework.org/schema/context/spring-context-3.1.xsd                            http://www.springframework.org/schema/mvc                            http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">              <!--避免IE執行Ajax時,返回JSON出現下載文件 -->      <bean id="mappingJacksonHttpMessageConverter"          class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">          <property name="supportedMediaTypes">              <list>                  <value>text/html;charset=UTF-8</value>              </list>          </property>      </bean>      <!-- 啟動SpringMVC的注解功能,完成請求和注解POJO的映射 -->      <bean          class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">          <property name="messageConverters">              <list>                  <ref bean="mappingJacksonHttpMessageConverter" /> <!-- JSON轉換器 -->              </list>          </property>      </bean>      <!-- 定義跳轉的文件的前后綴 ,視圖模式配置-->      <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">          <!-- 這里的配置我的理解是自動給后面action的方法return的字符串加上前綴和后綴,變成一個 可用的url地址 -->          <property name="prefix" value="/WEB-INF/jsp/" />          <property name="suffix" value=".jsp" />      </bean>        </beans>  

到這里配置已經完成。

總結不好多多擔待,文章只單純個人總結,如不好勿噴,技術有限,有錯漏麻煩指正提出。本人QQ:373965070


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧洲成人在线视频| 国产精品亚洲自拍| 国产精品视频地址| 欧美劲爆第一页| 在线视频欧美日韩| 久久中文字幕一区| 欧美成人免费小视频| 不卡av在线播放| 欧美亚州一区二区三区| 国产精品美女视频网站| 亚洲伦理中文字幕| 亚洲一级黄色片| 日本国产一区二区三区| 欧美激情在线视频二区| 亚洲三级 欧美三级| 日韩欧美第一页| 欧美不卡视频一区发布| 国产成人精品久久亚洲高清不卡| 亚洲人成毛片在线播放| 日韩av综合网站| 欧美日韩国产一区二区| 欧美视频国产精品| 国产欧美一区二区三区在线看| 久久国产精品免费视频| 狠狠躁夜夜躁人人爽天天天天97| 91在线视频成人| 午夜精品一区二区三区在线播放| 国产精品678| 国产精品成熟老女人| 精品一区二区亚洲| 欧美美女18p| 精品成人av一区| 日韩经典中文字幕在线观看| 国产日韩在线亚洲字幕中文| 黑丝美女久久久| 欧美日韩一区二区三区在线免费观看| 91在线观看免费高清完整版在线观看| 国产亚洲欧洲高清一区| 成人午夜在线影院| 久久久久久久国产精品| 欧美激情一区二区久久久| 色爱精品视频一区| 在线亚洲午夜片av大片| 亚洲精品一区二区在线| 欧美亚洲国产另类| 亚洲色图欧美制服丝袜另类第一页| 日韩激情av在线免费观看| 国产成人精品日本亚洲| 日韩av在线免播放器| 国产91在线视频| 91精品国产综合久久久久久蜜臀| 九九热这里只有在线精品视| 国产欧亚日韩视频| 丝袜亚洲欧美日韩综合| 色综合久久88| 亚洲第一视频网站| 日本一区二三区好的精华液| 日韩av不卡在线| 精品一区二区三区四区| 精品久久国产精品| 欧美另类交人妖| 亚洲人成网站999久久久综合| 亚洲午夜久久久久久久| 国内精品久久久久久| 国产精品人成电影| 91精品国产99久久久久久| 中文字幕亚洲欧美日韩2019| 亚洲v日韩v综合v精品v| 九九精品在线视频| 成人福利视频在线观看| 国产欧美一区二区| 日韩h在线观看| 91免费综合在线| 97人人爽人人喊人人模波多| 国产va免费精品高清在线观看| 日韩视频免费在线| 国产精品美女网站| 播播国产欧美激情| 97国产成人精品视频| 久久久电影免费观看完整版| 欧美二区在线播放| 日韩精品久久久久久久玫瑰园| 亚洲性生活视频| 国产一区二区久久精品| 尤物精品国产第一福利三区| 中文字幕在线看视频国产欧美| 欧美一区二区三区……| 欧美精品videosex性欧美| 亚洲精品日韩激情在线电影| 久久频这里精品99香蕉| 亚洲一区二区三区视频| 亚洲精品国精品久久99热一| 久久久亚洲精品视频| 91久久精品国产91久久性色| 国产精品丝袜白浆摸在线| 成人精品一区二区三区电影黑人| 欧美亚洲另类视频| 亚洲天堂色网站| 欧美激情成人在线视频| 国产精品视频区1| 92裸体在线视频网站| 亚州av一区二区| 亚洲a级在线观看| 亚洲欧洲日产国码av系列天堂| 亚洲中国色老太| 日韩精品一二三四区| 欧美激情欧美激情在线五月| 最近的2019中文字幕免费一页| 欧美xxxx14xxxxx性爽| 国产精品三级在线| 久久这里只有精品99| 9.1国产丝袜在线观看| 91亚洲精品久久久久久久久久久久| 国产成人综合精品在线| 97精品伊人久久久大香线蕉| 国产精品99久久久久久久久久久久| 欧美日韩国产在线播放| 91精品国产九九九久久久亚洲| 亚洲淫片在线视频| 久久久www成人免费精品| 亚洲成人aaa| 亚洲精品黄网在线观看| 国产精品igao视频| 欧美性猛交xxxx乱大交3| 欧美午夜精品久久久久久人妖| 亚洲xxx大片| 国产精品99一区| 国产成人亚洲综合91精品| 美女扒开尿口让男人操亚洲视频网站| 国产成人精品免费视频| 国产一区二区三区中文| 97婷婷大伊香蕉精品视频| 国产成人精品日本亚洲专区61| 国产精品日日摸夜夜添夜夜av| 欧美日韩中文字幕综合视频| 久久久综合av| 亚洲激情国产精品| 亚洲色图第一页| 日韩高清电影好看的电视剧电影| 亚洲va欧美va国产综合久久| 91精品中国老女人| 国产在线观看精品一区二区三区| 欧美最顶级丰满的aⅴ艳星| 97国产在线观看| 浅井舞香一区二区| 久久久精品中文字幕| 国产精品亚洲综合天堂夜夜| 亚洲国产另类久久精品| 92看片淫黄大片欧美看国产片| 国产99久久精品一区二区永久免费| 精品久久久免费| 精品中文字幕在线| 亚洲免费精彩视频| 国产精品高清在线| 欧美激情亚洲国产| 亚洲人午夜色婷婷| 欧美日韩精品在线| 欧美丝袜一区二区| 日韩免费av片在线观看| 亚洲理论片在线观看| 国产成人亚洲综合91| 精品网站999www| 青青草成人在线| 欧美裸体xxxx极品少妇|