初看了一下ibatis,觉得还是应该很容易就上手的,于是不管三七二十一,先写一个可以跑起来的程序,以后再慢慢细读好了。
首先,先配置SqlMapConfig.xml 。该文件是配置整个ibatis的关键:
<sqlMapConfig>
<transactionManager type="JDBC">
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="com.mysql.jdbc.Driver" />
<property name="JDBC.ConnectionURL" value="jdbc:mysql://localhost/test_spring" />
<property name="JDBC.Username" value="root" />
<property name="JDBC.Password" value="123456" />
</dataSource>
</transactionManager>
<sqlMap resource="select.xml"></sqlMap>
</sqlMapConfig>
这里最关键的还是 sqlmapconfig 和 sqlmap 这两个元素。
然后配置 sqlmap 指定的 select.xml
<sqlMap namespace="SelectTest">
<select id="selectTest1" resultClass="hashMap" parameterClass="string">
select *
from spring_jdbc
where password=#as#
</select>
</sqlMap>
在里面定义了sql代码的id,返回类型,和参数的类型。
然后,就在测试代码中测试咯
String resource = "SqlMapConfig.xml";
Reader reader = null;
SqlMapClient sqlMap = null;
List list = null;
SelectResult sr = null;
try {
// 获取 sqlmapconfig 的配置信息
reader = Resources.getResourceAsReader(resource);
sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);
//使用ibatis的SqlMapClient接口进行SQL数据操作,具体可以见ibatis的API
list = sqlMap.queryForList("selectTest1", "Soz");
// 返回的 list 中,其实每一条list都是 hashMap。
for(int i = 0; i<list.size();i++){
System.out.println(list.get(i));
}
} catch (IOException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
这样,就对ibatis有了一点入门了。明天接着努力。
分享到:
相关推荐
### 三、Ibatis3的配置与初始化 #### 1. **初始化过程** - **读取配置文件**:使用 `Resources.getResourceAsReader()` 方法读取配置文件,例如 `CONFIG_FILE_PATH`。 - **创建 SqlSessionFactory**:通过 `...
SqlSessionFactory是线程安全的,一般在应用启动时初始化一次,然后在整个应用生命周期中复用。 ### 2.3 SqlSession SqlSession是Ibatis进行数据库操作的主要接口,通过它可以执行SQL语句并获取结果。每次数据库...
SqlSessionFactory可以通过配置文件或Java代码的方式初始化。 4. Mapper接口和Mapper XML文件:在Ibatis中,业务逻辑层可以操作Mapper接口,而实际的SQL执行逻辑则由对应的XML文件完成。这样实现了业务逻辑和数据...
在本篇文章中,我们将深入探讨如何使用 Java 编程语言结合 iBatis 框架进行 SQL 字符串的动态拼接。通过分析提供的代码片段,我们可以了解到在实际开发过程中,这种动态 SQL 的构建方式非常常见,尤其是在处理复杂的...
通常我们会在`Servlet`的初始化方法或者Spring的配置文件中创建: ```java String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory ...
2. **配置初始化**:配置`sqlMapConfig.xml`,包括数据源设置、日志配置、事务管理器等。 3. **创建Mapper接口**:定义与数据库操作相关的Java接口,比如查询、插入、更新和删除操作。 4. **编写映射文件**:在`...
"ibatistest2"项目中的数据库脚本可能包含了表结构的创建、数据初始化等内容,这为我们演示了Ibatis如何与数据库进行交互。 在Java代码中,Ibatis通过SqlSession对象来执行SQL。例如,使用SqlSessionFactoryBuilder...
- **初始化阶段**:在程序启动时,ibatis会读取`SqlMapConfigExample.xml`配置文件并创建`SqlSessionFactory`对象。 - **执行阶段**:通过`SqlSessionFactory`获取`SqlSession`对象,使用`SqlSession`执行映射文件...
开发指南会深入讲解如何初始化iBatis环境,包括设置配置文件、创建SqlMap文件、设计Mapper接口以及如何在Java代码中使用这些组件。此外,还会介绍如何处理结果集、执行批量操作、使用缓存机制等高级特性。 **iBatis...
测试类通常会包含初始化SqlSessionFactory,创建SqlSession,以及调用Mapper接口执行SQL语句的逻辑。例如: ```java SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder(); SqlSessionFactory ...
- 数据库初始化:在测试前,需要准备测试数据,可以使用如Flyway或Liquibase等工具进行数据库版本管理,自动创建和填充测试数据。 6. **"src"文件夹** "src"通常是Java项目的源代码目录,可能包含了Java实体类、...
8. **Plugins**: 插件机制是Ibatis的一大特色,`ibatis.util.Plugins`类用来创建和初始化插件,允许开发者对SQL执行过程进行拦截和增强。 9. **Exceptions**: `ibatis.util.Exceptions`类提供了一系列与Ibatis相关...
1. **依赖注入**:在Spring与iBATIS集成时,可以通过Spring的依赖注入特性来初始化iBATIS的SqlMapClient或SqlSessionFactory。这种方式可以避免硬编码,提高代码的灵活性。 2. **事务管理**:Spring提供的事务管理...
该类中的 `getResults` 方法会在第一次执行时初始化缓存中的字段映射信息。这意味着,如果前后两次查询的表结构不同(即字段不同),缓存的字段信息将会导致第二次查询时出现问题。 #### 示例代码解析 以下是一个...
1. **Spring的IoC容器**:Spring的核心是IoC容器,它负责创建对象、管理对象之间的关系以及执行对象的初始化和装配。在整合iBatis时,Spring会管理SqlSessionFactory和SqlSessionTemplate,这些都是与数据库交互的...
SqlSessionFactory通常在应用启动时初始化,然后在整个应用生命周期中重复使用。 2. SqlSession:它是与数据库进行交互的主要接口,提供了执行SQL、获取结果集、提交或回滚事务等方法。 3. Mapper:Mapper接口是...
3. SqlSessionFactory:负责创建SqlSession,通常根据配置文件初始化。 4. Executor:执行器,是SQL执行的核心,实现了SQL的解析、缓存管理以及事务控制等功能。 5. MappedStatement:表示一个映射的SQL语句,包含...
- **配置SQLMap**:通过`SqlMapConfig`类进行初始化配置。 - **事务处理**:Ibatis支持自动事务管理,也可以通过编程方式手动控制事务。 - **批处理**:对于大量数据的插入或更新操作,可以使用批处理来提高效率。...
项目中包含了创建数据库和表的脚本,这些脚本可能是SQL文件,用于初始化数据库结构。在iBATIS中,这些数据库表与Java对象(POJOs)对应,通过Mapper接口和XML映射文件定义SQL操作。 【Mapper接口与XML映射文件】 在...