配置文件:
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();
}
分享到:
相关推荐
4. **存储过程调用**:演示如何在IBatis中调用MySQL的存储过程,包括传递参数和接收返回值的方法。 5. **异常处理**:介绍在处理数据库操作时可能出现的异常,以及如何优雅地捕获和处理这些异常。 6. **性能优化**...
学习这个简单的ibatis与mysql交互示例,可以帮助你了解如何在实际项目中集成Ibatis。通过配置文件的设置,你可以理解如何连接到MySQL数据库;通过Mapper XML文件和接口,你可以学习如何编写和执行SQL;通过Service和...
Ibatis是一个优秀的持久层框架,它简化了Java应用与数据库之间的数据操作,避免了传统的JDBC代码繁琐的过程。MySQL则是一款广泛使用的开源关系型数据库管理系统,以其高效、稳定和易用性而闻名。 首先,要实现...
在这个例子中,Mysql作为数据存储,通过Ibatis执行的SQL语句进行数据的增删改查操作。Mysql以其高效、稳定和易于管理的特性,成为许多开发者的首选数据库。 整合过程大致如下: - 首先,配置Struts的Action和...
【Spring_Struts_Ibatis_Mysql Demo】是一个典型的Java Web应用程序示例,它整合了四个关键的技术框架:Spring、Struts、iBatis和MySQL数据库。这个项目旨在展示如何在实际开发中有效地集成这些组件,创建一个功能...
在MySQL、Oracle、SQL Server等数据库中编写存储过程。例如,一个简单的存储过程可能是用于增删改查操作的。 3. **数据访问层(DAO)**: 在Struts2中,通常会创建一个DAO(数据访问对象)类来处理与数据库的交互...
本篇文章将深入探讨如何利用iBatis进行MySQL数据库的增删改查操作,同时提供了一个亲测可用的示例,包括配套的SQL文件和完全配置,确保读者能够快速上手。 首先,我们需要了解iBatis的基本概念。iBatis是一个轻量级...
本资料包"ibatis开发资料及简单示例"显然是为了帮助开发者快速入门和理解Ibatis的工作原理和使用方法。其中包含的JAR包可能是Ibatis的核心库和其他相关依赖,这些库文件是运行Ibatis项目所必需的。 首先,我们来...
本文将深入探讨如何使用Ibatis来操作MySQL数据库,以实现高效、可维护的数据访问。 首先,我们需要理解Ibatis的基本概念。Ibatis是一个基于Java的SQL映射框架,它消除了几乎所有的JDBC代码和参数手动设置,允许...
本示例主要展示了如何利用Ibatis配合MySQL 5.1进行基本的CRUD(Create、Read、Update、Delete)操作。 首先,我们需要理解Ibatis的基本工作原理。Ibatis是一个基于Java的SQL映射框架,它允许开发者将SQL语句直接写...
MySQL+iBatis 示例 MySQL是一种广泛使用的开源关系型数据库管理系统,它以其高效、稳定和易用性在各种规模的应用中占据重要地位。iBatis则是一个优秀的持久层框架,它允许开发者将SQL语句与Java代码分离,提高了...
iBatis是一个优秀的Java持久层框架,它支持定制化SQL、存储过程以及高级映射。在本教程中,你将深入理解如何利用iBatis与MySQL数据库进行交互,提升你的软件开发技能。以下是对每个部分的详细解释: 1. **iBatis...
它处理结果映射,事务管理,并支持存储过程。 2. **项目结构与文件** "iBatisDemo"项目可能包含以下关键组件: - **SqlMapConfig.xml**:这是iBatis的全局配置文件,其中定义了数据源、事务管理器、环境等信息。 ...
在这个“struts2+spring+ibatis增删查改翻页代码示例”中,我们将深入探讨这三个框架如何协同实现数据管理的基本操作,并集成MySQL数据库和Tomcat web服务器。 首先,Struts2作为MVC(模型-视图-控制器)框架,主要...
Ibatis,全称为MyBatis,是一个优秀...同时,对于标签中的"mysql",这意味着示例可能特别关注于MySQL数据库的使用,包括特定的数据类型、存储过程等特性。总的来说,这个示例是一个全面学习和实践Ibatis框架的好资源。
Struts、Spring、iBatis和MySQL是Java Web开发中常用的四大框架,它们共同构建了一个高效、灵活且可扩展的应用程序架构。这个整合实例提供了基于这些技术的源码,可以帮助开发者深入理解它们如何协同工作。 Struts...
iBatis,又称为MyBatis,是一个优秀的持久层框架,它支持定制化的SQL、存储过程以及高级映射。与Hibernate等全对象关系映射框架不同,iBatis更倾向于SQL语句的灵活控制,允许开发者根据需求编写特定的SQL。在本示例...
该项目是基于经典的iBatis数据访问框架的JPetStore示例,通过现代的SpringMVC、MyBatis和MySQL数据库技术进行了重新实现。这为我们提供了一个深入理解如何在实际开发中整合这些技术的绝佳机会。以下是对这个项目涉及...
这个入门示例展示了如何简单地实现CRUD功能,但Ibatis的功能远不止这些,它还支持存储过程、结果集映射、自定义类型处理器等多种高级特性,使得数据库操作更加灵活和高效。在实际项目中,根据需求和团队习惯,选择...
- 在iBatis中,可以通过`<call>`元素调用存储过程。 - 需要在数据库中先定义好存储过程。 **Contact.xml示例**: ```xml {call sp_insert_contact(#{firstName}, #{lastName}, #{email}) } ``` 通过以上...