3. Test.java
/**
*
*/
package com.test;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import com.dingfei.config.SqlAppConfig;
import com.dingfei.vo.Employee;
import com.dingfei.vo.SiteConfig;
import com.ibatis.sqlmap.client.SqlMapClient;
/**
* @author Jeffy
*
*/
public class Test {
public static void showAllEmployee(SqlMapClient sqlmap) throws SQLException{
List list = sqlmap.queryForList("selectAllEmployee");
for (Iterator iter = list.iterator(); iter.hasNext();) {
Employee e = (Employee) iter.next();
System.out.println(e);
}
}
public static void showAllSiteConfig(SqlMapClient sqlmap) throws SQLException{
List siteList = sqlmap.queryForList("selectAllSiteConfig");
for (Iterator iter = siteList.iterator(); iter.hasNext();) {
SiteConfig e = (SiteConfig) iter.next();
System.out.println(e);
}
}
public static List multiSelect(SqlMapClient sqlmap, String sql, Object params) throws SQLException{
List list = sqlmap.queryForList(sql,params);
return list;
}
public static Object singleSelect(SqlMapClient sqlmap, String sql, Object params) throws SQLException{
return sqlmap.queryForObject(sql, params);
}
public static List queryAllForList(SqlMapClient sqlmap, String sql) throws SQLException{
List list = sqlmap.queryForList(sql);
return list;
}
/**
* <p>
* <insert id="insertSiteByMap" parameterClass="java.util.HashMap">
insert into siteConfig(SITEID,ITEMNAME,ITEMVALUE)
values(#siteid#,#itemname#,#itemvalue#)
</insert>
* </p>
* @param sqlmap
* @param sql
* @param params HashMap including parameters
* @throws SQLException
*/
public static void insertByMap(SqlMapClient sqlmap, String sql, Object params) throws SQLException{
sqlmap.insert(sql, params);
}
/**
* <p>
* <typeAlias alias="SiteConfig" type="com.dingfei.vo.SiteConfig" />
* </p>
*
* <p>
* <insert id="insertSiteByVO" parameterClass="SiteConfig">
insert into siteConfig(SITEID,ITEMNAME,ITEMVALUE)
values(#siteID#,#itemName#,#itemValue#)
</insert>
* </p>
* @param sqlmap
* @param sql
* @param params VO which is mapped with DB table
* @throws SQLException
*/
public static void insertByVOMap(SqlMapClient sqlmap, String sql, Object params) throws SQLException{
sqlmap.insert(sql, params);
}
/**
* <p>
* <parameterMap id="SiteConfigParamMap" class="SiteConfig">
<parameter property="siteID" />
<parameter property="itemName" />
<parameter property="itemValue" />
</parameterMap>
* </p>
* <p>
* <insert id="insertSiteByVOMap" parameterMap="SiteConfigParamMap">
insert into siteConfig(SITEID,ITEMNAME,ITEMVALUE)
values(?,?,?)
</insert>
* </p>
* @param sqlmap
* @param sql
* @param params VO which is mapped with DB table
* @throws SQLException
*/
public static void insertByParameterMap(SqlMapClient sqlmap, String sql, Object params) throws SQLException{
sqlmap.insert(sql, params);
}
/**
*
* @param sqlmap
* @param sql
* @param params condition parameters
* @throws SQLException
*/
public static void delete(SqlMapClient sqlmap, String sql, Object params) throws SQLException{
sqlmap.delete(sql, params);
}
/**
* @param args
*/
public static void main(String[] args) {
SqlMapClient sqlmap = SqlAppConfig.getSqlMapInstance();
try {
HashMap params = new HashMap();
// params.put("siteid", "10008");
params.put("itemname", "supportOther");
params.put("itemvalue", "1");
// sqlmap.insert("insertSiteByMap", params);
Test.insertByMap(sqlmap, "insertSiteByMapWithoutSiteID", params);
Test.showAllSiteConfig(sqlmap);
// SiteConfig site = new SiteConfig();
// site.setSiteID(10008);
// site.setItemName("supportTSP");
// site.setItemValue("0");
// Object result = sqlmap.insert("insertSiteByVOMap",site);
// System.out.println(result);
//
// Test.showAllSiteConfig(sqlmap);
// sqlmap.delete("deleteSiteBySiteID", 10008);
// Test.showAllSiteConfig(sqlmap);
} catch (SQLException e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
3. 参数映射:Ibatis自动将Java方法参数与SQL语句中的参数进行映射,无需手动设置PreparedStatement的参数。 4. 结果集映射:Ibatis可以自动将查询结果转换为Java对象,支持单个对象、集合对象、Map对象等多种形式...
《使用Ibatis 2进行数据访问》 Ibatis 2是一款经典的Java持久层框架,它提供了灵活的SQL映射机制,使得开发者可以更好地控制数据库操作,避免了传统的JDBC代码繁琐且易出错的问题。本篇文章将深入探讨Ibatis 2的...
#### 三、持久化操作 (Chapter 3: Persistence Operation) - **基本概念**: - **持久化**: 将程序中的数据保存到外部存储设备的过程。 - **ORM**: 对象关系映射是一种编程技术,用于将对象模型与关系型数据库之间...
iBATIS,全称为“Integrated Business Applications Using the SQL Maps”,是一个数据映射框架,由Anders Cui在2007年的文章中提及。iBATIS并非传统的对象关系映射(ORM)工具,而是采取了一种混合式解决方案,融合...
**3. 配置解析** 在“IBatisDemo”项目中,首先需要配置SqlMapConfig.xml。这里会包含数据库连接字符串、默认的数据库提供者、以及映射文件的引用。例如: ```xml ;Initial Catalog=your_database;...
- **Using Dynamic SQL (使用动态SQL)**: 第八章介绍了iBATIS的动态SQL功能,这允许开发者根据不同的条件动态生成SQL语句,从而提高代码的灵活性和复用性。 ### 八、性能优化 - **Improving performance with ...
using (var session = SqlSessionFactory.OpenSession()) { var mapper = session.GetMapper(); mapper.InsertUser(new User { Username = "test", Password = "123456" }); var user = mapper.GetUser("test");...
### 3. Maps配置 在`SqlMap.config`文件中,还需要配置SQL语句映射,这些映射通常位于单独的XML文件中,如`UserMap.xml`。映射文件定义了数据库表与.NET对象之间的对应关系,并包含具体的SQL语句。例如,对于一个...
PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd"> <sqlMap namespace="Account"> <typeAlias alias="Account" type="Account"/> ...
iBATIS,全称为“Integrated Business Applications Using the Java Persistence API”,中文译为“基于Java持久层的应用集成框架”。它是一个开源的Java库,主要用于简化数据库访问,并提供了将SQL语句与Java代码...
Ibatis.net是一个轻量级的持久层框架,它在.NET环境中提供了灵活的数据访问接口,能够有效地将业务逻辑和数据访问层解耦。本测试案例基于VS2008开发环境和Access2003数据库,涵盖了Ibatis.net的基础操作,包括查询、...
Find, loads a database record using primary key value(s). FindByXXX, loads a group of records by the value of a column. Delete, deletes a database record. DeleteByXXX, deletes a group of records of...
MyBatis couples objects with stored procedures or SQL statements using a XML descriptor. Simplicity is the biggest advantage of the MyBatis data mapper over object relational mapping tools. To use ...
-- Select with no parameters using the result map for User class. --> select * from t_user ``` 通过以上步骤,我们可以看到iBATIS是如何通过简单的配置实现对数据库的操作。与传统的ORM相比,iBATIS...
标题中的“Using jdbc so easy!”指的是使用Java数据库连接(JDBC)可以变得非常简单,而“开源”则意味着这里涉及的解决方案是开放源代码的,允许用户自由地查看、使用、修改和分发代码。在描述中,“sql-mapper”...
在.NET开发环境中,Ibatis.Net是一个流行的持久层框架,它提供了灵活的数据访问接口,与SQL Server 2008数据库的交互是其重要功能之一。本文将深入探讨如何使用IbatisNet连接到SQL Server 2008,以及相关的C#编程...
IBatisNet,全称为iBATIS.NET,是一款基于.NET Framework的持久层框架,由iBATIS项目发展而来,旨在简化数据库操作与对象模型的映射,从而减轻开发人员在数据访问层的工作负担。它提供了一种灵活的数据访问接口,...