iBatis入门--简单使用

Jun 07, 2016 pm 05:29 PM
ibatis

Ibatis:一种ldquo;半 自动化rdquo;的 ORM 实现,也就是说ibatis 不会为程序员在运行期自动生成 SQL 执行。具体的 SQL 需要程序

一、概念

Hibernate 和 Apache OJB :“一站式”ORM

Ibatis:一种“半 自动化”的 ORM 实现,也就是说ibatis 不会为程序员在运行期自动生成 SQL 执行。具体的 SQL 需要程序员编写,然后通过映 射配置文件,将 SQL 所需的参数,以及返回的结果字段映射到指定 POJO。

二、使用

构建 ibatis 基础代码
ibatis 基础代码包括:

1. ibatis 配置SqlMapConfig.xml文件 :

(1)、Settings 节点

参数描述

cacheModelEnable 是否启用SqlMapClient上的缓存机制。建议设为"true"

enhancementEnable 是否针对POJO启用字节码增强机制,避免java reflect的性能开销

errorTracingEnabled 是否启用错误日志,开发期间可以开启,方便调试

lazyLoadingEnalbed 是否启用延迟加载

maxRequests 最大并发请求数(Statement 并发数)

maxTransactions 最大并发事务数

maxSessions 最大Session数,及最大的并发SqlMapclient数,必须介于maxTransactions和maxRequest之间

(2)、transactionManager 事物管理
(3)、dataSource 数据源配置
(4)、sqlMap 用于包括SQL Map映射文件和其他的SQL Map配置文件。每个SqlMapClient对象使用的所有SQL Map映射文件都要在此声明。映射文件作为stream resource从类路径或URL读入。您必须在这里指定所有的SQL Map文件。

2、实体类POJO。这个需要和数据库的相对应。

3、映射文件map,通常放在sqlmap包下,实现具体的数据库操作语句。主要有模块配置、缓存配置、statement配置。使用最多的应该是此处的statement配置了,需要用的sql语句和参数都写在这里。

4、如何在代码中使用,这才是最关键的。

在此先要搞清楚几个比较核心的比较重要的概念:

(1)、XmlSqlMapClientBuilder,ibatis 2.0 之后版本新引入的组件, 用以替代 1.x 版本中的 XmlSqlMapBuilder。其作用是根据配置文件创建 SqlMapClient 实例。

(2)、SqlMapClient 是 ibatis 的核心组件, 提供数据操作的基础平台。

SqlMapClient 可通过 XmlSqlMapClientBuilder 创建:
String resource ="com/ibatis/sample/SqlMapConfig.xml";

Reader reader; reader = Resources.getResourceAsReader(resource);

XmlSqlMapClientBuilder xmlBuilder = new XmlSqlMapClientBuilder();

SqlMapClient sqlMap = xmlBuilder.buildSqlMap(reader);

备注:"com/ibatis/sample/SqlMapConfig.xml"指明了配置文件在 CLASSPATH 中的相对路径。 XmlSqlMapClientBuilder 通过接受一个 Reader 类型的配置文 件句柄,根据配置参数,创建 SqlMapClient 实例。 SqlMapClient 提供了众多数据操作方法。

5、SqlMapClient 基本操作示例

见Ibatis官方手册

6、学习体会

大三用java做数据库课程设计的时候将所有的数据库操作都写在一个类里,程序的耦合性很高,扩展性也不好。Ibatis是我第一次接触的,感觉学起来很容易上手,自己也学着在Demo上试了一下,做了个简单的登陆界面。学习ibatis的过程最重要的是理解他的工作原理和映射关系,还有就是结合webx开发,哪些文件应该放置在哪层(通常是DAO层),弄清楚这些问题,在以后的开发中肯定也是很有帮助的。

实践中遇到的问题:

无法链接数据库,无法下载数据库驱动,把jdbc.mysql.mysql-connector包复制到tomcat下面的lib目录中即可。当然要保证你的xml配置是正确的,我连接本地Mysql的时候配置如下:

        destroy-method="close">
       
       
       
       

linux

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

iBatis と MyBatis: どちらがあなたにとって優れていますか? iBatis と MyBatis: どちらがあなたにとって優れていますか? Feb 19, 2024 pm 04:38 PM

iBatis と MyBatis: どちらを選択するべきですか?はじめに: Java 言語の急速な発展に伴い、多くの永続化フレームワークが登場しました。 iBatis と MyBatis は 2 つの人気のある永続化フレームワークであり、どちらもシンプルで効率的なデータ アクセス ソリューションを提供します。この記事では、iBatis と MyBatis の機能と利点を紹介し、適切なフレームワークを選択するのに役立つ具体的なコード例をいくつか示します。 iBatis の紹介: iBatis はオープンソースの永続化フレームワークです。

iBatis と MyBatis: 比較と利点の分析 iBatis と MyBatis: 比較と利点の分析 Feb 18, 2024 pm 01:53 PM

