Mybatis, sebagai kerangka kerja ringan ORM, menarik perhatian orang yang tak terhitung jumlahnya segera setelah kelihatannya. Lebih sederhana dan lebih mudah untuk memulai daripada Hibernate. Mari kita mulai program mybatis pertama saya.
1. Unduh paket mybatis
Kami tahu bahwa kerangka kerja apa pun akan memiliki paketnya. Kami mengunduh paketnya dari situs web resminya. Alamat situs web resmi adalah: http://www.mybatis.org/mybatis-3/, dan versi yang saya gunakan di sini adalah 3.3.0. Setelah unduhan selesai, Anda dapat melihat struktur direktori berikut:
mybatis-3.3.0.jar adalah paketnya, dan di direktori lib adalah paket ketergantungannya. Kami memasukkan paket -paket ini ke dalam proyek kami. Apa yang saya buat di sini adalah proyek Javaweb, yang nyaman untuk pengujian web di masa depan. Program yang saya tulis adalah program Java biasa.
2. Lingkungan Konfigurasi
Setelah meletakkan paket MyBatis di direktori LIB proyek, konfigurasikan lingkungan MyBatis berikutnya. Kita tahu bahwa mybatis, sebagai kerangka kerja ORM, milik lapisan DAO dalam pengembangan dan berurusan dengan database, jadi kita harus memiliki data. Di sini, ambil data MySQL sebagai contoh, dan konstruksi database spesifik dan konstruksi tabel tidak akan dijelaskan di sini.
Buat file konfigurasi mybatis di direktori src, nama file adalah: configuratin.xml, dan konten file adalah sebagai berikut:
<? Xml Version = "1.0" encoding = "UTF-8"?> <! Doctype Configuration Public "-// mybatis.org//dtd config 3.0 // en" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <pypyas> <pypealiases> <pyp Config.dtd "> <pyperas> <pypicery> <pyp Config.dtd"> <pypyas> <pypicer> <pypiceres> <pyp Config.dtd "> <pyperas> <pypicer> <pyponfig.pypyas> <pypeAriases> <pyponfig. type="com.cn.imooc.entity.Message"/> </typeAliases> <environments default="development"><environment id="development"><transactionManager type="JDBC"/><dataSource type="POOLED"><property name="driver" value="com.mysql.jdbc.Driver"/><property name="url" value="jdbc:mysql://127.0.0.1:3306/weixin?useUnicode=true&characterEncoding=UTF-8" /><property name="username" value="root"/><property name="password" value="123456"/></dataSource></environment></environments><!--Mapping File--> <mappers><mapper resource = "com/cn/pemetaan/pesan.xml"/> </phappers> </ Configuration>
Masih ada banyak item konfigurasi dalam file konfigurasi mybatis.
<yypealiases> konfigurasi alias, yaitu kelas entitas alias. Tujuannya adalah untuk tidak menggunakan nama kelas penuh saat menggunakan kelas entitas dalam file pemetaan, tetapi gunakan alias, yang memainkan peran sederhana
<surveurments> Mengkonfigurasi beberapa lingkungan seperti konfigurasi data, di sini kami mengkonfigurasi sumber data
<petpers> Konfigurasikan file pemetaan, berikut adalah file pemetaan pesan.xml di bawah paket com.cn.mappers yang dikonfigurasi.
Berikut ini adalah penjelasan dari kelas entitas pesan. Kelas entitas ini berisi beberapa properti, sebagai berikut:
Paket com.cn.imooc.entity; pesan kelas publik {private string id; perintah string privat; private string description; private string komentar; string publik getId () {return id;} public void setid (string id) {this.id = id public getCommand () {command return;} public void setCommand (string command) {command {command {command {command {command {command {command {command {{public command; deskripsi;} 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 "pesan [id =" + id + ", perintah =" "{" DESKRIPS = "" DESKRIPS = " +", "Command =" "DESKRIPS =" + ", Comment =", Comment = ", Comment =", "Id =" + "Metode GETXXX dan SETXXX disediakan, dan metode Setxxx sangat kritis. Properti di sini sama dengan nama bidang dari database. Mereka dapat dengan mudah tercermin ke kelas entitas dengan menggunakan mybatis untuk menanyakan hasilnya. Tentu saja, mereka juga tidak konsisten dengan nama bidang tabel database. Mereka akan dijelaskan nanti.
File pemetaan pesan.xml adalah sebagai berikut,
<mapper namespace = "com.cn.inter.imessageOperation"> <pilih id = "selectUserById" parameterType = "int" resultType = "com.cn.imooc.entity.message"> pilih * dari `pesan` where id = #{id} </seleksi </terpilih <seleksi id =" selectMessage ", pesan` {{id} </terpilih </Pilih ID = "PILIHAN", Pesan `Pesan = {ID {ID} </PILIHAN </PILIHAN </PILIHAN, Pesan ID = {Pesan" Pesan; </pilih> </mapper>Ini adalah file pemetaan mapper saya, ada dua metode di dalamnya, satu adalah: selectUserById kueri berdasarkan ID, dan yang lainnya adalah selectmessages kueri semua
Oke, sejauh ini, lingkungan mybatis kami telah dibangun, dan kami dapat mengujinya di bawah ini.
3. Tes
Di bawah ini adalah kode uji,
Paket com.cn.test; impor java.io.ioException; impor java.io.reader; impor org.apache.ibatis.io.Resources; impor org.apache.ibatis.Session. org.apache.ibatis.Session.SqlSessionFactoryBuilder; import com.cn.imooc.entity.message; kelas publik mytest {public static void main (string [] args) {// TODO METODE AUTO-AUTOREATED PRIDREADER READER; SQLSESSES SQLSESSESSESSESSESSESSESSESSESSESS = NULULTECEDE (SQLSESSESSESSESSESSESSESSESSESSESSESSESSESSESSESSESSESSESSEPREDER; Dapatkan SQLSessionFactoryReader = Resources.GetResourCeasReader ("Configuration.xml"); SQLSessionFactory SQLSessionFactory = SQLSessionFactoryBuilder baru (). Build (Reader); // 2. Dapatkan SQLSessionQLSession = sqlSessionFactory.opensession (); // 3. Pesan Pesan Kueri = SQLSession.SelecTone ("com.cn.inter.imessageOperation.selectuserbyId", 1); System.out.println (pesan);} catch (ioException e) {// todo {{{{{{{{{{sql yang dihasilkan secara otomatis.Seperti yang dapat dilihat dari yang di atas, pertama -tama diperlukan SQLSessionFactory, dan kemudian SQLSessionFactory diperoleh. SQLSession dieksekusi oleh SQLSession, dan metode selecone digunakan. Parameter pertama adalah namespace+"." Nama metode dalam file pemetaan, dan parameter kedua adalah parameter kueri.
Di atas adalah deskripsi lengkap tentang bagaimana mybatis digunakan (i) diperkenalkan kepada Anda oleh editor. Saya harap ini akan membantu Anda. Versi lain akan diperkenalkan di masa depan. Harap perhatikan wulin.com untuk konten lebih lanjut!