热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

javaibatis例子_月光软件站编程文档Java介绍iBATIS的SQLMap的简单例子

这篇文章介绍了iBATIS的SQLMap的简单例子。它是一个免费的开放源代码软件。具有以下优点:10、知道怎样操作10种以上的数据库9、可配置的caching(包括从

这篇文章介绍了iBATIS的SQL Map的简单例子。它是一个免费的开放源代码软件。

具有以下优点:

10、知道怎样操作10种以上的数据库

9 、可配置的caching(包括从属)

8、支持DataSource、local transaction managemen和global transaction

7、简单的XML配置文档

6、支持Map, Collection, List和简单类型包装(如Integer, String)

5、支持JavaBeans类(get/set 方法)

4、支持复杂的对象映射(如populating lists, complex object models)

3、对象模型从不完美(不需要修改)

2、数据模型从不完美(不需要修改)

1、你已经知道SQL,为什么还要学习其他东西

resultClass="examples.domain.Address">

select

ADR_ID           as id,

ADR_DESCRIPTION  as description,

ADR_STREET       as street,

ADR_CITY         as city,

ADR_PROVINCE     as province,

ADR_POSTAL_CODE  as postalCode

from ADDRESS

where ADR_ID = #value#

我怎样用Java执行它呢?

/*

* 以下几行代码在以上的语句中将integer 5 传递给#value#参数,来执行映射语句。

*/

Integer pk = new Integer(5);

Address address = (Address)sqlMap.queryForObject("getAddress", pk);

//提示:查看JPetStore 4,它使用了许多的新的特性,它是一个完整的应用实例。同时也有详尽开发指南的完整的文档。

//更多的例子请看下面。

insert into ADDRESS (

ADR_ID,

ADR_DESCRIPTION,

ADR_STREET,

ADR_CITY,

ADR_PROVINCE,

ADR_POSTAL_CODE)

values (

#id#,

#description#,

#street#,

#city#,

#province#,

#postalCode#)

//执行这个插入语句就像执行一个查询语句一样方便。

//executeUpdate()方法被用于插入,更新和删除。

Address address = new Address();

address.setId(15);

address.setDescription("Bob's Comic Book Store");

address.setStreet ("16 Somestreet");

...

sqlMap.insert ("insertAddress", address);

resultClass="examples.domain.Product">

select

PRD_ID           as id,

PRD_CATEGORY     as category,

PRD_DESCRIPTION  as description,

PRD_RETAIL       as retail,

PRD_QUANTITY     as quantity

from PRODUCT

where PRD_CATEGORY = #value#

//为一个“dog”类目中获得一个产品列表执行以上语句,就像这样那么简单:

String category = "dog";

List productList = sqlMap.queryForList("getProductByCategory", category);

//太多的结果?那么 完全可导航、惰性加载(lazy-loaded)、用JavaBean来分页列出产品、

//在jsp页面中的易用性 怎么样呢?一页10个行吗?

PaginatedList productList = sqlMap.queryForList("getProductByCategory",

category,

10);

productList.nextPage();

productList.previousPage();

productList.isNextPageAvailable();// etc.

//需要一个来自相同查询的产品ID和描述的映射?

Map descriptionMap = sqlMap.queryForMap ("getProductByCategory",

category,

"id",

"description");

resultClass="examples.domain.Employee">

SELECT

emp_id           as id,

emp_number       as employeeNumber,

emp_first_name   as firstName,

emp_last_name    as lastName,

emp_dept_code    as departmentCode

FROM employee

START WITH emp_id = #value#

CONNECT BY PRIOR emp_manager_id = emp_id;

Integer managerId = new Integer(15);

List employeeList = sqlMap.queryForList("getEmployeesByManagerRecursively",

managerId);

down_info.asp?id=31333



推荐阅读
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • Explore a common issue encountered when implementing an OAuth 1.0a API, specifically the inability to encode null objects and how to resolve it. ... [详细]
  • 本文深入探讨 MyBatis 中动态 SQL 的使用方法,包括 if/where、trim 自定义字符串截取规则、choose 分支选择、封装查询和修改条件的 where/set 标签、批量处理的 foreach 标签以及内置参数和 bind 的用法。 ... [详细]
  • 深入解析Android自定义View面试题
    本文探讨了Android Launcher开发中自定义View的重要性,并通过一道经典的面试题,帮助开发者更好地理解自定义View的实现细节。文章不仅涵盖了基础知识,还提供了实际操作建议。 ... [详细]
  • 本文详细介绍了Java中org.neo4j.helpers.collection.Iterators.single()方法的功能、使用场景及代码示例,帮助开发者更好地理解和应用该方法。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 本文详细介绍了 GWT 中 PopupPanel 类的 onKeyDownPreview 方法,提供了多个代码示例及应用场景,帮助开发者更好地理解和使用该方法。 ... [详细]
  • 本文基于刘洪波老师的《英文词根词缀精讲》,深入探讨了多个重要词根词缀的起源及其相关词汇,帮助读者更好地理解和记忆英语单词。 ... [详细]
  • 主要用了2个类来实现的,话不多说,直接看运行结果,然后在奉上源代码1.Index.javaimportjava.awt.Color;im ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 本文详细介绍了Java中org.eclipse.ui.forms.widgets.ExpandableComposite类的addExpansionListener()方法,并提供了多个实际代码示例,帮助开发者更好地理解和使用该方法。这些示例来源于多个知名开源项目,具有很高的参考价值。 ... [详细]
  • 深入解析Spring Cloud Ribbon负载均衡机制
    本文详细介绍了Spring Cloud中的Ribbon组件如何实现服务调用的负载均衡。通过分析其工作原理、源码结构及配置方式,帮助读者理解Ribbon在分布式系统中的重要作用。 ... [详细]
  • 本文详细介绍了Akka中的BackoffSupervisor机制,探讨其在处理持久化失败和Actor重启时的应用。通过具体示例,展示了如何配置和使用BackoffSupervisor以实现更细粒度的异常处理。 ... [详细]
  • Android 渐变圆环加载控件实现
    本文介绍了如何在 Android 中创建一个自定义的渐变圆环加载控件,该控件已在多个知名应用中使用。我们将详细探讨其工作原理和实现方法。 ... [详细]
  • 利用存储过程构建年度日历表的详细指南
    本文将介绍如何使用SQL存储过程创建一个完整的年度日历表。通过实例演示,帮助读者掌握存储过程的应用技巧,并提供详细的代码解析和执行步骤。 ... [详细]
author-avatar
圣友家具简章da
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有