Spring整合Mybatis的全过程
1.1配置数据库连接池
<!--读取文件--> <util:properties location='classpath:Config/db.properties'/> <!--配置数据库连接池--> <bean class='org.apache.commons.dbcp.BasicDataSource'> <property name='driverClassName' value='#{config.drivername}'/> <property name='url' value='#{config.url}'/> <property name='username' value='#{config.name}'/> <property name='password' value='#{config.password}'/> <property name='maxActive' value='#{config.maxActive}'/> <property name='maxWait' value='#{config.maxWait}'/> </bean>
1.2配置数据源工厂
<!--配置sqlsessionFactoryBean--> <bean class='org.mybatis.spring.SqlSessionFactoryBean'> <!--配置映射文件(操作sql语句的文件)的位置--> <property name='mapperLocations' value='classpath:mapper/user-mapper.xml'/> <!-- 将连接池注入到该数据源属性中--> <property name='dataSource' ref='source'/> </bean>
1.3配置MapperScannerConfigurer
配置MapperScannerConfigurer,扫描指定包及其子包下面的所有Mapper映射器,然后调用SqlSession的getMapper()方法,将该映射器纳入到spring管理,默认的id是映射器首字母小写的接口名。
<bean class='org.mybatis.spring.mapper.MapperScannerConfigurer'> <property name='basePackage' value='fyjz.com.springMybatis.mapper'/> </bean>2.书写映射器(接口)
package fyjz.com.springMybatis.mapper;import java.util.List;import java.util.Map;import org.apache.ibatis.annotations.Param;import fyjz.com.springMybatis.entry.User;public interface UserMapper {//用户登录int addUser(User user);//根据用户id查询用户数据User selectUserById(int id);//查询所有用户数据List<User> findAllUser();//根据用户名和密码查询用户数据,返回map集合Map<String,Object> findUserByNameAndPwd(@Param('name')String name,@Param('pwd')String pwd); }3.书写user-mapper.xml映射文件
<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE mapper PUBLIC '-//ibatis.apache.org//DTD Mapper 3.0//EN' 'http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd'> <!--映射文件(映射器的全名:包名.类名)--> <mapper namespace='fyjz.com.springMybatis.mapper.UserMapper'> <!--实体类和数据库字段名不一致,完成字段名的对应--> <resultMap type='fyjz.com.springMybatis.entry.User' id='rm'> <result property='id' column='id'/> <result property='userName' column='user_name'/> <result property='userPwd' column='user_pwd'/> <result property='money' column='money'/> <result property='age' column='age'/> </resultMap> <!-- 添加用户信息 --> <insert parameterType='fyjz.com.springMybatis.entry.User'> insert into u_user values(null,#{userName},#{userPwd},#{money},#{age}); </insert> <!-- 根据用户id查询用户数据 --> <select resultMap='rm'> select * from u_user where id=#{id}; </select> <!-- 查询所有用户数据 --> <select resultMap='rm'> select * from u_user; </select> <!-- 根据用户名和密码查询用户数据,返回map集合--> <select resultType='map'> select * from u_user where user_name=#{name} and user_pwd=#{pwd}; </select> </mapper>4.结果演示
1.加载Spring配置文件并生成javaBean对象
ApplicationContext ac;UserMapper dao;@Before@Testpublic void test01() throws SQLException{//加载xml配置文件ac=new ClassPathXmlApplicationContext('spring-dao.xml');//获取spring管理的javaBean对象userMapperdao=ac.getBean('userMapper',UserMapper.class);}
2.添加用户信息
@Testpublic void test02(){User u=new User(0, 'uzi','52147893', 52360, 50);int n=dao.addUser(u);System.out.println(n);}
插入成功,后台返回1
3.根据用户id查询用户数据
@Testpublic void test03(){User u=dao.selectUserById(1);System.out.println(u);}
查找成功
4.查询所有用户数据
@Testpublic void test04(){List<User> list=dao.findAllUser();System.out.println(list);}
查询到所有的用户数据
5.根据用户名和密码查询用户数据,返回map集合@Testpublic void test05(){Map<String,Object> map=dao.findUserByNameAndPwd('何倩','125521');System.out.println(map);}
查询成功
以上就是Spring整合Mybatis的详细内容,更多关于Spring整合Mybatis的资料请关注好吧啦网其它相关文章!
相关文章: