文档章节

MyBatis入门整理

骑着毛驴来编程
 骑着毛驴来编程
发布于 2016/07/12 14:52
字数 552
阅读 44
收藏 0

    学习MyBatis的时候,官方文档一定是少不了的,目前我学的是MyBatis3.官方文档网上有很多资料大家可以去自己查找,常用的CSDN上就有很多.

下面是MyBatis的总配置文件/mybatis/src/com/utils/SqlMapConfig.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration  PUBLIC "-//ibatis.apache.org//DTD Config 3.0//EN"            
"http://ibatis.apache.org/dtd/ibatis-3-config.dtd">
<configuration>
    <properties resource="com/utils/oracle.jdbc.properties"/>
    <typeAliases>
        <typeAlias alias="User" type="com.domain.User"></typeAlias>
    </typeAliases>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC" />
            <dataSource type="POOLED">
                <property name="driver"  value="${driver}" />
                <property name="url" value="${url}"/>
                <property name="username" value="${username}" />
                <property name="password" value="${password}" />
            </dataSource>
        </environment>
        <environment id="environment">
            <transactionManager type="JDBC" />
            <dataSource type="POOLED">
                <property name="driver"  value="${driver}" />
                <property name="url" value="${url}"/>
                <property name="username" value="${username}" />
                <property name="password" value="${password}" />
            </dataSource>
        </environment>
    </environments>

    <mappers>
        <mapper resource="com/utils/user.xml" />
    </mappers>
</configuration>

    sql映射文件/mybatis/src/com/utils/user.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="com.domain.User">
    <sql id="userColumns"> userid, username,userage </sql> 
    <select id="queryUsers" resultType="User">
        select * from test_user 
    </select>
    <select id="queryUser" resultType="User" parameterType="int">
        select    <include refid="userColumns"/> from test_user where userid=#{userid}
    </select>
    <insert id="addUser" parameterType="User">
        insert into test_user(userid,username,userage)
        values (#{userid},#{username},#{userage})
    </insert>
    <delete id="deleteUserById" parameterType="String">
        delete from test_user where userid=#{id}
    </delete>
    <update id="updateById" parameterType="User">
        update test_user set username=#{username},userage=#{userage} where userid=#{userid}
    </update>
</mapper>

oracle属性配置文件/mybatis/src/com/utils/oracle.jdbc.properties:

driver=oracle.jdbc.OracleDriver
username=user
password=pass
url=jdbc:oracle:thin:@127.0.0.1:1521:orcl

MyBatis工具类/mybatis/src/com/utils/MyBatisUtils.java:

public class MyBatisUtils {
    private static SqlSessionFactory sessionFactory=null;
    static {
        String resource="com/utils/SqlMapConfig.xml";
        Reader reader=null;
        try {
            reader = Resources.getResourceAsReader(resource);
        } catch (IOException e) {
            e.printStackTrace();
        }
        sessionFactory=new SqlSessionFactoryBuilder().build(reader);
    }
    public static SqlSessionFactory getSessionFactory(){
        return sessionFactory;
    }
    public static SqlSession getSession(){
        return sessionFactory.openSession();
    }    
}
Dao实现层/mybatis/src/com/dao/UserDaoImpl.java:

@Override
    public User queryUserById(int id ){
        SqlSession session=MyBatisUtils.getSession();
        User user=session.selectOne("queryUser", id);
        session.close();
        return user;
    }

UserBean覆盖的方法:

public String toString(){
        return this.userid+"..."+this.username+"..."+this.userage;
    }
Demo类:

UserDao userDao=new UserDaoImpl();

System.out.println(userDao.queryUserById(2));

 

打印的结果:2...name2...2

第一篇肯定写的不好,请各位见谅

 

 

© 著作权归作者所有

骑着毛驴来编程
粉丝 3
博文 11
码字总数 5391
作品 0
杭州
程序员
私信 提问
加载中

评论(1)

i
itxx2016
推荐国内最流行的iBatis、MyBatis代码生成网站: fwjava.com
在线生成,操作极其简单,生成的代码十分规范好用,经历过实战的主流代码.
现在,大多数知名的互联网公司都在用它.
一看就懂的Mybatis框架入门笔记

本篇为初学Mybatis框架时的入门笔记,整理发出 Spring集成Mybatis https://blog.csdn.net/yueshutong123/article/details/79337142 SpringBoot集成Mybatis https://blog.csdn.net/yueshuton......

巅峰小学生
2018/05/31
0
0
MyBatis3.2.x从入门到精通系列

Java框架篇---Mybatis 入门 MyBatis3.2.x从入门到精通之第一章 MyBatis3.2.x从入门到精通之第二章 MyBatis3.2.x从入门到精通之第三章 MyBatis3.2.x从入门到精通之第四章 MyBatis3.2.x从入门到...

HenrySun
2016/10/07
54
0
MyBatis学习笔记(三) 关联关系

首先给大家推荐几个网页: http://blog.csdn.net/isea533/article/category/2092001 没事看看 - MyBatis工具:www.mybatis.tk http://www.mybatis.org/mybatis-3/zh/getting-started.html 入......

陈嘻嘻哈哈
2016/02/27
0
0
MyBatis 源码分析系列文章合集

1.简介 我从七月份开始阅读MyBatis源码,并在随后的40天内陆续更新了7篇文章。起初,我只是打算通过博客的形式进行分享。但在写作的过程中,发现要分析的代码太多,以至于文章篇幅特别大。在...

coolblog.xyz
2018/09/11
0
0
Mybatis接口编程方式实现增删改查

前面一章Mybatis入门概述及第一个Mybatis实例实现增删改查 ,已经搭建好了eclipse,mybatis,mysql的环境,并且实现了一个简单的查询。请注意,这种方式是用SqlSession实例来直接执行已映射的S...

waj清风
2018/12/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

给Word加目录的正确方式

很多职场新人都搞不清楚:你辛辛苦苦、加班加点做的Word方案/计划,在领导面前啥都不是,花5分钟看都觉得浪费时间。 所以聪明人都会标记出Word文档中的重点,让领导一目了然,在1分钟内就能清...

太空堡垒_185
10分钟前
0
0
SpringCloud微服务架构升级总结

一、背景 1.1 应用系统的架构历史 1.2 什么是微服务? 起源:微服务的概念源于 2014 年 3 月 Martin Fowler 所写的一篇文章“Microservices”。文中内容提到:微服务架构是一种架构模式,它提...

宜信技术学院
18分钟前
11
0
kafka在windows下的安装(kafka_2.12-2.2.1)

kafka 的介绍我就不赘述了,本人理解不深,为实现sping-cloud配置自动刷新使用kafka,总结如下: 一、下载最新版本,我用的是2.12-2.2.1 http://kafka.apache.org/downloads 二、安装 1、解压...

pipi1919
19分钟前
0
0
vue中clearInterva清除失效解决方法

const chatTimer = setInterval(() => { console.log(chatTimer); this.chatMsg(); }, 1000);this.$once('hook:beforeDestroy', () => { clearInterval(chatTimer); })......

25903014
23分钟前
0
0
关于 Java 类加载器的这一点,市面上没有任何一本图书讲到

一、一个程序员的思考 大家都知道,Tomcat 处理业务,靠什么?最终是靠我们自己编写的 Servlet。你可能说你不写 servlet,你用 spring MVC,那也是人家帮你写好了,你只需要配置就行。在这里...

爱编程的浪子
28分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部