`

Using Ibatis 3

    博客分类:
  • SQL
阅读更多
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();
		}
	}

}

分享到:
评论

相关推荐

    Using Ibatis

    3. 参数映射:Ibatis自动将Java方法参数与SQL语句中的参数进行映射,无需手动设置PreparedStatement的参数。 4. 结果集映射:Ibatis可以自动将查询结果转换为Java对象,支持单个对象、集合对象、Map对象等多种形式...

    Using Ibatis 2

    《使用Ibatis 2进行数据访问》 Ibatis 2是一款经典的Java持久层框架,它提供了灵活的SQL映射机制,使得开发者可以更好地控制数据库操作,避免了传统的JDBC代码繁琐且易出错的问题。本篇文章将深入探讨Ibatis 2的...

    ibatis培训教程

    #### 三、持久化操作 (Chapter 3: Persistence Operation) - **基本概念**: - **持久化**: 将程序中的数据保存到外部存储设备的过程。 - **ORM**: 对象关系映射是一种编程技术,用于将对象模型与关系型数据库之间...

    一个程序员的自省 iBATIS In Action:什么是iBATIS(一)

    iBATIS,全称为“Integrated Business Applications Using the SQL Maps”,是一个数据映射框架,由Anders Cui在2007年的文章中提及。iBATIS并非传统的对象关系映射(ORM)工具,而是采取了一种混合式解决方案,融合...

    IBatisDemo:Ibatis的一个简单Demo

    **3. 配置解析** 在“IBatisDemo”项目中,首先需要配置SqlMapConfig.xml。这里会包含数据库连接字符串、默认的数据库提供者、以及映射文件的引用。例如: ```xml ;Initial Catalog=your_database;...

    Manning Ibatis In Action Jan 2007 Ebook-Bbl.pdf

    - **Using Dynamic SQL (使用动态SQL)**: 第八章介绍了iBATIS的动态SQL功能,这允许开发者根据不同的条件动态生成SQL语句,从而提高代码的灵活性和复用性。 ### 八、性能优化 - **Improving performance with ...

    Asp.net 应用Ibatis 小例子

    using (var session = SqlSessionFactory.OpenSession()) { var mapper = session.GetMapper(); mapper.InsertUser(new User { Username = "test", Password = "123456" }); var user = mapper.GetUser("test");...

    ibatis实例(C#)

    ### 3. Maps配置 在`SqlMap.config`文件中,还需要配置SQL语句映射,这些映射通常位于单独的XML文件中,如`UserMap.xml`。映射文件定义了数据库表与.NET对象之间的对应关系,并包含具体的SQL语句。例如,对于一个...

    iBatis-设置缓存模式-Java源码(下载)

    PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd"&gt; &lt;sqlMap namespace="Account"&gt; &lt;typeAlias alias="Account" type="Account"/&gt; ...

    iBATIS入门教程

    iBATIS,全称为“Integrated Business Applications Using the Java Persistence API”,中文译为“基于Java持久层的应用集成框架”。它是一个开源的Java库,主要用于简化数据库访问,并提供了将SQL语句与Java代码...

    Ibatis.net的一个简单的测试

    Ibatis.net是一个轻量级的持久层框架,它在.NET环境中提供了灵活的数据访问接口,能够有效地将业务逻辑和数据访问层解耦。本测试案例基于VS2008开发环境和Access2003数据库,涵盖了Ibatis.net的基础操作,包括查询、...

    IBatisNet的Codesmith模板

    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...

    mybaits(ibatis)-3.0.6-bundle for java

    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 ...

    BATIS介绍.

    -- Select with no parameters using the result map for User class. --&gt; select * from t_user ``` 通过以上步骤,我们可以看到iBATIS是如何通过简单的配置实现对数据库的操作。与传统的ORM相比,iBATIS...

    Using jdbc so easy!-开源

    标题中的“Using jdbc so easy!”指的是使用Java数据库连接(JDBC)可以变得非常简单,而“开源”则意味着这里涉及的解决方案是开放源代码的,允许用户自由地查看、使用、修改和分发代码。在描述中,“sql-mapper”...

    ibatisnet連接sql server 2008連接方法

    在.NET开发环境中,Ibatis.Net是一个流行的持久层框架,它提供了灵活的数据访问接口,与SQL Server 2008数据库的交互是其重要功能之一。本文将深入探讨如何使用IbatisNet连接到SQL Server 2008,以及相关的C#编程...

    IBatisNet的用法

    IBatisNet,全称为iBATIS.NET,是一款基于.NET Framework的持久层框架,由iBATIS项目发展而来,旨在简化数据库操作与对象模型的映射,从而减轻开发人员在数据访问层的工作负担。它提供了一种灵活的数据访问接口,...

Global site tag (gtag.js) - Google Analytics