MyBatis-プログラミングインタフェース

「1.プログラミング・インターフェース:インターフェースと動的バインディングxmlファイル、MyBatisのが自動的に適切なメソッドを呼び出すプロキシオブジェクトは、プロキシオブジェクトを作成するためのインタフェースであろう。利点:デカップリングと審査のより安全なタイプの戻り値
  ネイティブ:IDaoは==> DAOImpl
  MyBatisの:IDao ==> xxMapper.xml
「2.SqlSessionFactory:セッションの代表とデータベース、実行が閉じていなければなりません。
  SqlSessionFactoryそして、接続非スレッドセーフと同じであり、それぞれの使用は、新しいオブジェクトを取りに行く必要があります。

1.インターフェイスを作成します。

パブリック インターフェースEmployeeMapper {
     公共の従業員getEmpById(ロングID)がスローSQLExceptionが。
    パブリック ブールの追加(従業員)がスローSQLExceptionが。
    パブリック ブール編集(従業員)がスローSQLExceptionが。
    パブリック ブールのremove(ロングID)がスローSQLExceptionが。
}

2.マッパーマッピングファイルを作成します。

  :「1.namespaceインタフェースの完全修飾クラス名でなければなりません
  インターフェイスメソッド名と一致」2.sqlId

<?xml version = "1.0"エンコード= "UTF-8"?> 
<DOCTYPEマッパー!
PUBLIC " - // mybatis.org//DTDマッパー3.0 // EN"
「http://mybatis.org/dtd/mybatis -3- mapper.dtd ">
< - 1.namespace:!必须为接口的全类名- >
<マッパーの名前空間=" cn.ll.mybatis.dao.EmployeeMapper "> < - 2.sqlId与!接口的方法名保持一致- > <! -公務員getEmpById(ロングID) - > <選択ID = " getEmpById "resultTypeと="従業員"> SELECT * FROM EID =#{ID}従業員から </選択> <! -パブリックブールの追加(従業員) - > <挿入のid =」追加 "useGeneratedKeys =" true」をkeyProperty = "EID">







従業員のINSERT INTO(名前、性別、電子メール)VALUES(#{名前}、#{性別}、#{メール})
</挿入>
<! -パブリックブールの編集(従業員) - >
<更新ID =」編集 ">
UPDATE従業員SET名=#{名前}、性別=#{性別}、Eメール=#{メール} EID =#{EID}
</更新>
<! -パブリックブールの削除(ロングID) - >
<idは= "削除する削除 ">
EID =#{EID}従業員FROM DELETE
</削除>
</マッパー>

3.負荷プロファイルのテスト:

@Test 
ます。public void test1の()例外{スロー
文字列リソース= "MyBatisの/ MyBatisの-config.xmlには";
のInputStream resourceAsStream = Resources.getResourceAsStream(リソース);
... 1 // SqlSessionFactoryゲット
SqlSessionFactory sqlSessionFactory =新しいSqlSessionFactoryBuilder()ビルド (。 resourceAsStream)
。2 // SQLSESSION取得
SQLSESSION sqlSessionFactory.openSessionをセッション=();
.. 3のtry {//インターフェースと動的バインディングxmlファイルは、MyBatisのが自動的にインタフェースするためのプロキシを作成する際に、インタフェースを実装するオブジェクトのクラスを取得オブジェクト、適切なメソッドを呼び出すためのプロキシオブジェクトemployeeMapper employeeMapper = session.getMapper(EmployeeMapper.class)を、 従業員= employeeMapper.getEmpById(1L) のSystem.out.println(employeeMapper + ":" +従業員); } {最後に




session.close();
}
}

 

おすすめ

転載: www.cnblogs.com/luliang888/p/11080576.html
おすすめ