Mybatis 的配置

  1.创建项目(当然,这是废话)

  2.导包

    下载mybatis-3.2.0版:https://repo1.maven.org/maven2/org/mybatis/mybatis/

    下载commson-dbcp :http://maven.aliyun.com/nexus/#nexus-search;quick~dbcp

    下载ojdbc :http://maven.aliyun.com/nexus/#nexus-search;quick~ojdbc6

  3.配置 主配置文件(xml 文件),用来指定数据库的连接参数(该文件通常放在src/main/resources 文件下)

<?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="environment">
<!-- 连接参数配置  一个environment对应一个数据源-->
    <environment id="environment">
        <transactionManager type="JDBC"></transactionManager>
        <dataSource type="POOLED">
<!--value 值根据项目连接的数据库参数填写-->
            <property name="driver" value="oracle.jdbc.OracleDriver"/>
            <property name="url" value="jdbc:oracle:thin:@192.168.30.58:1521:orcl"></property>
                <property name="username" value="system"/>
                <property name="password" value="123456"/>
        </dataSource>
    </environment>
</environments>

<!--mappers 是配置 指向映射文件所在的位置  resource 指向文件所在地址,如果该地址不存在该文件就会报错-->
    <mappers>
        <mapper resource="UserMapper.xml"></mapper>

    </mappers>

</configuration>

  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">

