Mybatis adalah pendahulu IBATIS. Ini adalah kerangka kerja Lapisan Persistensi Data (ORM). Mybatis adalah kerangka kerja lapisan kegigihan yang sangat baik yang mendukung pertanyaan SQL biasa, prosedur tersimpan dan pemetaan lanjutan. Mybatis menghilangkan pengaturan manual dari hampir semua kode dan parameter JDBC dan mencari set hasil. Mybatis menggunakan XML sederhana atau anotasi untuk konfigurasi dan pemetaan asli, antarmuka pemetaan dan pojos Java (merencanakan objek java lama, objek java biasa) ke dalam catatan dalam database. Setiap aplikasi MyBatis terutama menggunakan instance SQLSessionFactory, dan instance SQLSessionFactory dapat diperoleh melalui SQLSessionFactoryBuilder.
Kode spesifiknya 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"> <sonfiguration> <pypyes>-typealies <! alias = "barang" type = "com.clark.model.goods"> </yypealias> </yypealiases> <lingkungan default = "pengembangan"> <lingkungan id = "pengembangan"> <transactionManager type = "jdbc" /> <datasource type = "pooled"> <properti name = "or" oracle. name="url" value="jdbc:oracle:thin:@172.30.0.125:1521:oradb01" /> <property name="username" value="settlement" /> <property name="password" value="settlement" /> </dataSource> </environment> </environments> <mapper resource="com/clark/model/goodsMapper.xml" /> </Mappers> </ Configuration> <? Xml Version = "1.0" encoding = "utf-8"?> <! Doctype mapper public "-// mybatis.org//dtd mapper 3.0 // en" "http://mybatis.org/dtd/mybatis-3-3-3-3-3-3-3-3-3-3-3-3-3-3-3-3-3-papper Hasil kueri DB untuk memodelkan-goods-> <resultMap type = "com.clark.model.goods" id = "t_good"> <id kolom = "id" properti = "id"/> <hasil kolom = "cate_id" Properti = "CateId"/> <hasil kolom = "nama" properti = "name"/> <"Hasil =" Harga "Kolom"/Kolom "Kolom =" Nama "Properti =" Name "/> <" Kolom = "Kolom =" Kolom "Kolom"/Kolom "/Kolom/<nama Properti =" Nama "/> <"/"Properti" Kolom = "" property="description"/> <result column="order_no" property="orderNo"/> <result column="update_time" property="updateTime"/> </resultMap> <!-- Return Goods type based on id query<typeAlias alias="goods" type="com.clark.model.Goods"></typeAlias>--> <!--The difference between using resultMap and resultType--> <select ID = "SelectGoodById" ParameTerType = "int" resultType = "Goods"> Pilih id, cate_id, name, harga, description, order_no, update_time dari barang di mana id = #{id} </selection> <!-query semua barang hasil hasil-> <pilih id = "selectAllgoods" hasil "t_good =" t_good "t_good"> T_GOOD "T_GOOD" T_ GOOD " ID, Cate_ID, Nama, Harga, Deskripsi, order_no, update_time dari Goods </schect> <!-Tentukan parameTerType = peta di mana peta adalah peta <string, pageBean> peta-> <pilih id = "selectgoodsbypage" order quering-query query query query query query query quering dari (pilih g. *, rownum rn dari (pilih * dari barang) g di mana 1 = 1 dan rownum <= #{pageBean.endNumber}) di mana rn> = #{pageBean.startnumber} pesanan oleh id asc]] </select> <!-Tambah Parameter Parameter sebagai barang-> <insert id = "insertGood" Param Param "Paramet> <! Goods (ID, Cate_ID, Nama, Harga, Deskripsi, order_no, update_time) Value (#{id},#{CateId},#{name},#{harga},#{deskripsi},#{pesanan tidak ada yang diperbarui-{UpdateTime}) </masukkan </masukkan <!-Update Parameter Parameter sebagai Parameter As. " g set g.name = #{name}, g.order_no = #{orderno} di mana g.id = #{id} </update> <!-hapus jenis parameter barang adalah-> <delete id = "deleteGood" parameterType = "int"> hapus dari barang g.id g.id = #{iD}; impor java.util.date; barang kelas publik {private integer ID; Private Integer Cateid; nama string pribadi; harga ganda pribadi; deskripsi string pribadi; Pesanan integer pribadi; pembaruan tanggal pribadi; barang publik () {} barang publik (ID integer, integer cateid, nama string, harga ganda, deskripsi string, integer orderno, tanggal updateTime) {super (); this.id = id; this.cateId = CateID; this.name = name; this.price = harga; this.description = description; this.ordno = orderno; this.upDateTime = updateTime; } public integer getId () {return id; } public void setid (integer id) {this.id = id; } public integer getCateId () {return cateid; } public void setCateID (integer cateid) {this.cateId = cateId; } public string getName () {return name; } public void setName (name string) {this.name = name; } public double getPrice () {harga kembali; } public void setPrice (harga ganda) {this.price = harga; } public String getDescription () {return description; } public void setDescription (deskripsi string) {this.description = description; } public integer getORDNO () {return orderno; } public void setOrdERNO (integer orderno) {this.orderno = orderno; } tanggal publik getTimestamp () {return updateTime; } public void setTimestamp (date updateTime) {this.upDateTime = updateTime; } @Override Public String ToString () {return "[Barang termasuk: id ="+this.getId ()+", name ="+this.getName ()+", orderno ="+this.getOrderNo ()+", cateid ="+this.getCateId ()+", UpdateTime ="+this.getmes }} paket com.clark.model; // objek pagination simulasi PageBean Public Class PageBean {// Mulai Nomor Private Integer StartNumber; // nomor akhir Private Integer EndNumber; pubeBean publik () {} pageBean publik (integer startNumber, integer endnumber) {super (); this.startNumber = startNumber; this.endNumber = endnumber; } public integer getStartNumber () {return startNumber; } public void setStartNumber (integer startNumber) {this.startNumber = startNumber; } public integer getEndNumber () {return endnumber; } public void setendNumber (integer endnumber) {this.endNumber = endnumber; }} paket com.clark.mybatis; impor java.io.ioException; impor java.io.reader; impor java.util.hashmap; impor java.util.list; impor java.util.map; impor org.apache.ibatis.io.Resources; Impor org.apache.Ibatis.Session.SQLSession; impor org.apache.ibatis.Session.SQLSessionFactory; impor org.apache.ibatis.Session.SQLSessionFactoryBuilder; impor com.clark.model.goods; impor com.clark.model.pagebean; testgood kelas publik {public static void main (string [] args) melempar ioException {string resource = "configuration.xml"; Pembaca pembaca = null; SQLSessionFactory sessionFactory = null; Sesi sqlsession = null; coba {reader = resource.getResourceasReader (sumber daya); sessionFactory = SQLSessionFactoryBuilder baru (). Build (pembaca); session = sessionfactory.opensession (); PageBean PageBean = PageBean baru (8, 20); Peta <String, PageBean> peta = HashMap baru <String, PageBean> (); Map.put ("PageBean", PageBean); Daftar <Goods> gs = findgoodsbypage (sesi, peta); untuk (barang barang2: gs) {system.out.println (barang2.tostring ()); }} catch (ioException e) {E.PrintStackTrace (); } akhirnya {session.close (); reader.close (); }} // Temukan oleh ID Barang Statis Publik FindGoodByID (Sesi SQLSession, Integer ID) {// Clark sesuai dengan nama namespace = "Clark" dalam file konfigurasi GoodMapper.xml. Barang barang = (barang) session.selectone ("clark.selectgoodbyid", id); barang kembali; } // Temukan semua Daftar Statis Publik <Goods> FindAllGoods (SQLSession Session) {List <Goods> Goods = session.selectList ("Clark.SelectAllGoods"); barang kembali; } Daftar statis publik <Goods> findgoodsbypage (sesi sqlsession, peta <string, pageBean> peta) {Daftar <goods> Goods = session.selectList ("clark.selectgoodsbypage", peta); barang kembali; } // Masukkan barang intergoods int statis publik (sesi sqlsession, barang barang) {int result = session.insert ("clark.insertgood", barang); session.commit (); hasil pengembalian; } // Perbarui Barang Public Static Int Updategoods (SQLSession Session, Goods Goods) {int result = session.update ("clark.updategood", barang); session.commit (); hasil pengembalian; } // Hapus Barang Static Int Deletegood Publik (sesi SQLSession, Integer ID) {int result = session.delete ("clark.deletegood", id); session.commit (); hasil pengembalian; }}Saya akan memperkenalkan Anda pada pengetahuan yang relevan tentang metode MyBatis untuk menerapkan penambahan, penghapusan, modifikasi, dan kueri paginasi. Saya akan terus memperbaruinya nanti. Terima kasih atas dukungan Anda yang berkelanjutan untuk situs web Wulin Network.