springMVC +mybatis的配置
2016-02-16 16:21
567 查看
工程(包)下载
1. 新建一个web工程
2. 导入相关的包
3. 配置Web.xml文件(加载配置文件,配置SpringMvc 分发器)
Web.xml
建包分控制层,DAO层,service层
![](https://img-blog.csdn.net/20160216162405305)
配置servlet.xml(注解扫描配置。静态资源转发。视图解析器配置)
servlet.xml
配置 database.properties文件
database.properties
配置dao.xml(数据库的配置。加载数据库database.propert
dao.xml
配置sqlMapConfig.xml
sqlMapConfig.xml
Test.java
IInfoMapper.java
/测试spring与mybatis 集成/
JunitDemo.java
1. 新建一个web工程
2. 导入相关的包
3. 配置Web.xml文件(加载配置文件,配置SpringMvc 分发器)
Web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <display-name>SpringMvcTest</display-name> <!--1.初始化参数配置 --> <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> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>*</url-pattern> </filter-mapping> <!--2.加载配置文件项 --> <context-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/classes/dao.xml </param-value> </context-param> <!--1.ContextLoaderListener的作用就是启动Web容器时,自动装配ApplicationContext的配置信息。 2.ContextLoader创建的是 XmlWebApplicationContext这样一个类,它实现的接口是WebApplicationContext-> ConfigurableWebApplicationContext->ApplicationContext-> BeanFactory这样一来spring中的所有bean都由这个类来创建 --> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!--3.配置springMvc 分发器 --> <servlet> <servlet-name>spring</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>WEB-INF/classes/servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>spring</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
建包分控制层,DAO层,service层
配置servlet.xml(注解扫描配置。静态资源转发。视图解析器配置)
servlet.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd"> <!-- 注解驱动 --> <mvc:annotation-driven /> <!--注解扫描 --> <context:component-scan base-package="com.szzt.SpringMvcTest.controller,com.szzt.SpringMvcTest.dao,com.szzt.SpringMvcTest.service" /> <!-- 静态资源访问配置 --> <mvc:resources mapping="/css/**" location="/css/" /> <mvc:resources mapping="/img/**" location="/img/" /> <mvc:resources mapping="/js/**" location="/js/" /> <mvc:resources mapping="/**" location="/" /> <!--视图解析器 --> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/jsp/" /> <property name="suffix" value=".jsp" /> </bean> </beans>
配置 database.properties文件
database.properties
#mysql db.username=root db.password=123456 db.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8
配置dao.xml(数据库的配置。加载数据库database.propert
dao.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:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-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"> <!-- 配置数据源属性文件 --> <bean id="propertyConfigurer" class="org.springframework.context.support.PropertySourcesPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath:database.properties</value> </list> </property> </bean> <!-- 配置数据源 --> <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"> <property name="url" value="${db.url}" /> <property name="username" value="${db.username}" /> <property name="password" value="${db.password}" /> </bean> <!-- 2. mybatis的SqlSession的工厂: SqlSessionFactoryBean dataSource:引用数据源 MyBatis定义数据源,同意加载配置 --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="configLocation" value="classpath:sqlMapConfig.xml" /> <property name="dataSource" ref="dataSource" /> </bean> <!-- 3. mybatis自动扫描加载Sql映射文件/接口 : MapperScannerConfigurer sqlSessionFactory basePackage:指定sql映射文件/接口所在的包(自动扫描) --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="annotationClass" value="org.springframework.stereotype.Repository" /> <property name="basePackage" value="com.szzt.SpringMvcTest.dao"></property> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" /> </bean> <!-- 配置事务管理器 --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource" /> </bean> <!-- 启动spring事务注解,事务注解尽在此 --> <tx:annotation-driven transaction-manager="transactionManager" /> <!-- 自动扫描 --> <context:component-scan base-package="com.szzt.SpringMvcTest.dao" /> </beans>
配置sqlMapConfig.xml
sqlMapConfig.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <!-- 实体类,简称 -设置别名 --> </configuration>
Test.java
@Controller @RequestMapping(value = "/min") public class Test { @Autowired private IInfoMapper info; @RequestMapping(value = "/min") String min(){ System.out.println("111111111111111"); info.queryInfo(1); System.out.println("2222222222222222"); return "min"; }
IInfoMapper.java
@Repository @Transactional public interface IInfoMapper { /** * 数据插入 * */ public String queryInfo(int id); } IinfoMapper.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.szzt.SpringMvcTest.dao.IInfoMapper"> <select id="queryInfo" resultType="java.lang.String" parameterType="java.lang.Integer"> select * from info where id=#{id} </select> </mapper>
/测试spring与mybatis 集成/
JunitDemo.java
@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations={"classpath*:dao.xml"}) public class JunitDemo { @Autowired private IInfoMapper info; @Test public void testQueryBatis(){ System.out.println("zzzzzzzzzzzzzzzzzzzzzzzzzzzzz"); info.queryInfo(1); //System.out.println(info.queryInfo(1)); } }
相关文章推荐
- 深入浅析mybatis oracle BLOB类型字段保存与读取
- MyBatis MapperProvider MessageFormat拼接批量SQL语句执行报错的原因分析及解决办法
- oracle+mybatis 使用动态Sql当插入字段不确定的情况下实现批量insert
- 浅析Mybatis 在CS程序中的应用
- Java Mybatis框架入门基础教程
- Java简单实现SpringMVC+MyBatis分页插件
- MyBatis批量添加、修改和删除
- MyBatis与Hibernate的比较
- 浅析mybatis和spring整合的实现过程
- mybatis的动态sql详解(精)
- Mybatis实现增删改查及分页查询的方法
- MyBatis入门学习教程(一)-MyBatis快速入门
- Spring与Mybatis的整合方法有哪些
- 详解MyBatis直接执行SQL查询及数据批量插入
- 解决springmvc+mybatis+mysql中文乱码问题
- Spring3.1.1+MyBatis3.1.1的增、删、查、改以及分页和事务管理
- Spring+Mybatis+Mysql搭建分布式数据库访问框架的方法
- Mybatis实战教程之入门到精通(经典)
- Mybatis与Hibernate的区别
- SpringMVC+MyBatis项目总结(一)