Mybatis는 Ibatis의 전임자였습니다. ORM (Data Persistence Layer) 프레임 워크입니다. MyBatis는 일반 SQL 쿼리, 저장 프로 시저 및 고급 매핑을 지원하는 우수한 지속성 계층 프레임 워크입니다. MyBatis는 거의 모든 JDBC 코드 및 매개 변수의 수동 설정을 제거하고 결과 세트를 검색합니다. MyBatis는 구성 및 원래 매핑, 맵핑 인터페이스 및 Java의 Pojos (오래된 Java 개체, 일반 Java 개체)를 데이터베이스의 레코드로 사용하는 간단한 XML 또는 주석을 사용합니다. 각 mybatis 응용 프로그램은 주로 sqlsessionfactory 인스턴스를 사용하며 sqlsessionfactory 인스턴스는 sqlsessionfactorybuilder를 통해 얻을 수 있습니다.
특정 코드는 다음과 같습니다.
<? xml version = "1.0"alcoding = "utf-8"?> <! doctype configuration public "-// mybatis.org//dtd config 3.0 // en" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <! alias = "goods"type = "com.clark.model.goods"> < /indecealias> < /inflealiases> <환경 = "개발"> <환경 ID = "Development"> <transactionManager type = "jdbc" /> <dataSource type = "plate"> <property name = "driver" "uracle.jdbc.driver.driver.oraCledRiver" value = "jdbc : thin :@172.30.0.125 : 1521 : oradb01"/> <속성 이름 = "value ="value = "settlement"/> <property name = "valess ="settlement "/> </datasource> </환경> </mapper Resources> </mappers> </mappers>/mappers. </configuration> <? xml version = "1.0"alcoding = "utf-8"?> <! doctype mapper public "-// mybatis.org//dtd mapper 3.0 // en" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper names = "appper nomestd" 모델-goods-> <resultmap type = "com.clark.model.goods"id = "t_good"> <id councle = "id"property = "id"/> <result column = "cate_id"property = "cateid"/> <result column = "name"/> <result column = "propert ="price = "price ="propection = "result column ="description = "exhents ="result column = "description ="result column = "sectord ="sectord = "sectord ="sectord = "description" 열 = "order_no"property = "orderno"/> <result column = "update_time"property = "updateTime"/> </resultmap> <!-id query <faintealias alias = "goods"type = "com.clark.model.goods"> </inflealias> -->->-<selectmap 및 resulttyif의 차이점을 기반으로 반환 제품 유형을 반환합니다. parametertype = "int"resulttype = "goods"> id, cate_id, 이름, 가격, 설명, order_no, update_time id = #{id} </select> <!-쿼리 모든 상품 return resultmap 유형-> <select id = "selectallgoods"resultmap = "t_good"> select _ id, cate_id, price, explice, explice, explice, explice, explice, extome, cate_id. </select> <!-매개 변수를 지정하여 맵이 맵 <문자열, pagebean>지도-> <select id = "selectgoodsbypage"resultmap = "t_good"parametertype = "map"> <!-id asc에 의한 순서 [select *에서 select *, rownum) [select *, rownum). 여기서 1 = 1 및 rownum <= #{pagebean.endnumber}) where rn> = # #{pagebean.startnumber} id asc] isc]> </select> <!-상품으로 추가 된 상품 매개 변수 유형을 상품으로 추가합니다-> <insert id = "insertgood"parametertype = "gress"> insert in indsert in ind, cate_id) value (#{id},#{cateid},#{name},#{price},#{description},#{orderno},#{updateTime}) </insert> <!-상품 매개 변수 유형을 상품으로 업데이트-<update id = = update ood "parametertype ="goods g. set g.name g. = #{orderno} 여기서 g.id = #{id} </update> <!-상품 매개 변수 유형은 int-> <delete id = "deletegood"parametertype = "int"> g.id = #{id} </delete> </mapper> package com.clark.model; import java.util.date; 공공 수업 상품 {개인 정수 ID; 개인 정수 Cateid; 개인 문자열 이름; 개인 이중 가격; 개인 문자열 설명; 개인 정수 주문 개인 날짜 업데이트 타임; 공공재 () {} 공공재 (정수 ID, 정수 CateId, 문자열 이름, 이중 가격, 문자열 설명, 정수 주문, 날짜 업데이트 타임) {super (); this.id = id; this.cateid = cateid; this.name = 이름; this.price = 가격; this.description = 설명; this.orderno = Orderno; this.updateTime = updateTime; } public Integer getId () {return id; } public void setId (정수 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 (문자열 이름) {this.name = 이름; } public double getPrice () {반환 가격; } public void setPrice (이중 가격) {this.price = 가격; } public String getDescription () {return description; } public void setDescription (문자열 설명) {this.Description = 설명; } public Integer getOrderno () {return orderno; } public void setorderno (정수 OrderNo) {this.orderno = Orderno; } public date getTimestamp () {return updateTime; } public void settimestamp (날짜 updateTime) {this.updateTime = updateTime; } @Override public String toString () {return "[roods"[roods includ : id = "+this.getId ()+", name = "+this.getName ()+", orderNo = "+this.getOrderNo ()+", cateId = "+this.getCateId ()+", updateTime = "+this. this.getTimestamp ()" "; }} 패키지 com.clark.model; // 시뮬레이션 된 페이지 매김 객체 PageBean Public Class PageBean {// 숫자 개인 정수 시작 humber; // 종료 번호 개인 정수 엔드 번호; public pagebean () {} public pagebean (정수 startNumber, Integer Endnumber) {super (); this.startnumber = startNumber; this.endnumber = endnumber; } public Integer getStartNumber () {return startNumber; } public void setStartNumber (정수 startNumber) {this.startNumber = startNumber; } public Integer getendNumber () {return endnumber; } public void setendnumber (정수 엔드 너버) {this.endnumber = endnumber; }} 패키지 com.clark.mybatis; import java.io.ioexception; import java.io.Reader; java.util.hashmap import; Java.util.list 가져 오기; java.util.map import; import org.apache.ibatis.io.resources; import org.apache.ibatis.session.sqlsession; import org.apache.ibatis.session.sqlsessionfactory; import org.apache.ibatis.session.sqlsessionfactorybuilder; com.clark.model.goods import; com.clark.model.pagebean import; public class testgoods {public static void main (String [] args)은 ioexception {String resource = "configuration.xml"; 독자 독자 = null; sqlsessionFactory sessionFactory = null; sqlsession session = null; try {reader = resources.getResourceAsReader (resource); SessionFactory = 새로운 SQLSESSIONFACTORYBUILDER (). 빌드 (Reader); 세션 = sessionfactory.opensession (); PageBean PageBean = New PageBean (8, 20); Map <String, pagebean> map = new Hashmap <String, pagebean> (); map.put ( "pagebean", pagebean); List <Goods> gs = FindGoodSbypage (세션,지도); for (goods goods2 : gs) {system.out.println (goods2.toString ()); }} catch (ioexception e) {e.printstacktrace (); } 마침내 {session.close (); reader.close (); }} // id 공개 정적 상품 findgoodbyid (sqlsession session, integer id) {// clark은 goodmapper.xml 구성 파일의 네임 스페이스 이름 = "clark"에 해당합니다. 상품 제품 = (상품) 세션 .Selectone ( "clark.selectgoodbyid", id); 반품 용품; } // 모든 공개 정적 목록을 찾습니다 <course> findAllGoods (sqlsession session) {list <course> goods = session.selectlist ( "clark.selectallgoods"); 반품 용품; } public static list <Goods> findGoodSbypage (sqlsession session, map <string, pagebean> map) {list <course> goods = session.selectlist ( "clark.selectgoodsbypage", map); 반품 용품; } // 상품 삽입 공용 정적 int insertGoods (SQLSESSION 세션, 상품 상품) {int result = session.insert ( "clark.insertgood", 제품); 세션 .commit (); 반환 결과; } // 업데이트 상품 공개 정적 int updateoods (sqlsession 세션, 상품 상품) {int result = session.update ( "clark.updategood", 제품); 세션 .commit (); 반환 결과; } // 상품 삭제 공개 정적 int deletegood (sqlsession session, integer id) {int result = session.delete ( "clark.deletegood", id); 세션 .commit (); 반환 결과; }}추가, 삭제, 수정 및 페이지 매김 쿼리를 구현하기위한 Mybatis의 방법에 대한 관련 지식을 소개하겠습니다. 나중에 계속 업데이트하겠습니다. Wulin Network 웹 사이트에 대한 지속적인 지원에 감사드립니다.