1.Spring配置文件
1.1配置数据库连接池
<!--读取文件--> <util:properties id="config" location="classpath:Config/db.properties"/> <!--配置数据库连接池--> <bean id="source" 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 id="sqlsession" 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 id="addUser" parameterType="fyjz.com.springMybatis.entry.User"> insert into u_user values(null,#{userName},#{userPwd},#{money},#{age}); </insert> <!-- 根据用户id查询用户数据 --> <select id="selectUserById" resultMap="rm"> select * from u_user where id=#{id}; </select> <!-- 查询所有用户数据 --> <select id="findAllUser" resultMap="rm"> select * from u_user; </select> <!-- 根据用户名和密码查询用户数据,返回map集合--> <select id="findUserByNameAndPwd" 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的资料请关注其它相关文章!
这个社会是存在不公平的,不要抱怨,因为没有用!人总是在反省中进步的!