MyBatisは、ORM軽量のフレームワークとして、現れたらすぐに無数の人々の注目を集めました。 Hibernateよりも簡単で簡単に開始できます。私の最初のMyBatisプログラムを始めましょう。
1. MyBatisパッケージをダウンロードします
どんなフレームワークにもパッケージがあることを知っています。公式ウェブサイトからパッケージをダウンロードします。公式のウェブサイトの住所は次のとおりです。http://www.mybatis.org/mybatis-3/、そしてここで使用するバージョンは3.3.0です。ダウンロードが完了した後、次のディレクトリ構造を確認できます。
MyBatis-3.3.0.Jarはそのパッケージであり、LIBディレクトリにはその依存関係パッケージがあります。これらのパッケージをプロジェクトに入れました。ここで作成したのは、将来のWebテストに便利なJavawebプロジェクトです。私が書いたプログラムは、普通のJavaプログラムです。
2。構成環境
MyBatisパッケージをプロジェクトのLIBディレクトリに入れた後、次にMyBatis環境を構成します。 MyBatisは、ORMフレームワークとして、開発におけるDAOレイヤーに属し、データベースを扱うことがわかっているため、データが必要です。ここでは、MySQLデータを例に挙げてください。特定のデータベースの構築とテーブルの構築については、ここでは説明しません。
SRCディレクトリにMyBatis Configurationファイルを作成すると、ファイル名はconfiguratin.xmlで、ファイルコンテンツは次のとおりです。
<?xml version = "1.0" encoding = "utf-8"?> <!doctype構成public " - // mybatis.org//dtd config 3.0 // en" "http://mybatis.org/dtd/mybatis-3-config.dtd" type = "com.cn.imooc.entity.message"/> </typealiase> <環境デフォルト= "開発"> <環境id = "development"> <transactionManager Type = "jdbc"/> <dataSource Type = "> <property name =" driver "value =" com.mysql.jdbc.driver "/> value = "jdbc:mysql://127.0.0.1:3306/weixin?useunicode = true&charaterencoding = utf-8"/> <プロパティ名= "username" value = "root"/> <プロパティ名= "パスワード"値= "123456"/> < <mappers> <mapper resource = "com/cn/mappers/message.xml"/> </mappers> </configuration>
MyBatis構成ファイルにはまだ多くの構成項目があります。
<Typealiase>エイリアス構成、つまり、エンティティクラスがエイリアスされます。目的は、マッピングファイルでエンティティクラスを使用するときに完全なクラス名を使用しないことですが、単純な役割を果たすエイリアスを使用することです。
<環境>データ構成などの一部の環境を構成します。ここでは、データソースを構成します
<mappers>マッピングファイルを構成します。ここにmessage.xmlマッピングファイルがcom.cn.mappersパッケージを構成しています。
以下は、メッセージエンティティクラスの説明です。このエンティティクラスには、次のようにいくつかのプロパティが含まれています。
パッケージcom.cn.imooc.entity; public class message {private string id; private string command; private string comment; private string comment; public void setid(){this.id = id;} public string getcommand(){return command;} public void command(} public command()public string()public string()public setcommand()public boid command()public boid command;説明;} public void setDescription(string description){this.description = description;} public string getComment(){return comment;} public void setcomment(string comment){this.comment = comment;}@overridepublic string toString(){return "message [id =" + id + "、commont =" + " +" + " +" + " +" + " "]";}}GETXXXおよびSETXXXメソッドが提供されており、SETXXXメソッドは非常に重要です。ここのプロパティは、データベースのフィールド名と同じです。 MyBatisを使用して結果を照会することにより、エンティティクラスに簡単に反映できます。もちろん、データベーステーブルのフィールド名と矛盾する可能性もあります。それらは後で説明されます。
message.xmlマッピングファイルは次のとおりです。
<mapper namespace = "com.cn.inter.inter.imessageoperation"> <select id = "selectuserbyid" parametertype = "int" resulttype = "com.cn.imooc.entity.message"> select * from `message`ここで、id =#{id} </select id =" restermess "メッセージ; </select> </mapper>これは私のマッパーマッピングファイルです。内部には2つのメソッドがあります。1つはIDに基づいてSelectUserByIDクエリ、もう1つはSelectMessages Query Allです
さて、これまでのところ、MyBatis環境が構築されており、以下でテストできます。
3。テスト
以下はテストコードです。
パッケージcom.cn.test; import java.io.ioexception; import java.io.reader; import org.apache.ibatis.io.resources; Import org.apache.ibatis.session.sqlsession; Import org.apache.ibatis.session.ssession.sqlsessionfactory; Import.Batis.squatis.squatis.squatis.squatis.sicsiss.scatis.scatis. org.apache.ibatis.session.sqlsessionfactorybuilder; import com.cn.imooc.entity.message; public static void main(string [] args){// todo auto-generated method stubreader reader; sqlsession sqlsession = null; try {// 1. sqlsessionfactoryreader = resources.getResourceasReader( "configuration.xml"); sqlsessionFactory sqlsessionFactory = new sqlsessionFactoryBuilder()。ビルド(Reader); // 2。 sqlsessionsqlsession = sqlsessionfactory.opensession(); // 3を取得します。メッセージメッセージ= sqlsession.selectone( "com.cn.inter.imessageoperation.selectuserbyid"、1); system.out.println(message);} catch(ioexcepte e){// todo auto auto-generated catch blocke.printstacktrace();上記からわかるように、最初にSQLSessionFactoryが必要であり、次にSQLSessionFactoryが取得されます。 SQLSessionはSQLSessionによって実行され、Selectoneメソッドが使用されます。最初のパラメーターは、名前空間+"です。"マッピングファイルのメソッド名、および2番目のパラメーターはクエリパラメーターです。
上記は、MyBatisがどのように使用されるかについての完全な説明です(i)編集者がお客様に紹介します。それがあなたに役立つことを願っています。他のバージョンは将来紹介されます。その他のコンテンツについては、wulin.comに注意してください!