1. 准备jar包及目录结构


2. 配置db.properties

driver = com.mysql.jdbc.Driver
url = jdbc:mysql://127.0.0.1:3306/Howl
name = root
password =


3. 配置applicationContext.xml

<!-- 加载配置文件 -->
<context:property-placeholder location="classpath:db.properties" />


<!--spring自带数据源,没有连接池功能 -->
<!-- <bean id="DataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="${driver}"></property>
    <property name="url" value="${url}"></property>
    <property name="username" value="${name}"></property>
    <property name="password" value="${password}"></property>
</bean> -->


<!-- c3p0数据源,推荐 -->
<bean id="DataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
    <property name="driverClass" value="${driver}"/>
    <property name="jdbcUrl" value="${url}"/>
    <property name="user" value="${name}"/>
    <property name="password" value="${password}"/>
</bean>


<!-- 配置SqlSessionFactory,加载mybaits配置文件和映射文件 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="configLocation" value="classpath:mybatis.xml"/>
    <property name="dataSource" ref="DataSource"/>
</bean>


4. 创建Bean对象

package bean;

public class User {

    private int id;
    private String name;
    private String password;

    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    @Override
    public String toString() {
        return "User [id=" + id + ", name=" + name + ", password=" + password + "]";
    }
}


5. 配置Mapper.xml文件(Mapper代理方式)

<mapper namespace="com.howl.UserMapper">

    <!-- 通过id查询用户 -->
    <select id="findUserById" parameterType="Integer" resultType="bean.User">
        select * from user where id = #{id}
    </select>

</mapper>


6. 代理接口

package com.howl;

public interface UserMapper {

    public User findUserById(int id);

}


7. 配置Mybatis.xml

<!-- 根标签 -->
<configuration>

    <!-- 引入mapper文件的位置 -->
    <mappers>
        <mapper resource="Mapper/UserMapper.xml"/>
    </mappers>

</configuration>


8. 测试

//获取sqlSession
ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
SqlSessionFactory sqlSessionFactory = (SqlSessionFactory ) ac.getBean("sqlSessionFactory");
SqlSession sqlSession = sqlSessionFactory.openSession();

//获取代理对象
UserMapper userMapper = sqlSession.getMapper(com.howl.UserMapper.class);
User user = userMapper.findUserById(46);

//打印Bean对象
System.out.println(user);


9. 打印

<!-- 整合成功 -->
<!-- 十二月 04, 2019 8:30:35 下午 com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource -->

User [id=46, name=123123, password=123123]




12-23 03:41
查看更多