MyBatis는 JAR 패키지가 필요합니다.
두 개의 항아리 패키지를 참조해야하며, 하나는 mybatis 이고 다른 하나는 MySQL-connector-Java 입니다. Maven 프로젝트 인 경우 다음과 같이 POM에 종속성을 추가하십시오.
<pectionency> <groupId> org.mybatis </groupid> <artifactid> mybatis </artifactid> <bersion> 3.2.3 </version> </fectionency> <pectionement> <groupId> mySQL </groupId> <artifactID> mySQL-Connector-Java </artifactid> <5.1.26 </version> </exceence>
데이터 준비 :
테스트를 위해 MySQL에서 포인트 데이터를 작성하십시오.
데이터베이스 생성 mybatis_test; 테이블 사용자 만들기 사용자 생성 (age integer not null, nam varchar (64) nulel default ''); 사용자 값 삽입 (18, 'zhanjindong'); 사용자 값 삽입 (20, 'zhangsan');
구성 파일 :
두 가지 유형의 구성 파일이 필요합니다. 하나는 mybatis 구성 파일 Mybatis-config.xml입니다. 예에서는 매우 간단한 구성입니다. 인터넷에 자세한 구성에 대한 많은 지침이 있습니다.
<? 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 "> configuration> <! <! 이름 = "Cacheenabled"value = "false" /> <setting name = "usegeneratedKeys"value = "true" /> <setting name = "defaultexecutoType"value = "Reuse" /> < /settings> <tondealiases> <faintealias alias = "user"type = "test.mybatis.user" /> <antifalments = "개발"> <transactionManager type = "jdbc"/> <dataSource type = "pooled"> <property name = "driver"value = "com.mysql.jdbc.jdbc.driver"/> <property name = "url"value = "jdbc : mysql : //192.168.71.38 : 3306/mybatis_test"/>/>>>> <assern " value = "root"/> <property name = "password"value = "123456"/> </dataSource> </환경> </환경> <mappers> <Mapper Resource = "Mappers/usermapper.xml"/> </mappers> </configuration>
다른 유형은 데이터 액세스 인터페이스 매핑 파일입니다. 예에서는 usermapper.xml입니다. 이 파일은 src/main/resource 또는 subdirectory mybatis에서 찾을 수 있습니다. mybatis-config.xml에서 Mappers/Mapper 노드의 자원에 의해 지정됩니다.
<? xml version = "1.0"encoding = "utf-8"?> <! doctype mapper public "-// mybatis.org//dtd mapper 3.0 // en" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namperpace ="test.mybatis. Usermapper 인터페이스의 경로 "-> <insert id ="InsertUser "ParameterType ="User "> 사용자 (이름, Age) 값 (이름, Age) 값 (#{name},#{age}) <!-여기, SQL의 끝에 반시 콜론이 추가 될 수 없습니다. usermapper 인터페이스-> <select id = "getUser"resulttype = "user"parametertype = "java.lang.string"> select * where where name =#{name} </select> </mapper>해당 매핑 파일은 네임 스페이스 테스트의 ousermapper 인터페이스입니다. MyBatis는 데이터 테이블에 액세스하기 위해 인터페이스 만 정의합니다.
패키지 테스트 .mybatis; public interface usermapper {public void InsertUser (사용자); 공개 사용자 getUser (문자열 이름);}pojo가 필요합니다 : user.java
패키지 테스트 .myBatis; 공개 클래스 사용자 {개인 문자열 이름; 개인 정수 시대; 공개 문자열 getName () {return name; } public void setName (문자열 이름) {this.name = 이름; } public integer getage () {return age; } public void setage (정수 시대) {this.age = age; } 공개 사용자 (문자열 이름, 정수 시대) {super (); this.name = 이름; this.age = age; } public user () {super (); }}시험:
MyBatis 데이터베이스 작업은 SQLSESSION이라는 클래스를 사용합니다. 이 클래스는 sqlsessionFactory를 통해 생성됩니다. 일반적으로 전 세계적으로 sqlsessionfactory를 유지하는 것이 좋습니다.
testmybatis.javapackage test.mybatis; import java.io.ioexception; import java.io.reader; import org.apache.io.io.resources; import org.apache.ibatis.session.sqlsession factory; import org.apache.ibatis.ssession.sqlsationbuilder homplactitis indectorivuilder; 정적 sqlsessionFactory sqlsessionFactory; static {String resource = "mybatis-config.xml"; 독자 독자 = null; try {reader = resources.getResourceAsReader (resource); } catch (ioException e) {System.out.println (e.getMessage ()); } sqlsessionFactory = 새 SQLSESSIONFACTORYBUILDER (). 빌드 (리더); } public static sqlsessionFactory getSqlSessionFactory () {return sqlsessionFactory; }}테스트 코드는 다음과 같습니다.
testmybatis.javapackage test.mybatis; import org.apache.ibatis.session.sqlsession; import org.apache.ibatis.session.sqlsessionfactory; public class testmybatis {static sqlsessionactory sqlsession actorory = null; static {sqlsessionfactory = mybatisutil.getSqlSessionFactory (); } public static void main (String [] args) {testAdd (); getUser (); } public static void testAdd () {sqlsession sqlsession = sqlsessionfactory.opensession (); {usermapper usermapper = sqlsession.getmapper (usermpper.class); 사용자 사용자 = 새 사용자 ( "Lisi", New Integer (25)); usermapper.insertuser (사용자); sqlsession.commit (); // 여기에 제출해야합니다. 그렇지 않으면 데이터가 데이터베이스를 입력하지 않습니다} 마지막으로 {sqlsession.close (); }} public static void getUser () {sqlsession sqlsession = sqlsessionfactory.opensession (); {usermapper usermapper = sqlsession.getmapper (usermpper.class); 사용자 user = usermapper.getUser ( "Zhangsan"); System.out.println ( "이름 :" + user.getName () + "| age :" + user.getage ()); } 마침내 {sqlsession.close (); }}}1. MyBatis는 log4J를 사용하여 로그를 녹음하지만 디버그 모드를 켜는 것은 성능에 큰 영향을 미치는 것 같습니다.
2. Mybatis의 쿼리 캐시는 성능에 큰 영향을 미치며 활성화와 활성화 사이의 격차는 매우 큽니다.
위는 편집자가 소개 한 Mybatis 사용에 대한 자세한 자습서입니다. 나는 그것이 당신에게 도움이되기를 바랍니다. 질문이 있으시면 메시지를 남겨 주시면 편집자가 제 시간에 답장을 드리겠습니다!