`
lorenhood
  • 浏览: 56344 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

Mybatis基础学习一

阅读更多
Mybatis,是一个轻量级的ORM产品,比较适合中小型项目,适合我的要求。

Mybatis 所需要的包:
Mybatis3.jar 核心包
ognl.jar  Mybatis 使用 ognl 解析XML文件。
javassist.jar , 该文件一般情况下,在WEB容器下都有,只是 APPLICATION下需要另外引入。

其它因为项目而使用的包:
1. JDBC 包。(连接数据库嘛,必须的。)
2. 日志. slf4j 或 log4j等。
我使用的是 slf4j  , 日志实现 用logback-core和  logback-classic 2个jar包。

上面,把最基本的编码所需要的东西列了一下。
接下来,需要XML配置文件和java code。

配置文件
1. mybatis的配置文件
<?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>
    <properties resource="configs/jdbc.properties"></properties>
    <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>
    </environments>  
    <mappers>
        <mapper resource="test/orm/JUserDao.xml"></mapper>
    </mappers>  
</configuration>


2. logback的日志配置Console输出
<?xml version="1.0" encoding="UTF-8"?>
<configuration>   
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">        
        <encoder><pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern></encoder>
    </appender>
    <root level="INFO"><appender-ref ref="STDOUT" /></root>
</configuration>


接下来,就要开始编写代码了。
先是实例化 SqlSessionFactory ,使它成为全局的对象。
private static final Logger log=org.slf4j.LoggerFactory.getLogger(DbFactory.class);
private static  SqlSessionFactory factory;
static{
        String resource="configs/mybatisconfig.xml";
        Reader reader;
        try {
            reader = Resources.getResourceAsReader(resource);
            SqlSessionFactoryBuilder builder=new SqlSessionFactoryBuilder();            
            factory=builder.build(reader);
        } catch (IOException ex) {
            log.error("mybatis configuration build error!",ex);
            System.exit(1);
        }
    }
    
    public static SqlSession getSqlSession(){
        return factory.openSession();
    }



完成SqlSession的获取方法后,就是操作数据库了。
这里的pojo JUser类就省略不贴出来了。
public JUser selectOneUser(String userid){
        SqlSession sess=DbFactory.getSqlSession();
        JUser ret;
        try
        {
            JUserDao userdao=sess.getMapper(JUserDao.class);
            ret=userdao.selectOneUser(userid);
        }
        finally{
            sess.close();
        }
        return ret;
    }

这就是Mybatis的数据库操作的接口文件。通过 SqlSession.getMapper方法可以得到一个实例,这就是Mybatis的作用之一,不需要用户去编写一个实现类。
public interface  JUserDao { 
        
    public JUser selectOneUser(String userid);
    
    public List<JUserView> selectUsers(String deptid);    
}


这里,最主要的就是JUserDao.xml文件了,getMapper的时候,mybatis根据类名的方法名,去找到对应的XML里的语句,再执行,并将结果返回。
<resultMap id="userResultMap" type="test.orm.model.JUser">
        <id property="userid" column="user_id" jdbcType="CHAR" />
        <result property="username" column="user_name" jdbcType="CHAR"/>
        <result property="password" column="password" jdbcType="CHAR"/>        
</resultMap>
<select id="selectOneUser" resultMap="userResultMap" parameterType="string" >
        select user_id,user_name,password from tb_user
        where user_id=#{userid}
</select>



下面是我的所有代码的清单

Mybatis中文手册http://dl2.iteye.com/upload/attachment/0114/6200/fd005f15-bcbd-3251-b94b-f249bddf24a8.pdf
  • 大小: 15.3 KB
分享到:
评论

相关推荐

    mybatis基础学习项目源代码

    本项目源代码是针对Mybatis的基础学习,旨在帮助初学者深入理解Mybatis的工作原理和用法。 首先,我们需要了解Mybatis的核心组件。Mybatis 包括配置文件、映射文件、SqlSession对象和Mapper接口。配置文件(通常为...

    MYBATIS学习资料文件

    1. **MyBatis简介**:MyBatis是一个轻量级的ORM(对象关系映射)框架,它允许开发者编写SQL语句,将数据库操作与业务逻辑分离,提供灵活的数据库访问方式。 2. **配置文件**:MyBatis的主配置文件(mybatis-config....

    MyBatis学习笔记1

    总之,"MyBatis学习笔记1"是一份关于MyBatis框架基础和进阶使用的教程,通过学习,读者可以掌握MyBatis的基本使用方法,理解其核心机制,并能进行源码级别的探索,提升数据库操作的效率和灵活性。配合"mybatis_test...

    MyBatis 基础学习

    在这个基础学习中,我们将深入探讨MyBatis的核心概念、配置以及实际操作,旨在帮助初学者快速上手。 首先,了解MyBatis的基本架构是非常重要的。MyBatis由SqlSessionFactoryBuilder、SqlSessionFactory和SqlSession...

    《MyBatis 基础笔记》源代码

    以上内容只是MyBatis基础部分的概述,实际使用中,MyBatis还有更多高级特性和最佳实践,如结果映射的复杂性、延迟加载、插件机制等,都需要深入学习和理解。通过阅读《MyBatis 基础笔记》的源代码,你可以更深入地...

    mybatis基础源码及jar包

    这个“mybatis基础源码及jar包”资源可能包含了MyBatis框架的基础源码和所需的JDBC驱动,帮助学习者深入理解MyBatis的工作原理以及如何在实际项目中应用。 首先,我们来详细了解一下MyBatis的核心概念: 1. **XML...

    mybatis-plus学习项目笔记

    MyBatis-Plus是基于MyBatis框架的增强工具,它在MyBatis的基础上做了很多自动化处理,减少了开发工作量,提升了开发效率。MyBatis-Plus主要包含实体类、Mapper接口、XML映射文件和配置文件四大部分。 2. **基本...

    MyBatis基础学习笔记

    初学者可以看看

    Mybatis学习视频+教程+源码

    Mybatis 是一款流行的Java持久层框架,它简化了数据库与Java应用之间的交互,提供了一种灵活的映射机制,使得开发者能够将SQL语句直接写在配置文件或者Mapper接口中,极大地提高了开发效率。本资源包含Mybatis的学习...

    java资源之Mybatis基础入门学习笔记

    【Mybatis基础入门学习笔记】 Mybatis是一款广泛使用的Java持久层框架,它的主要目标是简化对数据库的操作,提供更加灵活的SQL映射机制。Mybatis起源于Apache组织的ibatis框架,历经发展,在2010年迁移到Google ...

    mybatis入门学习的完整项目代码

    本项目"mybatis入门学习的完整项目代码"旨在为初学者提供一个完整的 MyBatis 学习环境,帮助理解 MyBatis 的基本概念、配置以及如何在实际项目中应用。 首先,我们要了解 MyBatis 的核心概念: 1. **配置文件**:...

    mybatis学习

    1. **配置文件**:MyBatis 的配置文件包含了数据库连接信息、事务管理、环境配置等,它是 MyBatis 初始化的基础。例如,我们需要在配置文件中指定数据源、事务管理器以及 SqlSessionFactory 的构建方式。 2. **...

    Mybatis框架基础

    Mybatis框架基础 Mybatis是一个流行的关系型数据库访问框架,它的主要目的是为了简化Java开发者对数据库操作的复杂性,提供了一种快速实现数据访问的方法。在传统的Java开发中,使用JDBC(Java Database ...

    spring boot+mybatis基础demo

    在本项目"spring boot+mybatis基础demo"中,我们将探讨如何使用Spring Boot与MyBatis框架构建一个基本的应用程序。这个示例演示了如何整合这两个流行的技术来处理数据库操作,其中数据源包括SQL Server和Oracle。...

    MyBatis基本使用总结

    增删改查(CRUD)是数据库操作的基础,MyBatis提供了简洁的方式来处理这些操作。例如,插入数据时,可以通过`@Insert`注解在Mapper接口的方法上,指定对应的SQL语句;查询数据时,可以使用`@Select`注解,或者在映射...

    MyBatis3学习资料

    配置文件中包含了数据源、事务管理器和SqlSessionFactory的设置,它是整个MyBatis系统运行的基础。Mapper接口是Java代码与SQL语句之间的桥梁,通过注解或XML文件定义了SQL的执行逻辑。XML映射文件则详细定义了SQL...

    mybatis基础1.zip

    这个"mybatis基础1.zip"压缩包包含了一系列的教学视频,旨在帮助初级或无经验的IT从业者快速掌握MyBatis的基本用法和核心概念。 1. **原生态JDBC编程中的问题总结** 在视频"02原生态jdbc编程中的问题总结.avi"中,...

    MyBatis学习笔记.zip

    这两个概念的理解是MyBatis学习的基础。 4. **Mapper接口与Mapper XML文件**:MyBatis通过Mapper接口与XML文件实现SQL语句的映射。笔记会详细解释如何定义Mapper接口,编写XML文件中的SQL语句,并在接口中声明方法...

Global site tag (gtag.js) - Google Analytics