Введение в Mybatis
Предшественником Mybatis был Ибатис, который изначально был проектом Apache с открытым исходным кодом. В 2010 году этот проект был перенесен от Apache Software Foundation в Google Code и был переименован в Mybatis.
Mybatis - отличная структура слоя настойчивости, которая поддерживает простые запросы SQL, сохраненные процедуры и расширенное картирование. Mybatis устраняет ручную настройку почти всех кодов и параметров JDBC и поиск наборов результатов. Mybatis использует простые XML или аннотации для конфигурации и оригинального отображения, отображения интерфейсов и Pojos Java (спланируйте старые объекты Java, обычные объекты Java) в записи в базе данных.
Следующие шаги представлены для строительства среды Mybatis.
1) Представьте пакет Mybatis-3.4.1.jar в рамках проекта, а затем введите пакет базы данных (MySQL, MSSQL ..).
2) Создать новый файл конфигурации conf.xml в SRC
<? xml version = "1.0" Encoding = "UTF-8"?> <! Конфигурация doctype public "-// mybatis.org//dtd config 3.0 // en" "http://mybatis.org/dtd/mybatis-3-config.dtd"> configuration>? resource = "jdbc.properties" /> <!-Настройка операционной среды mybatis-> <среда default = "Развитие"> <среда идентификатор = "разработка"> <!-type = "jdbc" представляет использование коммита Jdbc и откат для управления транзакциями-> <TransactionManager = "JDBC" /> <! Объединенные, Uncoled, jndi-> <!-Pooled указывает на поддержку пула соединений JDBC источника данных-> <!-Unpooled Указывает, что не поддерживает пул соединений источника данных-> <!-JNDI указывает на поддержку пула внешних данных источника данных-> <DataSource Type = "Booled"> name "value" value = "$ {ver Driver}" /> <name = "artail" vature = "vatue" vature a name = "qually" vatue "$" /> <name = name = "username" value = "$ {username}"/> <name = "password" value = "$ {пароль}"/> </dataSource> </envenerition> </erviness> <mappers> <mapper resource = "usermapper.xml"/> </mappers> </configuration>Здесь информация о хранении базы данных хранится через внешние файлы конфигурации, поэтому добавляется информация о хранении базы данных JDBC.Properties.
Driver = com.microsoft.sqlserver.jdbc.sqlserverdriverurl = jdbc: sqlserver: //127.0.0.1; databasename = testusername = sapassword = 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.serser.serser.s! users--> <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>(Здесь следует отметить, что атрибут пространства имен является, потому что этот экземпляр отображается через интерфейсы, поэтому атрибут пространства имен должен быть записан в качестве пути интерфейса) Прилагаемый рисунок:
4) Создать класс интерфейса отображения
пакет hw.com.ser; import java.util.list; import hw.com.pojo.user; открытый интерфейс iuser {public list <user> Queryusers (); public user QueryuserbyId (INT ID);}5) Создать SQLSessionFactory
Package hw.com.util; импорт java.io.ioexception; импорт java.io.inputstream; импорт java.io.inputStreamReader; Import java.io.reader; импорт java.util.properties; import org.apache.ibatis.io.resources; import org.apache.session.session.session.session.io.resources; import org.apache.session.session.session.session.session.session.session.session. org.apache.ibatis.session.sqlsessionFactory; import org.apache.ibatis.session.sqlSessionFactoryBuilder; открытый класс sqlSessionFactoryUtil {private static sqlSessionFactory sqlSessionFactory = null; Частный статический окончательный класс class_lock = sqlSessionFactoryUtil.class; private sqlSessionFactoryUtil () {} public static sqlSessionFactory initSqlSessionFactory () {String resource = "conf.xml"; InputStream inputStream = null; try {inputStream = resources.getResourCeasStream (ресурс); } 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
пакет hw.com.pojo; import java.util.date; Пользователь открытого класса {Private String Id; частное имя пользователя; Private String userPwd; частный int deptmentId; Private String userTruEname; Приватная строковая электронная почта; private int learncenterid; Частная дата создана; частная дата LastModifyDate; частный 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 degentId) {deptmentId = degomMentId; } 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 inemyCenterid; } public void setLearnCenterid (int learnCenterid) {inemberCenterid = LearnCenterId; } public date getCreatedAte () {return cantureTate; } public void setCreatedate (дата создан) {createment = censueTate; } 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 + ", LearnTERCENTERID =" + LearnTerID + ", CreatedIater +", CreatedIater + ", CreatedireTer +", ", создание", создание ", создание", создание ", создание. LastModifyDate = " + LastModifyDate +", userStatus = " + userStatus +"] "; }}7) Сделайте тест в соответствии с основным методом
пакет 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.sqlsessionFactorytil; public usertest {public void mainessession {] args) sqlSession = null; try {sqlSession = sqlSessionFactoryUtil.opensqlSession (); Iuser iuser = sqlsession.getmapper (iuser.class); Список <user> users = iuser.queryusers (); if (users.size ()> 0) {for (user user: users) {system.out.println (user.tostring ()); }}} catch (Exception e) {e.printstackTrace (); }}}