Я некоторое время не узнал новые вещи. После 1 октября я чувствую, что чем раньше я делаю вещи, тем лучше. Я не скажу много чепухи. Давайте поговорим об использовании MyBatis для подключения к базе данных MySQL. В предыдущей статье я написал тесты JDBC, и мои таблицы базы данных все же. Поскольку большая часть информации, которую я искал в Интернете, является затмением, так как я привык к IDES, я пришел сюда с множеством проблем.
Взгляните на инженерную структуру
Позвольте мне сначала поговорить о коде Java. DAO - это интерфейс запроса, модель - XML Ben и соответствующий оператор запроса. Я чувствую, что это немного плохо. User.xml лучше в DAO. Вы узнаете после того, как поймете это. Поскольку я новичок, я не очень много понимаю. Разумное определение пакета будет дано позже.
Я использовал тест для этого
Давайте поговорим о ресурсах, конфигурация - это файл конфигурации, log4j - это печать журнала, а другие нельзя использовать на данный момент.
Давайте посмотрим на код, я дам его вам в порядке создания файлов.
Во -первых, должен быть объект, который построен в соответствии с базой данных
user.java
Пакет com.fanyafeng.model; import java.util.date;/*** Автор: fanyafeng* Данные: 16/10/11 14: 56* Электронная почта: [email protected]*/public class user {private int id; private String usernam id;} public String getUsername () {return username;} public void setUsername (string username) {this.username = username;} public date getBirthday () {return hightday;} public void setBirthday (дата рождения) {this.birthday = день рождения; {this.sex = sex;}public String getAddress() {return address;}public void setAddress(String address) {this.address = address;}@Overridepublic String toString() {return "User{" +"id=" + id +", username='" + username + '/'' +", birthday=" + birthday +", sex='" + sex + '/'' + ", address = '" + address +'/'' + '}';}}
Iuserdao.java
Пакет com.fanyafeng.dao; import com.fanyafeng.model.user; import java.util.list;/*** Автор: fanyafeng* Данные: 16/10/11 14: 55* Электронная почта: [email protected]*/public interface iuserdao {public list <пользователь> Queryuserbynam add (); public void del (int id); public void alter (int id);}
user.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"> <! namespace = "com.fanyafeng.dao.iuserdao"> <select id = "selectUserById" parameterType = "int" recouttype = "com.fanyafeng.model.user"> select * of user, где id = #{id} </selet> <! Инъекция-> <SELECT ID = "QueryUserByName" parameterType = "string" resultype = "com.fanyafeng.model.user"> select * из пользователя, где имя пользователя, такое как #{name} </select> <!-Вставка в пользователь (ID, имя пользователя, секс, адрес) значение (null, "chen xiaoran", ", женское", "inserte") <). id = "добавить" parametertype = "com.fanyafeng.model.user"> вставьте в пользователь (id, имя пользователя, день рождения, пол, адрес) значения (#{id},#{username},#{день рождения},#{sex},#{адрес}) </insert> </mapper>,#{sex},#{адрес})usertest.java
пакет com.fanyafeng.test; import com.fanyafeng.model.user; import org.apache.ibatis.io.resources; import org.apache.ibatis.session.sqlsession; импорт org.apache.ibatis.session.sqlsessionFactor org.apache.ibatis.session.sqlsessionFactoryBuilder; импорт java.io.ioexception; импорт java.io.reader; import java.util.date; импорт java.util.list;/*** Автор: fanyafeng* data: 16/10/11 14: 58* Email. SQLSessionFactory SQLSessionFactory; Private Static Reader Reader; static {try {recression. resources.getResourceaseRearder ("configuration.xml"); sqlSessionFactory = new sqlSessionFactoryBuilder (). main (string [] args) {sqlSession sqlSession = sqlSessionFactory.opensession (); try {// user user = (user) sqlsession.selectone ("com.fanyafeng.dao.iuserdao.selectuserbyid", 2); // system.out.out.printdldressdress () + areftdress () + areftress () + areftress () + user.getBirthDay ()); // System.out.println (user.getId () + user.getUsername ()); //// List <user> userlist = sqlSession.selectlist ("com.fanyafeng.dao.iuserdao.queryuserbyname", "%li ning%"); для (int i = 0; i <userlist.size (); i ++) {system.out.println (userlist.get (i) .toString ());} user user = new user (); user.setid (100); user.setbirthday (new Date ()); user.setusermanme ("li ning"); Приседать "); int isadd = sqlSession.insert (" com.fanyafeng.dao.iuserdao.add ", user); sqlsession.commit (); // Не забывайте} наконец {sqlsession.close ();}}}configuration.xml
<? xml version = "1.0" Encoding = "UTF-8"?> <! Doctype ConfigurationPublic "-// mybatis.org//dtd config 3.0 // en" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <конфигурация> <! Здесь-> <!-<typealias alias = "user" type = "com.fanyafeng.model.user"/>-> <!-</typealiases>-> <!-</typealiases>-> <!-Конфигурация среды после интеграции с пружиной будет отменена-> <среда по умолчанию = "Development"> <cervident ud = "> <> <> <! type = "jdbc"/> <!-Пул соединений базы данных-> <dataSource type = "Booled"> <name = "Driver" value = "com.mysql.jdbc.driver"/> <name = "url" value = "jdbc: mysql: // localhost: 3306/mybatis?? value = "root"/> <name = "password" value = "" // </dataSource> </envenerition> </erviness> <mappers> <mapper resource = "com/fanyafeng/model/user.xml" // </mappers> </configuration>
Для log4j, пожалуйста, добавьте его в соответствии с вашими увлечениями. Комментарии в коде написаны подробно, поэтому я не буду вдаваться в подробности. Здесь есть место, которое заставляет меня чувствовать себя очень разочарованным. Я попросил великого хозяина узнать, что случилось. На скриншоте есть целевой каталог. Это место хранения для скомпилированных файлов. Тем не менее, вопрос в том, где будет скомпилирован и размещен файл Java. Тем не менее, файл XML-не-ресурсов не был введен, и было выброшено исключение. Я проверил много информации и ответил на вопрос. Затем я решил это так и посмотрел на файл pom.xml. После того, как я изменил его, я добавил тег сборки.
<project xmlns = "http://maven.apache.org/pom/4.0.0" xmlns: xsi = "http://www.w3.org/2001/xmlschema-instance" xsi: schemalocation = "http://maven.apache.org/4.0.0.0.0.0.0.0 http://maven.apache.org/maven-v4_0_0.xsd "> <dolidyversion> 4.0.0 </modelversion> <groupid> com.fanyafeng </GroupId> < artifactid> mybatisdemo </artifactid> <badgaging> War </упаковка> <sersive> 1.0-snapshot </version> <mame> mybatisdemo Мавен Webapp </name> <url> http://maven.apache.org </url> <buld> <finalname> mybatisdemo </finalname> <sorrandals> <serrousce> <cirecatory> src/mai N/Resources </Directory> <clact> <clact> **/*. xml </includ> <clact> **/*. Properties </inclate> </include> </resource> <resource> < каталог> src/main/java </directory> <clact> <clact> **/*. xml </include> </incluct> </resource> </resources> </build> <dehyediesties> <dehydency> <groupid> junit </GroupId> <StrifactId> junit </artifactid> <serse> 3.8.1 </версия> <srappope> </artifactid> <serse> 3.8.1 </версия> <Srappope> </artifactid> <persion> 3.8.1. https://mvnrepository.com/artifact/mysql/mysql-connector-java-> <dependency> <groupid> mysql </GroupId> <strifactid> mysql-connector-java </artifactid> <sersiod> 5.1.38 </version> </зависимость> <! https://mvnrepository.com/artifact/org.mybatis/mybatis-> <dehybodency> <groupid> org.mybatis </GroupId> <straCactId> mybatis </artifactid> <serse> 3.2.8 </version> </vehing> <!-! https://mvnrepository.com/artifact/org.slf4j/slf4j-log4j12-> <depervict> <groupid> org.slf4j </GroupId> <ratifactid> slf4j-log4j12 </artifactid> <sersion> 1.7.21 </версия> </зависимость> <! https://mvnrepository.com/artifact/org.slf4j/slf4j-api-> <dependency> <groupid> org.slf4j </GroupId> <strifactid> slf4j-api </artifactid> <sersive> 1.7.21 </версия> </зависимость> <! https://mvnrepository.com/artifact/log4j/log4j-> <dehyederiation> <groupid> log4j </GroupId> <strifactid> log4j </artifactid> <sersion> 1.2.17 </version> </vehyse> <!- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core-> <DepeCtement> <groupId> org.apache.logging.log4j </GroupId> <ratifactid> log4j-core </artifactid> <seriate> 2,5 <версии> </artifactind> <! https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-api-> <depachy> <groupid> org.apache.logging.log4j </GroupId> <ratifactid> log4j-api </artifactid> <serse> 2,5 <версия> </версия> </! https://mvnrepository.com/artifact/org.javassist/javassist-> <depertion> <groupid> org.javassist </GroupId> <strifactid> javassist </artifactid> <sersist> 3.18.1-ga </version> </regy> <!-! https://mvnrepository.com/artifact/commons-logging/commons-logging-> <dehyse> <groupid> commons-logging </GroupId> <strifactid> commons-logging </artifactid> <serview> 1.1.1 </version> </vehybglibclif.combract..com -> <Dependency> <groupId> cglib </GroupId> <artifactid> cglib </artifactid> <serse> 2.2.2 </version> </depervice> <!-https://mvnrepository.com/artifact/asm/asm -> <Depective> <groupid> asm </GroupId> <artifactid> asm </artifactid> <sersion> 3.3.1 </version> </depertive> </dependencies> </project>
Этого достаточно, я реализовал поиск и дополнение здесь, и другие вещи изучаются.
Выше приведено соединение Intellij Mybatis с базой данных MySQL, введенной редактором. Я надеюсь, что это будет полезно для всех. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит всем вовремя. Большое спасибо за вашу поддержку сайту wulin.com!