spring+mybatis

来源:互联网 发布:2017年京东抢购软件 编辑:程序博客网 时间:2024/04/19 20:14

前面说到spring mvc+maven,今天把mybatis集成上去了

1、首先是配置文件的修改-applicationContext.xml,增加mybatis的配置,前提:先引用mybatis的jar包

<span style="white-space:pre"></span><!-- 加入自动扫描 --><context:component-scan base-package="alijk.dataView.**" /><context:annotation-config /><!-- 加载系统中的properties文件 --><bean id="propertyConfigurer"class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"><property name="locations"><list><value>classpath:jdbc.properties</value></list></property></bean><!-- 配置数据源 --><bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"destroy-method="close"><property name="driverClassName" value="${jdbc.driverClassName}" /><property name="url" value="${jdbc.url}" /><property name="username" value="${jdbc.username}" /><property name="password" value="${jdbc.password}" /><property name="maxActive" value="100" /><property name="maxWait" value="1000" /><property name="poolPreparedStatements" value="false" /><property name="defaultAutoCommit" value="true" /></bean><!-- 配置mybatis sqlSessionFactory --><bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><property name="dataSource" ref="dataSource" /><property name="mapperLocations"value="classpath:alijk/dataView/dao/*.xml" /><property name="typeAliasesPackage" value="alijk.dataView.model"/></bean><!-- scan for mappers and let them be autowired 自动扫描mapper包 --><bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"><property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" /><property name="basePackage" value="alijk.dataView.dao" /></bean>
2、新建mapper.xml

<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapperPUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN""http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd"><mapper namespace="alijk.dataView.dao.SysUserDao"><select id="getAlluser" parameterType="java.util.HashMap"resultType="java.util.Map">SELECT USER_ID,LOGIN_NAME,LOGIN_PASSWORD,USER_NAME FROM SYS_USER WHERE DATA_FLAG = #{data_flag}</select></mapper>

3、mapper对应该的dao

@Repositorypublic interface SysUserDao {List<Map<String, Object>> getAlluser(Map<String, Object> map);}

4、数据库访问接口service

public interface SysUserInf {List<Map<String, Object>> getAlluser(Map<String, Object> map);}

5、接口的实现

@Servicepublic class SysUserInfImpl implements SysUserInf{@Autowiredprivate SysUserDao sysUserDao;public List<Map<String, Object>> getAlluser(Map<String, Object> map) {return sysUserDao.getAlluser(map);}}

以后工作做完后,spring+mybatis已经配置完成,基本上结构为:配置文件(spring加载,datasource,mybatis数据源配置,mapper配置等)、mapper、dao、service、serviceImpl

6、测试,用SpringJUnit4ClassRunner测试

@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration("classpath:applicationContext.xml") public class MybatisTest {@Autowiredprivate SysUserInf sysUserInf;@Testpublic void testMybatis(){Map<String, Object> map_query = new HashMap<String, Object>();map_query.put("data_flag", "0");List<Map<String, Object>> map = sysUserInf.getAlluser(map_query);for(Map<String, Object> user : map){Iterator<String> iter = user.keySet().iterator();String row = "";while(iter.hasNext()){row += user.get(iter.next())+"\t";}System.out.println(row);}}}

结果 :

14117106365323guloub445e54cb19b0e9fd41f1c13540a9a9dgulou14117196624151江苏南京六合区用户1952a781d27ca1f47liuhe14132501631192江苏南京六合区用户 1a3bb2e9dfece8ec82




0 0
原创粉丝点击