`
8792321
  • 浏览: 39736 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

ibatis调用mysql存储过程示例

阅读更多

配置文件:

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 cacheModelsEnabled="true"
			  enhancementEnabled="true"
			  lazyLoadingEnabled="true"
			  maxRequests="32"
			  maxSessions="10"
			  maxTransactions="5"
			  useStatementNamespaces="true"
			/>

  <!-- Configure a built-in transaction manager.  If you're using an 
       app server, you probably want to use its transaction manager 
       and a managed datasource -->
  <transactionManager type="JDBC" commitRequired="false">
    <dataSource type="proxool.ProxoolDataSourceFactory">
      <property name="driver" value="com.mysql.jdbc.Driver"/>
      <property name="driverUrl" value="jdbc:mysql://localhost:3306/test"/>
      <property name="user" value="root"/>
      <property name="password" value="root"/>
      <property name="alias" value="default"/>
      <property name="maximum-connection-count" value="40"/>
      <property name="overload-without-refusal-lifetime" value="60"/>
      <property name="house-keeping-test-sql" value="select 1"/>  
    </dataSource>
  </transactionManager>


  <sqlMap resource="proxool/User.xml"/>

</sqlMapConfig>

 

User.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap
PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-2.dtd">

<sqlMap namespace="user">

	<!-- 返回结果集 -->
	<parameterMap id="ParameterMap" class="map">
	    <parameter property="userNo" jdbcType="INTEGER" javaType="java.lang.Integer" mode="IN"/>
  	</parameterMap>

	<procedure id="call_SearchUser" parameterMap="ParameterMap" resultClass="proxool.User">
		{call selectuser(?)} 
	</procedure>

</sqlMap>

 

数据库脚本:

create procedure selectuser(in userno int) 
begin   
 select * from user where uid = userno;   
end 

 

 pojo类:

package proxool;

public class User {

	private String uid;

	private String usercd;

	private String password;

	private String addymd;

	public String getAddymd() {
		return addymd;
	}

	public void setAddymd(String addymd) {
		this.addymd = addymd;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String getUid() {
		return uid;
	}

	public void setUid(String uid) {
		this.uid = uid;
	}

	public String getUsercd() {
		return usercd;
	}

	public void setUsercd(String usercd) {
		this.usercd = usercd;
	}

}

 

测试代码: 

List list = null;
		String resource = "proxool/sqlMapConfig.xml";
		Reader reader;
		SqlMapClient sqlMap = null;
		try {
			reader = Resources.getResourceAsReader(resource);
			sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);
			sqlMap.startTransaction();
			HashMap<String, Object> map = new HashMap<String, Object>();
			map.put("userNo", 1);
			list = sqlMap.queryForList("user.call_SearchUser", map);
			for (int i = 0; i < list.size(); i++) {
				User user = (User) list.get(i);
				System.out.print(user.getUid());
				System.out.print('\t');
				System.out.print(user.getUsercd());
				System.out.print('\t');
				System.out.println(user.getPassword());
			}
			sqlMap.commitTransaction();
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			sqlMap.endTransaction();
		}		

 

分享到:
评论
1 楼 fnye 2012-07-06  
[b][/b][i][/i][u][/u]
引用

    [*]
[img][/img][url][/url]

相关推荐

    IBatis查删改查与调用存储过程 mysql数据库

    4. **存储过程调用**:演示如何在IBatis中调用MySQL的存储过程,包括传递参数和接收返回值的方法。 5. **异常处理**:介绍在处理数据库操作时可能出现的异常,以及如何优雅地捕获和处理这些异常。 6. **性能优化**...

    简单的ibatis与mysql的交互

    学习这个简单的ibatis与mysql交互示例,可以帮助你了解如何在实际项目中集成Ibatis。通过配置文件的设置,你可以理解如何连接到MySQL数据库;通过Mapper XML文件和接口,你可以学习如何编写和执行SQL;通过Service和...

    Ibatis连接MySQL数据库实例

    Ibatis是一个优秀的持久层框架,它简化了Java应用与数据库之间的数据操作,避免了传统的JDBC代码繁琐的过程。MySQL则是一款广泛使用的开源关系型数据库管理系统,以其高效、稳定和易用性而闻名。 首先,要实现...

    struts+spring+ibatis+mysql整合小例子(适用于新手)

    在这个例子中,Mysql作为数据存储,通过Ibatis执行的SQL语句进行数据的增删改查操作。Mysql以其高效、稳定和易于管理的特性,成为许多开发者的首选数据库。 整合过程大致如下: - 首先,配置Struts的Action和...

    Spring_Struts_Ibatis_Mysql Demo

    【Spring_Struts_Ibatis_Mysql Demo】是一个典型的Java Web应用程序示例,它整合了四个关键的技术框架:Spring、Struts、iBatis和MySQL数据库。这个项目旨在展示如何在实际开发中有效地集成这些组件,创建一个功能...

    struts2 存储过程

    在MySQL、Oracle、SQL Server等数据库中编写存储过程。例如,一个简单的存储过程可能是用于增删改查操作的。 3. **数据访问层(DAO)**: 在Struts2中,通常会创建一个DAO(数据访问对象)类来处理与数据库的交互...

    iBatis操作MySQL增删改查

    本篇文章将深入探讨如何利用iBatis进行MySQL数据库的增删改查操作,同时提供了一个亲测可用的示例,包括配套的SQL文件和完全配置,确保读者能够快速上手。 首先,我们需要了解iBatis的基本概念。iBatis是一个轻量级...

    ibatis开发资料及简单示例

    本资料包"ibatis开发资料及简单示例"显然是为了帮助开发者快速入门和理解Ibatis的工作原理和使用方法。其中包含的JAR包可能是Ibatis的核心库和其他相关依赖,这些库文件是运行Ibatis项目所必需的。 首先,我们来...

    ibatis操作mysql

    本文将深入探讨如何使用Ibatis来操作MySQL数据库,以实现高效、可维护的数据访问。 首先,我们需要理解Ibatis的基本概念。Ibatis是一个基于Java的SQL映射框架,它消除了几乎所有的JDBC代码和参数手动设置,允许...

    ibatis+mysql5.1的增删改查

    本示例主要展示了如何利用Ibatis配合MySQL 5.1进行基本的CRUD(Create、Read、Update、Delete)操作。 首先,我们需要理解Ibatis的基本工作原理。Ibatis是一个基于Java的SQL映射框架,它允许开发者将SQL语句直接写...

    mysql+abitis 示例

    MySQL+iBatis 示例 MySQL是一种广泛使用的开源关系型数据库管理系统,它以其高效、稳定和易用性在各种规模的应用中占据重要地位。iBatis则是一个优秀的持久层框架,它允许开发者将SQL语句与Java代码分离,提高了...

    iBatis教程与代码 mysql数据库

    iBatis是一个优秀的Java持久层框架,它支持定制化SQL、存储过程以及高级映射。在本教程中,你将深入理解如何利用iBatis与MySQL数据库进行交互,提升你的软件开发技能。以下是对每个部分的详细解释: 1. **iBatis...

    iBatis_Demo.rar_ibaties demo_ibatis de_ibatis mysql demo_ibati

    它处理结果映射,事务管理,并支持存储过程。 2. **项目结构与文件** "iBatisDemo"项目可能包含以下关键组件: - **SqlMapConfig.xml**:这是iBatis的全局配置文件,其中定义了数据源、事务管理器、环境等信息。 ...

    struts2+spring+ibatis增删查改翻页代码示例

    在这个“struts2+spring+ibatis增删查改翻页代码示例”中,我们将深入探讨这三个框架如何协同实现数据管理的基本操作,并集成MySQL数据库和Tomcat web服务器。 首先,Struts2作为MVC(模型-视图-控制器)框架,主要...

    ibatis数据库示例

    Ibatis,全称为MyBatis,是一个优秀...同时,对于标签中的"mysql",这意味着示例可能特别关注于MySQL数据库的使用,包括特定的数据类型、存储过程等特性。总的来说,这个示例是一个全面学习和实践Ibatis框架的好资源。

    struts spring ibatis mysql 整合 实例 数据库 源码

    Struts、Spring、iBatis和MySQL是Java Web开发中常用的四大框架,它们共同构建了一个高效、灵活且可扩展的应用程序架构。这个整合实例提供了基于这些技术的源码,可以帮助开发者深入理解它们如何协同工作。 Struts...

    Mysql+Struts+Ibatis的demo

    iBatis,又称为MyBatis,是一个优秀的持久层框架,它支持定制化的SQL、存储过程以及高级映射。与Hibernate等全对象关系映射框架不同,iBatis更倾向于SQL语句的灵活控制,允许开发者根据需求编写特定的SQL。在本示例...

    重现经典的ibatis示例项目jpetstore,采用最新的springMVC+mybatis+mysql.zip

    该项目是基于经典的iBatis数据访问框架的JPetStore示例,通过现代的SpringMVC、MyBatis和MySQL数据库技术进行了重新实现。这为我们提供了一个深入理解如何在实际开发中整合这些技术的绝佳机会。以下是对这个项目涉及...

    ibatis入门示例

    这个入门示例展示了如何简单地实现CRUD功能,但Ibatis的功能远不止这些,它还支持存储过程、结果集映射、自定义类型处理器等多种高级特性,使得数据库操作更加灵活和高效。在实际项目中,根据需求和团队习惯,选择...

    iBatis教程中文版

    - 在iBatis中,可以通过`&lt;call&gt;`元素调用存储过程。 - 需要在数据库中先定义好存储过程。 **Contact.xml示例**: ```xml {call sp_insert_contact(#{firstName}, #{lastName}, #{email}) } ``` 通过以上...

Global site tag (gtag.js) - Google Analytics