`
jinbingchuan
  • 浏览: 9771 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ibatis学习之 执行sql脚本

 
阅读更多

1 创建表

create_table.sql 文件内容:

        create table address(

             id int primary key,

             employee_id int not null,

             street varchar(200),

             home_no int,

            address1 varchar(200),

           address2 varchar(300)

)

 

SqlMapConfig.xml

 

                     <?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE sqlMapConfig

PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"

"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">

<sqlMapConfig>

<settings useStatementNamespaces="true"/>

<typeAlias alias="Employee" type="com.softtek.Employee"/>

<typeAlias alias="Person" type="com.softtek.Person2"/>

<transactionManager type="JDBC">

<dataSource type="SIMPLE">

<property name="JDBC.Driver" value="com.mysql.jdbc.Driver"/>

<property name="JDBC.ConnectionURL" value="jdbc:mysql://localhost:3306/test"/>

<property name="JDBC.Username" value="root"/>

<property name="JDBC.Password" value="jinbingchuan"/>

</dataSource>

</transactionManager>

<sqlMap resource="Employee.xml"/> 

<sqlMap resource="Person.xml"/>

</sqlMapConfig>

 

这里主要是配置数据源和事务管理使用jdbc.

 

 

测试代码为

 

 

                         package com.softtek;

 

import java.io.IOException;

import java.io.Reader;

import java.sql.Connection;

import java.sql.SQLException;

 

import org.junit.Assert;

import org.junit.Before;

import org.junit.Test;

 

import com.ibatis.common.jdbc.ScriptRunner;

import com.ibatis.common.resources.Resources;

import com.ibatis.sqlmap.client.SqlMapClient;

import com.ibatis.sqlmap.client.SqlMapClientBuilder;

 

/*

@Author 

@Create Date 2013-2-7 下午2:39:31

@Place ShangHai

@Version 1.0

*/

public class RunScriptTest {

   private SqlMapClient smc;

   

   @Before

   public void init() throws IOException{

 smc =  SqlMapClientBuilder.buildSqlMapClient(Resources.getResourceAsReader("SqlMapConfig.xml"));

   }

   

   @Test

   public void testRunScript(){

 Connection conn = null;

 try {

conn = smc.getDataSource().getConnection();

ScriptRunner scriptRunner = new ScriptRunner(conn,false,true);

Reader reader = Resources.getResourceAsReader("create_table.sql");

scriptRunner.runScript(reader);

conn.commit();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

finally{

try {

if(conn != null)

conn.close();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

   }

}

 

 

 

 

分享到:
评论

相关推荐

    mybatis/ibatis自动生成SQLMapper脚本

    本教程将深入探讨如何使用MyBatis/iBatis自动生成SQLMapper脚本,以提高开发效率。 首先,SQLMapper是MyBatis的核心组成部分,它定义了与数据库交互的SQL语句和映射规则。通过自动生成这些映射文件,开发者可以避免...

    webwork+ibatis+sqlserver2000

    通过这个实例,开发者可以学习如何将WebWork的MVC模式与iBATIS的持久层技术相结合,以及如何利用SQL Server 2000进行数据管理。这样的组合为初学者提供了全面理解Java Web开发的机会,同时也适用于那些需要升级和...

    Java调用SQL脚本执行常用的方法示例

    这篇文章主要介绍了关于Java调用SQL脚本执行常用的方法的相关资料,并通过示例代码对大家进行了详细的介绍,以便大家更好地学习和工作。 首先,我们需要了解Java中调用SQL脚本执行的方式有多种,但在这里,我们只...

    ibatis学习完整实例,例子

    在"ibatistest2"项目中,你可以学习到如何正确配置这些元素,以确保Ibatis能正确地连接数据库并执行SQL。 数据库脚本在本实例中起到了基础性的作用。在实际应用中,Ibatis会根据配置文件中的SQL映射执行对应的...

    ibatis sqlserver代码自动生成

    在IT行业中,数据库操作是开发工作中的重要环节,而Ibatis作为一款优秀的持久层框架,为Java开发者提供了灵活的SQL映射功能,减轻了手动编写SQL和操作结果集的负担。SQLServer则是一款广泛使用的商业关系型数据库...

    ibatis源码

    此外,压缩包中的“ibatis”文件可能包含了iBatis的源码、配置文件、SQL脚本、测试用例等。其中,源码部分展示了iBatis的实现细节,如Mapper接口的实现、SqlSession的管理、Executor的执行逻辑等;配置文件(如...

    iBatis SQL Maps开发指南.pdf

    - **ScriptRunner**:用于执行SQL脚本。 通过以上总结,可以看出iBatis SQL Maps是一个功能强大的框架,不仅支持灵活的SQL语句定制,还提供了丰富的配置选项和高级功能,如动态SQL、缓存机制等,使得开发者能够在...

    mybatis,ibatis,hibernate 显示查询SQL

    为了显示查询SQL,Hibernate 提供了`hibernatetool`,可以生成SQL脚本,或者通过配置`logging.level.org.hibernate.SQL`来打印SQL语句。此外,Hibernate的日志系统支持JDK Logging、Log4j 和 SLF4J。 **显示查询SQL...

    iBatis操作MySQL增删改查

    为了更好地理解这些操作,你可以查看压缩包中的SQL文件,它包含了创建表、填充测试数据的脚本。同时,完全配置文件展示了如何设置iBatis的SqlSessionFactory,以及如何将SQL映射文件加载进去。这将帮助你快速搭建起...

    Ibatis+Oracle(含对应数据库sql) 源码

    在实践中,你可以期待找到如何创建Oracle数据库表的SQL脚本,如何配置Ibatis以连接Oracle,如何编写和执行SQL语句,以及如何在Java代码中调用这些操作的示例。 总的来说,这个资源将帮助学习者理解以下几个关键知识...

    C# IBatis IBatis基础 完整项目

    3. **IBatis**:IBatis是SQL Map的升级版,是一个持久层框架,它允许开发者将SQL查询直接写在配置文件中,避免了在代码中嵌入SQL的复杂性。在C#和Asp.Net环境中,IBatis作为数据访问层,负责处理数据库交互。 4. **...

    简单Ibatis例子,可以运行

    `db.txt`文件可能包含了用于创建或连接数据库的SQL脚本或者配置信息。在Ibatis中,数据库连接信息通常在`SqlSessionFactory`的配置文件(如`mybatis-config.xml`)中定义,包括数据库URL、用户名和密码。 首先,...

    从iBatis迁移到MyBatis

    在数据库开发中,持久层框架是至关重要的,它负责处理数据库的CRUD(创建、读取、更新、删除)操作,以及SQL语句的动态构建和执行。iBatis以其灵活的SQL映射和对XML或注解的支持而受到欢迎,但随着时间的推移,...

    Ibatis+MySql(含对应数据库sql) 源码

    通过解压"Ibatis01MySql"这个文件,你可以看到实际的项目结构,包括Ibatis的配置文件、Mapper接口、映射文件以及数据库的SQL脚本。这将帮助你更直观地了解Ibatis是如何与MySql协作的,同时也方便你动手实践,加深...

    iBATIS3学习--Demo

    4. **hr.sql** - 这可能是一个SQL脚本文件,用于创建与这个示例相关的数据库表结构。通常,这些脚本包含了创建表、插入初始数据或者设置约束的语句。在学习iBATIS时,理解这些数据库表的结构对于更好地掌握映射和...

    iBATIS教程之入门浅析借鉴.pdf

    此外,iBATIS还提供了ScriptRunner工具,方便进行数据库的初始化和测试,例如运行SQL脚本进行数据准备。通过这样的配置和使用,开发者可以轻松地在Java应用中实现数据访问,同时保留对SQL查询的直接控制,达到高效且...

    ibatis例子,很好的

    "users.sql" 可能是一个包含用户数据的SQL脚本,用于创建或填充一个用户表,这在学习Ibatis时是非常常见的,因为Ibatis经常用来操作数据库中的表。"ibatisTest"可能是一个测试类或者包含测试用例,展示如何在实际...

    struts2+ibatis+mysql 项目

    在本项目中,`sql`文件很可能是数据库的初始化脚本,包含了创建表、插入初始数据等操作。使用MySQL数据库可以确保数据的安全存储和快速查询。 项目中的两个主要文件夹`testServerCore`和`testServerWeb`可能分别...

Global site tag (gtag.js) - Google Analytics