初入MyBatis框架<一>

初入MyBatis框架<一>

MyBatis的优点:

比Hibernate跟底层
1.基于SQL语法,简单易学。
3.SQL语句封装在配置文件中,便于统一管理与维护,降低了程序的耦合度。
这里写图片描述

MyBatis工作流程

这里写图片描述
如图:他需要给一个javabean对象,一个配置文件(在<二>中会演示),还要给一个返回结果对象类型。

演示:

一样的在SRC下面写一个配置文件:mybatis-config.xml
负责连接数据库和配置需要的mapper
配置environments

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
    "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!-- 配置别名 -->
    <typeAliases>
        <typeAlias alias="User" type="cn.hncu.domain.User"/>
    </typeAliases>
    <!-- 连数据库-->
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://127.0.0.1:3306/mybatis?characterEncoding=UTF-8"/>
                <property name="username" value="root"/>
                <property name="password" value=""/>
                <property name="poolMaximumActiveConnections" value="5"/><!-- 池大小 -->
            </dataSource>
        </environment>
    </environments>

    <mappers>
        <mapper resource="cn/hncu/domain/User.xml"/>
        <mapper resource="cn/hncu/domain/User2.xml"/>
    </mappers>
</configuration>

必要的包:
1个MyBatis,2个log4j,1个数据库连接
这里写图片描述

这里写图片描述

所使用的工具类:SqlSessionUtils

public class SqlSessionUtils {
    private static SqlSessionFactory sessionFactory=null;//DataSource --pool
    static{
        try {
            InputStream in = Resources.getResourceAsStream("mybatis-config.xml");//加载配置文件
            sessionFactory = new SqlSessionFactoryBuilder().build(in);
        /*
            这里给一种不使用Resources类加载配置文件的方法(我们自己利用classLoader以底层的方式加载):
            sessionFactory = new SqlSessionFactoryBuilder().build(SqlSessionUtils.class.getClassLoader().getResourceAsStream("mybatis-config.xml") );
        */
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static SqlSessionFactory getSessionFactory() {
        return sessionFactory;
    }
    //Session ----Connection
    public static SqlSession getSqlSession() {
        return sessionFactory.openSession();
    }
    public static SqlSession getSqlSession(boolean boo) {
        return sessionFactory.openSession(boo);//con.setAutoCommit(boo)
    }

}

<二>中演示单表,<三>中演示多表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值