<!-- namespace 映射DAO接口 所在的文件目录 -->
<mapper namespace="chinaedu.mapper.UserMapper">
    <!-- 根据sql 语句选择不同的标签 id映射 接口 下的方法名  resultType 填返回的参数类型 parameterType填传入的参数类型-->
    <select id="findById" resultType="chinaedu.beans.User" parameterType="Integer">
        <!-- #{} 花括号里面填 传入的参数 ,改参数名应映射 bean类 里的属性名 -->
        select * from user_zhang where id= #{id}
    </select>

    <select id="findMapOne" resultType="Map" >
        select * from user_zhang where id=#{id}
    </select>

    <insert id="save" parameterType="chinaedu.beans.User">
        insert into user_zhang values (#{id},#{userName},#{password})
    </insert>

</mapper>
    

5. 获取Sqlsession 对象,该对象包含了所有执行Sql操作的方法,用于执行已映射的SQL 语句

  获取SqlSession对象方法 :通过 SqlSessionFactoryBuilder 对象根据mybatis的主配置文件创建SqlSessionFactory对象,

每一个Mybatis的应用程序都以一个SqlSessionFactory 对象为核心,负责创建SqlSession 对象。封装获取SqlSession的代码如下:

  

package chinaedu.util;

import java.io.IOException;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

public class MybatisUtil {
    private static SqlSessionFactory sqlSessionFactory;

    static { // 静态区,加载速度快

        SqlSessionFactoryBuilder builder=new SqlSessionFactoryBuilder();
        try {
            sqlSessionFactory=builder.build(Resources.getResourceAsReader("sqlMapConfig.xml"));
        } catch (IOException e) {
            e.printStackTrace();
        }

    }

    public static SqlSession getSqlSession(){
        return sqlSessionFactory.openSession();
    }

}

  6.创建 bean 类,该类的 成员变量 对应数据库的字段名(用于映射)

  7.创建 Mapper接口,该接口的目录地址应对应 映射配置文件的 namespace 属性值

  8.创建Dao 类 继承Mapper 接口,实现对数据库的增删改查操作,简单代码参考如下

    

package chinaedu.mapper;

import java.util.Map;

import org.apache.ibatis.session.SqlSession;

import chinaedu.beans.User;
import chinaedu.util.MybatisUtil;

public class UserDao implements UserMapper {

    SqlSession session=MybatisUtil.getSqlSession();

    public static void main(String[] args) {
        UserMapper dao =new UserDao();
        User user=dao.findById(1);
        System.out.println(user);
        user.setId(4);
        dao.save(user);

        Map<String,String> map=dao.findMapOne(1);
        System.out.println(map);
    }

    public User findById(int id) {

        User user=session.selectOne("chinaedu.mapper.UserMapper.findById",id);
        //session.close();
        return user;
    }

    public Map<String, String> findMapOne(int id) {
        UserMapper um=session.getMapper(UserMapper.class);
        Map<String,String> map=um.findMapOne(id);
        //System.out.println(um);
        //session.close();
        return map;

    }

    public void save(User user) {
        try {

            session.insert("chinaedu.mapper.UserMapper.save",user);
            session.commit();

        } catch (Exception e) {
            session.rollback();
            e.printStackTrace();
        }
        //session.close();
    }

}

end

    

Mybatis框架的简单配置的更多相关文章

  1. springMVC+spring+MyBatis(SSM)的简单配置

    SSM(Spring+SpringMVC+MyBatis)框架集由Spring.SpringMVC.MyBatis三个开源框架整合而成,常作为数据源较简单的web项目的框架. 其中: Spring是一 ...

  2. 深入理解MyBatis框架的的配置信息

    面对一个框架,最重要的不是说回用其代码就可以了,我们需要了解其思想,这样才能更快更好的掌握这个框架.而对于一个框架,最重要的就是其配置文件的作用及功能了.下面,我就来谈一谈我今天遇到的这个MyBati ...

  3. SSM框架之MyBatis框架实现简单的增删改查

    MyBatis框架介绍 MyBatis是一个优秀的数据持久层框架,在实体类和SQL语句之间建立映射关系是一种半自动化的ORM实现,其封装性要低于Hibernate,性能优越,并且小巧,简单易学,应用也 ...

  4. Mybatis框架的简单运用

    一.配置流程 1.流程示意图(通过XML映射文件实现): 2.流程: 2.1 导入包: 2.1.1 下载包 数据库驱动包(本文以MySQL为例):https://mvnrepository.com/a ...

  5. MyBatis框架的文件配置

    第一步:log4j.properties的配置 原因:Mybatis的日志输出是依赖与log4j的,所以必须要配置 # Global logging configuration log4j.rootL ...

  6. MyBatis复习【简单配置CRUD】

    这里的案例集成了log4j的日志框架,项目架构: 用到的jar文件 添加配置文件:mybatis-config.xml  和dao层配置文件StudentDao.xml 这里书写了个简单的案例仅为了说 ...

  7. SSM Spring SpringMVC Mybatis框架整合Java配置完整版

    以前用着SSH都是老师给配好的,自己直接改就可以.但是公司主流还是SSM,就自己研究了一下Java版本的配置.网上大多是基于xnl的配置,但是越往后越新的项目都开始基于JavaConfig配置了,这也 ...

  8. Java Web开发中Spring+MyBatis框架的简单搭建

    这里使用的eclipse,首先创建一个动态web项目. 1.导入Spring IOC.AOP.DAO.dbcp.dbdrive.mybatis.jar . mybatis-spring.jar  本人 ...

  9. mybatis框架的核心配置Mapper.xml

    映射管理器resultMap:映射管理器,是Mybatis中最强大的工具,使用其可以进行实体类之间的关系,并管理结果和实体类间的映射关系 需要配置的属性:<resultMap id=" ...

随机推荐

  1. An attempt was made to call the method com.google.gson.GsonBuilder.setLenient()Lcom/google/gson/GsonBuilder; but it does not exist. Its class, com.google.gson.GsonBuilder, is available from the foll

    SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/G:/sharp/repo ...

  2. MongoDB首次启动常见问题

    问题1. exception in initandlisten 29 data directory /data/db not found 问题:MongoDB默认存储路径为/data/db,这里显示没 ...

  3. asp.net+sql数据库学生信息管理系统

    一款学生信息管理系统送给大家. 功能部分: 1.教师管理(添加,修改,删除,查看) 2.学生管理(添加,修改,删除,查看) 3.班级管理(添加,修改,删除,查看) 4.学生成绩管理(添加,修改,删除, ...

  4. SpringBoot-集成通用mapper

    SpringBoot-集成通用mapper SpringBoot-集成通用mapper ​ 我们在SpringBoot中整合了MyBatis,但是大量重复的增删改查还是很头疼的问题,MyBatis也给 ...

  5. Django(七)模型:字段属性、字段选项(参数)

    一.模型类属性命名限制 参考:https://docs.djangoproject.com/zh-hans/3.0/topics/db/models/ 1)不能是python的保留关键字. 2)不允许 ...

  6. poj 2376 Cleaning Shifts 最小区间覆盖

    Cleaning Shifts Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 40751   Accepted: 9871 ...

  7. BBS那些事儿

    目录 1 注册 2 登陆 3 图片验证码相关 4 首页相关,Django Admin后台录入数据 5 注销功能 6 修改密码 7 用户头像展示,media配置 8 个人站点,个人侧边栏 9 侧边栏筛选 ...

  8. 安装部署及升级到Exchange Server 2010

    本文档详细的描述了,如何在Windows Server 2008 R2的环境下安装Exchange Server 2010,包括的内容有:   先检查组织环境: 1.请确保林的功能级别至少为 Wind ...

  9. centos下安装tomcat8.

    一.tomcat安装之前,首先安装java jdk,所以手首先将相关安装包都下载传到虚拟机上 1.下载java的linux----jdk1.8安装 到官网上下载与本虚拟机版本位相适应的位节数的Linu ...

  10. Ubuntu上安装tftp服务

    1. 安装 sudo apt install tftpd-hpa 2.设置工作目录 mkdir ~/tftpdroot tftpdroot 3.修改配置文件 sudo vi /etc/default/ ...