Mybatis требует пакета JAR:
Необходимо ссылаться на два пакета JAR, один- mybatis , а другой- MySQL-connector-Java . Если это проект Maven, добавьте зависимости в POM следующим образом.
<depervice> <groupid> org.mybatis </GroupId> <ArtifactId> mybatis </artifactid> <serse> 3.2.3 </version> </dependency> <dehyedency> <groupid> mysql </Groupid> <ratifactid> mysql-connector-java </artifactid> <seriate> 5.1.26 </restainty> </resture> <//resture> <//resture> <//resture> <//resture> <//resture> </resture> </artifactid> <seriate>.
Подготовка данных:
Создайте данные точек в MySQL для тестирования:
Создать базу данных mybatis_test; создать пользователь таблицы (возрастное целое число не null, имя varchar (64) не null default ''); вставить значения пользователей (18, 'Zhanjindong'); вставить значения пользователей (20, 'Zhangsan');
Файл конфигурации:
Требуются два типа файлов конфигурации. Одним из них является файл конфигурации mybatis mybatis-config.xml. В примере это очень простая конфигурация. Есть много инструкций для подробной конфигурации в Интернете.
<? xml version = "1.0" Encoding = "UTF-8"?> <! Конфигурация doctype public "-// mybatis.org//dtd config 3.0 // en" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <perifulation> <preting> <! name="cacheEnabled" value="false" /> <setting name="useGeneratedKeys" value="true" /> <setting name="defaultExecutorType" value="REUSE" /> </settings> <typeAliases> <typeAlias alias="User" type="test.mybatis.User"/> </typeAliases> <environments default="development"> <environment id="development"> <transactionManager type = "jdbc"/> <dataSource type = "объединение"> <name = "Driver" value = "com.mysql.jdbc.driver"/> <name = "url" value = "jdbc: mysql: //192.168.71.38: 3306/mybatis_test"/> namermame namemer hamer namerame "/> namermame namerame"/> ". value = "root"/> <name = "password" value = "123456"/> </dataSource> </environment> </erviness> <mappers> <mapper resource = "mappers/usermapper.xml"/> </mappers> </configuration>
Другим типом является файл отображения интерфейса интерфейса доступа к данным: в примере это usermapper.xml. Этот файл можно найти с помощью SRC/Main/Resource или подкатализатора Mybatis. Это указывается ресурсом Mappers/Node в Mybatis-config.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 nightspace =" test.mybatis.mybatis.mybatis.mybatis. Пространство имен должно быть путем интерфейса usermapper "-> <INSERT ID =" INSERTUSER "PARAMETERTYPE =" Пользователь "> вставить в значения пользователя (имя, возраст) (#{name},#{age}) <!-Здесь не может быть добавлено в конце SQL, иначе, как и ID, идентификатор, иначе, так и то же, что идентификатор" ORA-00911 ", идентификация, и. Имя метода интерфейса в интерфейсе usermapper-> <select id = "getUser" resultype = "user" parametertype = "java.lang.string"> select * из пользователя, где name =#{name} </selet> </mapper>Соответствующий файл сопоставления - это интерфейс Usermapper в разделе Test.mybatis, который только определяет интерфейс для доступа к таблице данных:
Package Test.mybatis; публичный интерфейс usermapper {public void insertuser (пользователь пользователя); общедоступный пользователь getUser (string name);}Нужен pojo: user.java
Package test.mybatis; User User user {private String name; частный целый возраст; public String getName () {return name; } public void setName (string name) {this.name = name; } public integer getage () {return Age; } public void setage (целый возраст) {this.age = age; } public User (String name, Integer Age) {super (); this.name = name; this.age = возраст; } public user () {super (); }}тест:
В операции базы данных Mybatis используется класс под названием SQLSession. Этот класс генерируется через SQLSessionFactory. Обычно рекомендуется поддерживать SQLSessionFactory во всем мире.
Testmybatis.javapackage test.mybatis; import java.io.ioexception; импорт java.io.reader; import org.apache.ibatis.io.resources; импорт org.apache.ibatis.session.sqlsessionFactory; import org.apache.ibatis.session.sessionFactory; Static SQLSessionFactory SQLSessionFactory; static {string resource = "mybatis-config.xml"; Reader Reader = null; try {Reader = resources.getResourCeasRearder (ресурс); } catch (ioException e) {System.out.println (e.getMessage ()); } sqlSessionFactory = new sqlSessionFactoryBuilder (). Build (Reader); } public static sqlSessionFactory getSqlSessionFactory () {return sqlSessionFactory; }}Тестовый код заключается в следующем:
Testmybatis.javapackage test.mybatis; import org.apache.ibatis.session.sqlsession; импорт org.apache.ibatis.session.sqlsessionFactory; открытый класс TestmyBatis {Static SqlSessionFactory sqlSessionFactory = null; static {sqlSessionFactory = mybatisutil.getSqlSessionFactory (); } public static void main (string [] args) {testAdd (); getUser (); } public static void testAdd () {sqlSession sqlSession = sqlSessionFactory.opensession (); try {usermapper usermapper = sqlsession.getmapper (usermapper.class); Пользователь пользователя = новый пользователь ("LISI", New Integer (25)); usermapper.insertuser (пользователь); sqlsession.commit (); // Вы должны отправить здесь, иначе данные не будут вводить базу данных}, наконец, {sqlsession.close (); }} public static void getUser () {sqlSession sqlSession = sqlSessionFactory.opensession (); try {usermapper usermapper = sqlsession.getmapper (usermapper.class); Пользователь пользователь = usermapper.getuser ("Zhangsan"); System.out.println ("name:" + user.getName () + "| AGE:" + user.getage ()); } наконец {sqlSession.Close (); }}}1. Mybatis будет использовать log4j для записи журналов, но включение режима отладки, похоже, оказывает очень сильное влияние на производительность.
2. Кэш запроса Mybatis оказывает очень большое влияние на производительность, и разрыв между включением и не включенным очень большой.
Выше приведено подробное руководство по использованию Mybatis, представленного вам редактором. Я надеюсь, что это будет полезно для вас. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит вам вовремя!