mybatis实战之路,疯狂的数据库操作框架、动态sql的mybats之快速搭建基本环境

1、快速配置环境

引入jar,解压jar,找到mybatis-3.2.2.jar\org\apache\ibatis\builder\xml下的两个dtd文件添加到eclipse中如下图:


如果你能记得住标签就不用了,当然也是能提高写代码速度的。

2、编写核心配置文件

核心配置文件是用于连接数据库的配置文件,以及增删改查具体操作的映射文件。如下图:

<?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>
    <environments default="test">
        <!-- 设置当前调用的是那个环境 -->
        <environment id="test">
            <!-- 事务有两种选择JDBC管理和MANGED自己管理 -->
            <transactionManager type="JDBC" />
            <!-- 资源管理有三种:POOLED/池化的 UNPOOLED/非池化的 JUNI/安全系数高 -->
            <dataSource type="POOLED">
                <property name="driver" value="oracle.jdbc.driver.OracleDriver" />
                <property name="url"
                    value="jdbc:oracle:thin:@localhost:1521:XE" /><!-- 可以指定读取编码 -->
                <property name="username" value="shoppingmall" />
                <property name="password" value="shoppingmall" />
            </dataSource>
        </environment>
        <!-- 设置当前调用的是那个环境 -->
        <environment id="deploy">
            <!-- 事务有两种选择JDBC管理和MANGED自己管理 -->
            <transactionManager type="JDBC" />
            <!-- 资源管理有三种:POOLED/池化的 UNPOOLED/非池化的 JUNI/安全系数高 -->
            <dataSource type="POOLED">
                <property name="driver" value="oracle.jdbc.driver.OracleDriver" />
                <property name="url"
                    value="jdbc:oracle:thin:127.0.0.1:1521:XE?charsetcoding = utf8" />
                <property name="username" value="admin" />
                <property name="password" value="admin" />
            </dataSource>
        </environment>
    </environments>
    <mappers >
    <mapper resource="cn/banwxf/shoppingmall/mybatis/CartProductMapper.xml"/>
    <mapper resource="cn/banwxf/shoppingmall/mybatis/UserMapper.xml"/>
    
    </mappers>
</configuration>


3、加载核心配置文件,链接数据库

获取sqlSessionFactory对象,因为sqlSessionFactory是线程安全的,而sqlsession是不安全的,所以呢sqlsession每次操作都要重新获取,而sqlSessionFactory有一个即可。

public class SessionFactory {
    public  SqlSessionFactory sqlSessionFactory;
    
    public SessionFactory(){
        if (sqlSessionFactory==null) {
            initSqlSessionFactory();
        }
    }

    public void initSqlSessionFactory() {
        InputStream is = null;
        try {
            is = Resources.getResourceAsStream("Config.xml");
            sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
            System.out.println(sqlSessionFactory.toString());
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                is.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}


4、编写具体的映射文件

<?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="UserMapper">

    <resultMap type="cn.banwxf.shoppingmall.beans.UserInfo" id="selectUser">

        <id property="userId" column="user_id" />
        <result property="password" column="user_password" />
        <result property="userName" column="user_name" />
        <result property="userScore" column="user_score" />
        <result property="userLevel" column="user_grade" />
        <result property="isVip" column="is_vip" />
        <result property="headImage" column="head_image" />

    </resultMap>

    <select id="login" parameterType="String" resultMap="selectUser">
        select
        user_id,user_name,user_password,user_score,user_grade,head_image,is_vip
        from "user" where user_id=${value}
    </select>
    <insert id="register" parameterType="cn.banwxf.shoppingmall.beans.UserInfo">
        insert into "user"(user_id,user_name,user_password,user_score,user_grade,head_image,is_vip)
        values(#{userId},#{userName},#{password},#{userScore},#{userLevel},#{headImage},#{isVip})
    </insert>
</mapper>




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值