博客已迁移到CSDN《https://blog.csdn.net/qq_33375499

步骤:

  • 搭建配置环境:导入相关jar包
  • 配置文件:
    • JDBC连接属性文件
    • 总配置文件
    • 关于每个实体的映射(map.xml)文件

JDBC连接属性文件 jdbc.properties

## mysql
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://192.168.10.140:3308/xxx?autoReconnect=true
jdbc.username=xxx
jdbc.password=xxx ## oracle-框架库
jdbc.driverClassName=oracle.jdbc.driver.OracleDriver
jdbc.url=jdbc\:oracle\:thin\:@192.168.10.207\:1521\:orcl
jdbc.username=xxx
jdbc.password=xxx

总配置文件:sqlMapConfig.xml

<sqlMapConfig>
<!-- 数据库参数配置文件 -->
<properties resource="jdbc.properties" />
<transactionManager type="jdbc">
<dataSource type="SIMPLE">
<property value="${driverClassName}" name="jdbc.DriverClassName" />
<property value="${url}" name="jdbc.ConnectionURL" />
<property value="${username}" name="jdbc.Username" />
<property value="${password}" name="jdbc.Password" />
</dataSource>
</transactionManager> <!-- 加载实体映射文件 -->
<sqlMap resource="student.xml" />
</sqlMapConfig>

关于每个实体的映射文件:student.xml

<sqlMap>
<resultMap id="studentResult" class="com.xxx.Student">
<result property="sid" column="sid" />
<result property="sname" column="sname" />
<result property="major" column="major" />
</resultMap> <typeAlias alias="student" type="com.xxx.Student" <!-- select查询 -->
<!-- insert新增 -->
<!-- update修改 -->
<!-- delete删除 --> </sqlMap>

读取配置:

private static SqlMapClient sqlMapClient = null;
static{
Reader reader = null;
try{
reader = Resources.getResourceAsReader("sqlMapConfig.xml");
sqlMapClient = SqlMapClientBuilder.buildSqlMapClient(reader);
}catch(IOException e){
e.printStackTrace();
}finally {
if(reader != null){
reader.close();
}
}
}

CRUD操作:

借助SqlMapClient中的方法:

- queryForObject 查询单条记录
- queryForList 查询多条记录
- insert 新增
- delete 删除
- update 修改

ibatis学习笔记的更多相关文章

  1. ibatis 学习笔记 3 - pfpfpfpfpf的专栏 - 博客频道 - CSDN.NET

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  2. ibatis学习笔记(完整)

    1.       Ibatis是开源软件组织Apache推出的一种轻量级的对象关系映射(ORM)框架,和Hibernate.Toplink等在java编程的对象持久化方面深受开发人员欢迎. 对象关系映 ...

  3. IBatis.Net学习笔记六--再谈查询

    在IBatis.Net学习笔记五--常用的查询方式 中我提到了一些IBatis.Net中的查询,特别是配置文件的写法. 后来通过大家的讨论,特别是Anders Cui 的提醒,又发现了其他的多表查询的 ...

  4. 【web开发学习笔记】ibatis学习总结

    ibatis学习总结 ibatis数据库配置文件 <?xml version="1.0" encoding="UTF-8" ?> <!DOCT ...

  5. Spring学习笔记--spring+mybatis集成

    前言: 技术的发展, 真的是日新月异. 作为javaer, 都不约而同地抛弃裸写jdbc代码, 而用各种持久化框架. 从hibernate, Spring的JDBCTemplate, 到ibatis, ...

  6. Java学习笔记4

    Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Run ...

  7. Mybatis学习笔记(二) 之实现数据库的增删改查

    开发环境搭建 mybatis 的开发环境搭建,选择: eclipse j2ee 版本,mysql 5.1 ,jdk 1.7,mybatis3.2.0.jar包.这些软件工具均可以到各自的官方网站上下载 ...

  8. mybatis学习笔记(五) -- maven+spring+mybatis从零开始搭建整合详细过程(附demo和搭建过程遇到的问题解决方法)

    文章介绍结构一览 一.使用maven创建web项目 1.新建maven项目 2.修改jre版本 3.修改Project Facts,生成WebContent文件夾 4.将WebContent下的两个文 ...

  9. mybatis学习笔记(二)-- 使用mybatisUtil工具类体验基于xml和注解实现

    项目结构  基础入门可参考:mybatis学习笔记(一)-- 简单入门(附测试Demo详细过程) 开始体验 1.新建项目,新建类MybatisUtil.java,路径:src/util/Mybatis ...

随机推荐

  1. caioj1462: 【EXKMP】回文串

    不得不说这是一道好题(前排膜拜灯教授),其实这道题如果不说是EXKMP,很容易就想到Manacher(好像也可以这样做) 回到这道题,这样只有一个字符串,还要求回文?立刻想到了将这个串和它的反串跑EX ...

  2. Oracle :多实例切换

    Connecting to 10.1.4.21:22...Connection established.To escape to local shell, press 'Ctrl+Alt+]'. La ...

  3. 201响应为什么进了AJAX error回调函数

    明明AJAX发送请求成功,但是后端返回的不是200,而是201,结果进了error的回调函数,想这种情况,只需要把“dataType:"json",改成dataType:" ...

  4. py-day15_css+js_初

    css+js_初 一.鼠标移动变色 <!DOCTYPE html> <html lang="en"> <head> <meta chars ...

  5. oracle 查看表是否存在、包含某字段的表、表是否包含字段

    表是否存在: select count(*) from user_tables where table_name = #{tablename} 包含某个字段的表 select * from user_ ...

  6. 各个版本Microsoft Visual C++运行库下载

    #Microsoft Visual C++ 2005 Microsoft Visual C++ 2005 Redistributable Package (x86) https://www.micro ...

  7. HDU 5884 Sort (二分+k叉哈夫曼树)

    题意:n 个有序序列的归并排序.每次可以选择不超过 k 个序列进行合并,合并代价为这些序列的长度和.总的合并代价不能超过T, 问 k最小是多少. 析:首先二分一下这个 k .然后在给定 k 的情况下, ...

  8. iOS后台模式BackgroundMode

    概述 iOS平台提供给应用特殊的后台服务,应用在后台时仍被允许能执行一会. 后台模式 UIBackgroundModes Xcode Modes 1. audio -> Audio.Airpla ...

  9. C++开发工程师面试题库 50~100道

    51. New delete 与malloc free 的联系与区别?答案:都是在堆(heap)上进行动态的内存操作.用malloc函数需要指定内存分配的字节数并且不能初始化对象,new 会自动调用对 ...

  10. UVALive 6833【模拟】

    题意: 算从左往右的值,先乘后加的值,数的范围<=9= =,然后根据满足的条件输出字符. 思路: 从左往右就是直接来了,先做乘法就是乘法两边的数字靠向右边那个,且左边那个为0,然后所有值一加就好 ...