java ibatis 例子_月光软件站 - 编程文档 - Java - 介绍iBATIS的SQL Map的简单例子

这篇文章介绍了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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值