SSM - Spring Spring-mvc Mybatis 框架集成

关于ssm框架集成 (除了web.xml 文件其他的都需要将资源文件夹放在Source Folder类型的文件夹下)同时文中内容需要根据自身所需进行更改,需要更改的地方已经用!号提醒,四个文件名不需要更改

web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
	id="WebApp_ID" version="3.0">
	<display-name>ssm</display-name>
	
	<!-- tomcat开启的时候会自动的解析web.xml -->
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>
	<!-- 服务器启动的时候加载spring的 配置文件 -->
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>classpath:applicationContext.xml</param-value>
	</context-param>
	
	
	<!-- 配置前端控制器    请求进来时首先经过的位置-->
	<servlet>
		<servlet-name>DispatcherServlet</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<!-- webmvc -->
		<!-- 加载springmvc的配置文件,如果不写,默认会加载WEB-INF下的<servlet-name>-servlet.xml contextConfigLocation:不能写错,严格区分大小写,因为是由框架自动解析 -->
		<init-param>
			<param-name>contextConfigLocation</param-name>
			<param-value>classpath:spring-mvc.xml</param-value>
		</init-param>
		<!-- 提交实例化:提前到服务器开启的时候 -->
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>DispatcherServlet</servlet-name>
		<url-pattern>/</url-pattern>
	</servlet-mapping>

	<!-- 解决post请求的中文参数乱码问题:这个类是由Spring框架提供的,不需要自己写,但是需要配置 -->
	<filter>
		<filter-name>EncodingFilter</filter-name>
		<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
		<init-param>
			<!-- encoding不要乱写   -->
			<param-name>encoding</param-name>
			<param-value>UTF-8</param-value>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>EncodingFilter</filter-name>
		<url-pattern>/*
	

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:mvc="http://www.springframework.org/schema/mvc"
	xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="
		http://www.springframework.org/schema/beans
		http://www.springframework.org/schema/beans/spring-beans.xsd
		http://www.springframework.org/schema/context
		http://www.springframework.org/schema/context/spring-context.xsd
		http://www.springframework.org/schema/tx
		http://www.springframework.org/schema/tx/spring-tx.xsd
		http://www.springframework.org/schema/mvc
		http://www.springframework.org/schema/mvc/spring-mvc.xsd">

	<!-- 1.加载属性配置文件  就是连接数据库的文件   跟jdbc.properties文件结合起来看-->
	<context:property-placeholder location="classpath:jdbc.properties" system-properties-mode="NEVER" />
	
	<!-- 2.将连接池对象交给Spring去管理    跟jdbc.properties文件结合起来看 -->
	<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
		<property name="driverClassName" value="${driverClassName}"></property>
		<property name="url" value="${url}"></property>
		<property name="username" value="${username}"></property>
		<property name="password" value="${password}"></property>
	</bean>
	
	<!-- 3.将SqlSessionFactory交给Spring去管理  -->
	<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
		<!-- 注意看上面的第二点id="dataSource" 以及下面的 ref="dataSource" -->
		<property name="dataSource" ref="dataSource"></property>
		<!-- 配置别名  配置后在mapper.xml 文件中我们进行查询时 parameterType="" resultType="" 这两个属性里面的名字就可以不区分大小写了-->
		<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
		<property name="typeAliasesPackage" value="domain实体类全限定名,query查询包全限定名(可以只写一个根据实际情况来)"></property>
		
		<!-- 配置mybatis (mapper)映射器路径   !!!!!!!!!!!!!!!!!!!!!!!!!!!!需要修改-->
		<property name="mapperLocations" value="classpath:这里写一个完全限定名(mapper包的完全限定名)/*Mapper.xml"></property>
	</bean>
	
	<!-- 4.将Mapper接口交给Spring去管理 -->
	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
		<!-- 指定mapper接口的包路径     value=""的值需要设置成现阶段你的mapper.xml文件放在什么位置-->
		<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
		<property name="basePackage" value=""></property>
	</bean>
	
	
	<!-- 5.扫描包路径  这个扫描只扫描service层的包 做到责任分离  controller的扫描包需要在spring-mvc中扫描    
	 value的值为service层所在包的全限定名(以src下一级开始,到service包结束)-->
	 <!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
	<context:component-scan base-package=""></context:component-scan>

</beans>

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:mvc="http://www.springframework.org/schema/mvc"
	xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="
		http://www.springframework.org/schema/beans
		http://www.springframework.org/schema/beans/spring-beans.xsd
		http://www.springframework.org/schema/context
		http://www.springframework.org/schema/context/spring-context.xsd
		http://www.springframework.org/schema/tx
		http://www.springframework.org/schema/tx/spring-tx.xsd
		http://www.springframework.org/schema/mvc
		http://www.springframework.org/schema/mvc/spring-mvc.xsd">


	<!-- 静态资源放行 -->
	<mvc:default-servlet-handler />

	<!-- 扫描包路径:上下文组件扫描 ,Spring容器会去扫描base-package=""里面写的这个包及其子包中所有的类, 如果发现类上有类似@Controller这样注解,就会创建该类的对象,并进行管理 -->
	<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
	<context:component-scan base-package=""></context:component-scan>

	<!-- 开启Spring对Mvc的支持:能够使用@RequestMapping -->
	<mvc:annotation-driven></mvc:annotation-driven>

	<!-- 视图解析器:统一处理【webmvc】 -->
	<bean
		class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="prefix" value="/"></property><!-- 前缀 -->
		<property name="suffix" value=".jsp"></property><!-- 后缀 -->
	</bean>


</beans>

jdbc.properties文件

driverClassName=com.mysql.jdbc.Driver
ssm是数据库名
url=jdbc:mysql:///ssm?useUnicode=true&characterEncoding=UTF-8
下面不用我说了吧:
username=root
password=123456

导入的jar包
SSM - Spring Spring-mvc Mybatis 框架集成_第1张图片

你可能感兴趣的:(SSM - Spring Spring-mvc Mybatis 框架集成)