Mybatis 입문 MyBatis 환경 구축(제1 편)

Mybatis 소개
MyBatis 의 전신 은 iBatis 입 니 다.원래는 apache 의 오픈 소스 프로젝트 였 습 니 다.2010 년 에 이 프로젝트 는 apache software fornidation 에서 google code 로 이전 되 었 고 MyBatis 로 이름 을 바 꾸 었 습 니 다.
MyBatis 는 일반 SQL 조회,저장 프로 세 스,고급 맵 을 지원 하 는 우수한 지구 층 프레임 워 크 입 니 다.MyBatis 는 거의 모든 JDBC 코드 와 매개 변수의 수 동 설정 과 결과 집합 검색 을 제거 했다.MyBatis 는 간단 한 XML 이나 주 해 를 사용 하여 설정 과 원본 맵 에 사용 하고 인터페이스 와 자바 의 POJOs(Plan Old Java Objects,일반 자바 대상)를 데이터베이스 에 기록 합 니 다.
다음은 단계별 로 my batis 환경 구축 을 소개 합 니 다.
1)프로젝트 에 mybatis-3.4.1.jar 패 키 지 를 도입 하고 데이터베이스(mysql,mssql..)패 키 지 를 도입 한다.
2)src 아래 에 새 프로필 conf.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>
<!--          -->
 <properties resource="jdbc.properties" />
 <!--   mybatis     -->
 <environments default="development">
 <environment id="development">
 <!-- type="JDBC"     JDBC            -->
 <transactionManager type="JDBC" /> 
 <!-- mybatis   3      ,   :POOLED,UNPOOLED,JNDI -->
 <!-- POOLED     JDBC       -->
 <!-- UNPOOLED             -->
 <!-- JNDI              -->
 <dataSource type="POOLED">
 <property name="driver" value="${driver}" />
 <property name="url" value="${url}" />
 <property name="username" value="${username}" />
 <property name="password" value="${password}" />
 </dataSource>
 </environment>
 </environments> 
 <mappers>
 <mapper resource="userMapper.xml"/>
 </mappers> 
</configuration>
외부 프로필 을 통 해 데이터 재고 정 보 를 저장 하기 때문에 jdbc.properties 의 데이터 재고 정 보 를 추가 합 니 다.

driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
url=jdbc:sqlserver://127.0.0.1;databaseName=test
username=sa
password=123456
3)맵 파일 userMapper.xml 만 들 기

<?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 namespace="hw.com.ser.IUser">
 <!--        -->
 <select id="queryUsers" resultType="hw.com.pojo.User">
 select * from MS_User
 </select>
 <selectid="queryUserById" resultType="hw.com.pojo.User" parameterType="int">
 Select * From Ms_User Where id=#{id}
 </select> 
</mapper>
(여기 서 주의해 야 할 것 은 namespace 속성 입 니 다.이 인 스 턴 스 는 인 터 페 이 스 를 통 해 매 핑 되 는 방식 이기 때문에 namespace 속성 은 인터페이스 경 로 를 기록 해 야 합 니 다)부도:

4)맵 인터페이스 클래스 만 들 기

package hw.com.ser;
import java.util.List;
import hw.com.pojo.User;
public interface IUser {
 public List<User> queryUsers();
 public User queryUserById(int id);
}
5)SqlSession Factory 만 들 기

package hw.com.util;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.util.Properties;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
public class SqlSessionFactoryUtil {
 private static SqlSessionFactory sqlSessionFactory = null;
 private static final Class CLASS_LOCK = SqlSessionFactoryUtil.class;
 private SqlSessionFactoryUtil() {
 }
 public static SqlSessionFactory initSqlSessionFactory() {
 String resource = "conf.xml";
 InputStream inputStream = null;
 try {
 inputStream = Resources.getResourceAsStream(resource); 
 } catch (IOException e) {
 e.printStackTrace();
 }
 synchronized (CLASS_LOCK) {
 if (sqlSessionFactory == null) {
 sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
 }
 }
 return sqlSessionFactory;
 }
 public static SqlSession openSqlSession(){
 if(sqlSessionFactory==null){
 initSqlSessionFactory();
 }
 return sqlSessionFactory.openSession();
 }
}
6)pojo 만 들 기

package hw.com.pojo;
import java.util.Date;
public class User {
 private String Id;
 private String UserName;
 private String UserPwd;
 private int DeptmentId;
 private String UserTrueName;
 private String Email;
 private int LearnCenterId;
 private Date CreateDate;
 private Date LastModifyDate;
 private int UserStatus;
 public User() {
 super();
 // TODO Auto-generated constructor stub
 }
 public String getId() {
 return Id;
 }
 public void setId(String id) {
 Id = id;
 }
 public String getUserName() {
 return UserName;
 }
 public void setUserName(String userName) {
 UserName = userName;
 }
 public String getUserPwd() {
 return UserPwd;
 }
 public void setUserPwd(String userPwd) {
 UserPwd = userPwd;
 }
 public int getDeptmentId() {
 return DeptmentId;
 }
 public void setDeptmentId(int deptmentId) {
 DeptmentId = deptmentId;
 }
 public String getUserTrueName() {
 return UserTrueName;
 }
 public void setUserTrueName(String userTrueName) {
 UserTrueName = userTrueName;
 }
 public String getEmail() {
 return Email;
 }
 public void setEmail(String email) {
 Email = email;
 }
 public int getLearnCenterId() {
 return LearnCenterId;
 }
 public void setLearnCenterId(int learnCenterId) {
 LearnCenterId = learnCenterId;
 }
 public Date getCreateDate() {
 return CreateDate;
 }
 public void setCreateDate(Date createDate) {
 CreateDate = createDate;
 }
 public Date getLastModifyDate() {
 return LastModifyDate;
 }
 public void setLastModifyDate(Date lastModifyDate) {
 LastModifyDate = lastModifyDate;
 }
 public int getUserStatus() {
 return UserStatus;
 }
 public void setUserStatus(int userStatus) {
 UserStatus = userStatus;
 }
 @Override
 public String toString() {
 return "User [Id=" + Id + ", UserName=" + UserName + ", UserPwd=" + UserPwd + ", DeptmentId=" + DeptmentId
 + ", UserTrueName=" + UserTrueName + ", Email=" + Email + ", LearnCenterId=" + LearnCenterId
 + ", CreateDate=" + CreateDate + ", LastModifyDate=" + LastModifyDate + ", UserStatus=" + UserStatus
 + "]";
 }
}
7)메 인 방법 으로 테스트

package hw.com.Day1.main;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import hw.com.pojo.User;
import hw.com.ser.IUser;
import hw.com.util.SqlSessionFactoryUtil;
public class UserTest {
 public static void main(String[] args) { 
 SqlSession sqlSession=null;
 try {
 sqlSession=SqlSessionFactoryUtil.openSqlSession();
 IUser iUser=sqlSession.getMapper(IUser.class);
 List<User> users=iUser.queryUsers();
 if(users.size()>0){
 for (User user : users) {
  System.out.println(user.toString());
 }
 }
 } catch (Exception e) {
 e.printStackTrace();
 }
 }
}
마 이 바 티 스 입문 마 이 바 티 스 환경 구축(첫 번 째 편)에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.마 이 바 티 스 환경 구축 입문 에 관 한 더 많은 내용 은 예전 의 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 부탁드립니다!

좋은 웹페이지 즐겨찾기