iBatis と MyBatis: 違いと利点の分析 はじめに: Java 開発では永続性が一般的な要件であり、iBatis と MyBatis は広く使用されている 2 つの永続性フレームワークです。これらには多くの類似点がありますが、いくつかの重要な違いと利点もあります。この記事では、これら 2 つのフレームワークの機能、使用法、サンプル コードを詳細に分析することで、読者がより包括的に理解できるようにします。 1. iBatis の機能: iBatis は、SQL マッピング ファイルを使用する古い永続性フレームワークです。

イバティスとマイバティスの違いは何ですか イバティスとマイバティスの違いは何ですか Jan 10, 2024 am 11:25 AM

ibatis と mybatis の違いは、 1. 基本情報の違い、 2. 開発期間の違い、 3. 機能と使いやすさ、 4. 設定ファイル、 5. 入力パラメータの型と出力パラメータの型、 6. 戻り値セットの受け入れ方法、 6. 戻り値セットの受け取り方法、 6. 設定ファイルの種類、 7、文法の違い、8. データベース方言のサポート、9. プラグインのサポート、10. コミュニティ活動、11. グローバリゼーションのサポート。詳細な紹介: 1. 基本情報が異なります。iBatis は、SQL マップやデータ アクセス オブジェクトなどを含む永続層フレームワークを提供します。

iBatisとMyBatis:歴史と現状の比較評価 iBatisとMyBatis:歴史と現状の比較評価 Feb 19, 2024 am 10:42 AM

iBatis と MyBatis: 歴史から現状までの評価と比較 はじめに: ソフトウェア開発分野の急速な発展に伴い、データベース アクセス フレームワークに対する要求はますます高まっています。 iBatis と MyBatis は、多くの注目を集めている 2 つの Java 永続層フレームワークであり、どちらもリレーショナル データベースにアクセスするためのシンプルかつ柔軟な方法を提供します。この記事では、これら 2 つのフレームワークの歴史的なレビューを提供し、現在のステータスを評価および比較します。 1. 歴史的考察 iBatisiBatis はクリントンによって開発されました

iBatis と MyBatis の類似点と相違点の比較: 主流の ORM フレームワークの比較 iBatis と MyBatis の類似点と相違点の比較: 主流の ORM フレームワークの比較 Feb 19, 2024 pm 07:08 PM

iBatis と MyBatis は 2 つの主流の ORM (オブジェクト リレーショナル マッピング) フレームワークであり、設計と使用において多くの類似点がありますが、微妙な違いもいくつかあります。この記事では、iBatis と MyBatis の類似点と相違点を詳細に比較し、具体的なコード例を通じてその特徴を説明します。 1. iBatis と MyBatis の歴史と背景 iBatis は Apache Software Foundat です

ibatis mysqlの文字化けを解決する方法 ibatis mysqlの文字化けを解決する方法 Feb 16, 2023 am 10:40 AM

ibatis mysql の文字化けコードの解決策: 1. mysql の文字セットを確認し、utf8 に設定します; 2. 設定を "<property name="url"><value><![CDATA[jdbc:mysql:// localhost :3306/yourDbNameuseUnicode=TRUE&characterEncoding=utf8]]></value>”。

iBatis と MyBatis: 2 つの Java 永続フレームワークの比較と選択 iBatis と MyBatis: 2 つの Java 永続フレームワークの比較と選択 Feb 22, 2024 pm 07:09 PM

iBatis と MyBatis: 2 つの Java 永続フレームワークの比較と選択 はじめに: Java 開発では、適切な永続フレームワークを選択することが、開発効率とパフォーマンスを向上させる鍵となります。数多くのフレームワークの中でも、iBatis と MyBatis は開発者に愛されている 2 つのフレームワークです。これらはすべて、データベースを操作するための簡潔で柔軟かつ効率的な方法を提供します。この記事では、開発者がプロ​​ジェクトに適した永続化フレームワークを選択できるように、次の観点から iBatis と MyBatis を比較します。

Java JPA と他の永続化フレームワーク: どちらが適していますか? Java JPA と他の永続化フレームワーク: どちらが適していますか? Feb 19, 2024 pm 08:21 PM

JPA (JavaPersistence API) は、データ オブジェクトにアクセスして永続化するための一連のインターフェイスを提供する標準 Java API です。 JPA は、SunMicrosystems (現 Oracle) およびその他の企業で構成される JPA ワーキング グループの成果です。 JPA は 2006 年 12 月にリリースされ、JavaPersistenceAPI 仕様の標準実装になりました。 JPA フレームワークは、次の主要な機能を提供します。 オブジェクト リレーショナル マッピング (ORM) トランザクション管理クエリ JPAORM は、データベース テーブルを Java オブジェクトにマップし、標準の Java API を使用してデータベース データを操作できるようにします。 JPA トランザクション管理により、次のことが可能になります。

See all articles