Mybatis war Vorgänger von Ibatis. Es handelt sich um ein Rahmen der Datenpersistenzschicht (ORM). MyBatis ist ein hervorragendes Rahmen für Persistenzschicht, das einfache SQL -Abfragen, gespeicherte Verfahren und erweiterte Zuordnung unterstützt. MyBatis eliminiert manuelle Einstellungen fast aller JDBC -Code und -Parameter und die Suche nach Ergebnissätzen. MyBatis verwendet einfache XML oder Anmerkungen zur Konfiguration und ursprüngliche Zuordnung, Mapping -Schnittstellen und Javas Pojos (Plan alte Java -Objekte planen, gewöhnliche Java -Objekte) in Datenbank in der Datenbank. Jede MyBatis -Anwendung verwendet hauptsächlich SQLSessionFactory -Instanzen, und eine SQLSessionFactory -Instanz kann durch SQLSessionFactoryBuilder erhalten werden.
Der spezifische Code lautet wie folgt:
<? alias="goods" type="com.clark.model.Goods"></typeAlias> </typeAliases> <environments default="development"> <environment id="development"> <transactionManager type="JDBC" /> <dataSource type="POOLED"> <property name="driver" value="oracle.jdbc.driver.OracleDriver" /> <property 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> <? DB-Abfrage zum Modell-GOODS-> <resultmap type = "com.clark.model.goods" id = "t_good"> <id column = "id" Properation = "id"/> <Ergebnis column = "cate_id" Eigenschaft = "Cateid"/> <Ergebnis-Spalte "name" -Schance = "-Scharness"/> <result "-Price =" price ". column = "order_no" property = "orderno"/> <result column = "update_time" Property = "updatetime"/> </resultMap> <!-return Ware Type basierend auf ID-Abfrage <typealias alias = "Waren" Typ = "com.clark.model.goods"> </typealias>-> <! parameterType="int" resultType="goods"> select id,cate_id,name,price,description,order_no,update_time from goods where id = #{id} </select> <!-- Query all Goods Return resultMap type--> <select id="selectAllGoods" resultMap="t_good"> select id,cate_id,name,price,description,order_no,update_time from goods </select> <!-angeben parameterType = map wobei die Karte map <String, PageBeane> map-> <select id = "selectGoodsbypage" resultMap = "t_good" parameterType = "map"> <!-order mit id asc verweist, die die Ergebnisse nach dem Anfragen nach dem Anfragen in Assistation-> <[[[[[[[[[[[[[[[[[[[) ausgewählt) ausgewählt werden. 1 = 1 und Rownum <= #{pagebean.endnumber}) wobei rn> = #{pageBean.startNumber} order by id asc]> </select> <!-Warenparameter-Typ hinzugefügt als Waren-> <Insert id = "InsertGood" ParameterType = "Waren"> Ins Güter einfügen. Werte (#{ID},#{Cateid},#{Name},#{Preis},#{Beschreibung},#{orderno},#{updateTime}) </einfügen> <!-Waren-Parameter-Typ-Güter-Güter-Güter-Güter-Güter-Güter-Güter-Güter-Güter-Güter-Güter-Güter-Set-Güter-Güter-Güter. = #{orderno} wobei G.id = #{id} </update> <!-Warenparametertyp int-> <delete id = "deletegood" parameterType = "int"> löschen aus Waren G. Id = #{id} </delete> </mapper> Paket com.clark.model; import Java.util.date; öffentliche Klasse Waren {private Integer id; Private Ganzzahl Cateid; privater Zeichenfolge Name; privater Doppelpreis; private Zeichenfolge Beschreibung; private Ganzzahl Orderno; privates Datum Updatetime; public goods () {} öffentliche Güter (Ganzzahl -ID, Ganzzahl Cateid, String -Name, Doppelpreis, Zeichenfolge Beschreibung, Ganzzahl orderNo, Datum updatetime) {Super (); this.id = id; this.cateid = cateid; this.name = name; this.price = Preis; this.description = Beschreibung; this.orderno = 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 (String -Name) {this.name = name; } public double getPrice () {Rückgabepreis; } public void setPrice (Doppelpreis) {this.price = price; } public String getDescription () {Rückgabe Beschreibung; } public void setDescription (String Beschreibung) {this.description = Beschreibung; } public Integer getOrderNo () {return orderNo; } public void setOrderno (Integer orderNo) {this.orderno = orderno; } public date getTimestamp () {return updatetime; } public void setTimestAMP (Datum updateTime) {this.UpDATETIME = updateTime; } @Override public String toString () {return "[Waren inklusive: id ="+this.getId ()+", name ="+this.getName ()+", orderno ="+this.getOrderno ()+", cateid ="+this.getCatId ()+, updatetime = " }} Paket com.clark.model; // Ein simuliertes Pagination Object PageBean öffentlicher Klassen -Seitenbean {// Number private Integer startNumber; // Endnummer Private Ganzzahl Endnumber; public pagebean () {} public pageBohnen (Ganzzahl 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 (Ganzzahl endNumber) {this.endnumber = endNumber; }} paket com.clark.mybatis; importieren java.io.ioException; Import Java.io.reader; import Java.util.hashMap; importieren java.util.list; import Java.util.map; import org.apache.ibatis.io.resources; import org.apache.ibatis.session.sqlSession; import org.apache.ibatis.session.sqlSessionFactory; import org.apache.ibatis.session.sqlSessionFactoryBuilder; import com.clark.model.goods; import com.clark.model.pagebean; public class testgoods {public static void main (String [] args) löst IOException aus {String ressourcen = "configuration.xml"; Reader reader = null; SQLSessionFactory SessionFactory = null; SQLSession Session = null; try {reader = ressourcen.getResourceAsReader (Ressource); SessionFactory = new SQLSessionFactoryBuilder (). Build (Leser); Session = SessionFactory.openSession (); PageBean PageBean = New PageBohnen (8, 20); Karte <String, PageBean> map = new HashMap <String, PageBean> (); map.put ("PageBean", PageBohnen); LIST <Wars> gs = findGoodsBypage (Sitzung, Karte); für (Goods Goods2: gs) {System.out.println (Goods2.toString ()); }} catch (ioException e) {e.printstacktrace (); } endlich {Session.close (); reader.close (); }} // Finden Sie durch ID öffentliche statische Waren FindGoodById (SQLSession Session, Integer ID) {// Clark entspricht Namespace name = "Clark" in der Konfigurationsdatei goodmapper.xml. Warenwaren = (Waren) Sitzung.Seselectone ("Clark.SelectGoodbyId", ID); Waren zurückgeben; } // Finden Sie alle öffentlichen statischen Liste <Goods> findAllGoods (SQLSession -Sitzung) {List <Geure> goods = session.selectList ("clark.SelectallGoods"); Waren zurückgeben; } public static list <waren> findGoodsBypage (SQLSession -Sitzung, Karte <String, PageBean> Karte) {List <Goods> goods = session.SelectList ("Clark.SelectGoodsBypage", Karte); Waren zurückgeben; } // Güter einsetzen public static intgoods (SQLSession Session, Warenwaren) {int result = session.insert ("clark.insertgood", Waren); Session.Commit (); Rückgabeergebnis; } // Waren öffentlich statische statische int updategoods (SQLSession Session, Warenwaren) {int result = session.update ("clark.updategood", Waren); Session.Commit (); Rückgabeergebnis; } // Waren Public static int deletegood löschen (SQLSession Session, Integer ID) {int result = session.delete ("clark.deletEgood", id); Session.Commit (); Rückgabeergebnis; }}Ich werde Sie in das relevante Wissen über MyBatis 'Methoden zur Implementierung von Additions-, Lösch-, Änderungs- und Paginierungsabfrage vorstellen. Ich werde es Ihnen später weiter aktualisieren. Vielen Dank für Ihre fortgesetzte Unterstützung für die Wulin Network -Website.