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
@Test
public void test01() throws SQLException{
//加载xml配置文件
ac=new ClassPathXmlApplicationContext("spring-dao.xml");
//获取spring管理的javaBean对象userMapper
dao=ac.getBean("userMapper",UserMapper.class);
}
2.添加用户信息
@Test
public void test02(){
User u=new User(0, "uzi","52147893", 52360, 50);
int n=dao.addUser(u);
System.out.println(n);
}
插入成功,后台返回1
3.根据用户id查询用户数据
@Test
public void test03(){
User u=dao.selectUserById(1);
System.out.println(u);
}
查找成功
4.查询所有用户数据
@Test
public void test04(){
List<User> list=dao.findAllUser();
System.out.println(list);
}
查询到所有的用户数据
5.根据用户名和密码查询用户数据,返回map集合
@Test
public void test05(){
Map<String,Object> map=dao.findUserByNameAndPwd("何倩","125521");
System.out.println(map);
}
查询成功
以上就是Spring整合Mybatis的详细内容,更多关于Spring整合Mybatis的资料请关注编程网其它相关文章!