SSM-Spring-MyBatisSpring项目-配置SqlSessionFactoryBean
程序员文章站
2022-06-17 08:50:13
...
SSM-Spring-MyBatisSpring项目-配置SqlSessionFactoryBean
从SqlSessionFactoryBean类中可以得出,它几乎可以配置所有有关Mybatis的组件,且提供对应setter方法让Spring去设置它,如下:
<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource">
<property name="url" value="jdbc:mysql://localhost:3306/ssm"/>
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="username" value="root"/>
<property name="password" value="123456789"/>
</bean>
<bean id="SqlSesstionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="configLocation" value="classpath:spring/sqlMapConfig.xml"/>
</bean>
这里配置了数据源,还引入了一个Mybatis的配置文件sqlMapConfig.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.ssm.mapper.RoleMapper">
<insert id="insertRole" useGeneratedKeys="true" keyProperty="id">
insert into role(role_name,note) values (#{roleName},#{note})
</insert>
<delete id="deleteRole" parameterType="long">
delete from role where id=#{id}
</delete>
<update id="updateRole" parameterType="role">
update role
set roleName=#{roleName},
note=#{note}
where id=#{id}
</update>
<select id="getRole" parameterType="long" resultType="role">
select id,roleName as roleName,note,from rele where id=#{id}
</select>
</mapper>
定义了一个命名空间,com.ssm.mapper.RoleMapper,且提供对角色的正删改查方法,按照Mybatis的规则,需要定义一个接口:
public interface RoleMapper {
public int insertRole(Role role);
public Role getRole(@Param("id") Long id);
public int updateRole(Role role);
public int deleteRole(@Param("id") Long id);
}
这样就完成了Mybatis框架的主要代码了