Saya belum belajar hal -hal baru untuk sementara waktu. Setelah 1 Oktober, saya merasa bahwa semakin awal saya melakukan sesuatu, semakin baik. Saya tidak akan mengatakan banyak omong kosong. Mari kita bicara tentang menggunakan mybatis untuk terhubung ke database MySQL. Pada artikel sebelumnya, saya menulis tes JDBC, dan tabel database saya masih sama. Karena sebagian besar informasi yang saya cari online adalah gerhana, karena saya terbiasa dengan Ides, saya datang ke sini dengan banyak masalah.
Lihatlah struktur teknik
Izinkan saya berbicara tentang kode java terlebih dahulu. DAO adalah antarmuka kueri, model adalah XML dari Ben dan pernyataan kueri yang sesuai. Saya merasa ini agak buruk. User.xml lebih baik di DAO. Anda akan tahu setelah Anda memahaminya. Karena saya seorang pemula, saya tidak terlalu memahami banyak hal. Definisi paket yang masuk akal akan diberikan nanti.
Saya menggunakan tes untuk itu
Mari kita bicara tentang sumber daya, konfigurasi adalah file konfigurasi, log4j adalah pencetakan log, dan yang lain tidak dapat digunakan untuk saat ini.
Mari kita lihat kode, saya akan memberikannya kepada Anda dalam urutan membuat file.
Pertama, perlu ada objek, yang dibangun sesuai dengan database
user.java
Paket com.fanyafeng.model; import java.util.date;/*** penulis: fanyafeng* data: 16/10/11 14: 56* Email: [email protected]*/public class user {private int id string pribadi; id;} public String getUserName () {return nama pengguna;} public void setusername (string username) {this.username = username;} tanggal publik getBirthday () {return ulang tahun;} public void setBirthday (tanggal ulang tahun) {this.birthday = ulang tahun;} public getsex () {this.birthday = ulang tahun;} public getsex () {this.birthday = ulang tahun;} public getsex () {this.birthday = ulang tahun;}} public getsex () {this.birthday = ulang tahun;}} public getsex () {this.birthday = ulang tahun;}} public getsex () {this {this.sex = sex;} public string getAddress () {return alamat;} public void setaddress (alamat string) {this.address = address;}@overridepublic string toString () {return "User {" + "id =" + id + ", username = '" + nama pengguna +'/'' ', " +" + " +", {" +" + " +" + " +" + " +" + " +" + " +" + {" +" + " +" + ", alamat = '" + alamat +'/'' + '}';}}
iuserdao.java
package com.fanyafeng.dao;import com.fanyafeng.model.User;import java.util.List;/*** Author: fanyafeng* Data: 16/10/11 14:55* Email: [email protected]*/public interface IUserDao {public List<User> queryUserByName(String name);public User selectUserById(int id);public void 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"> <!-hasil resulttd.mybatis-3-mapper.dtd "> <! namespace = "com.fanyafeng.dao.iuserdao"> <pilih id = "selectUserById" parameTerType = "int" resultType = "com.fanyafeng.model.user"> pilih * dari pengguna di mana id = #{id} </select> <!-'%$ {value} berarti yang berarti bahwa kandang itu sang itu sq. injection--><select id="queryUserByName" parameterType="String" resultType="com.fanyafeng.model.User">SELECT * FROM user WHERE username LIKE #{name}</select><!--INSERT INTO USER (id,username,sex,address) VALUE (null,"Chen Xiaoran","female","college classmate")--><insert id="add" ParameterType = "com.fanyafeng.model.user"> masukkan ke dalam pengguna (id, nama pengguna, ulang tahun, seks, alamat) nilai (#{id},#{username},#{ulang tahun},#{sex},#{address}) </insert> </mapper>Usertest.java
Paket com.fanyafeng.test; impor com.fanyafeng.model.user; impor org.apache.ibatis.io.Resources; impor org.apache.ibatis.Session.sqlsession; import org.apache.ibatis.sqlSessionFactory; impor org.apache.ibatis.Sesies.SQLSESSIONCESSIFORTORY; impor org.apache.apache.iBatis.Sesesies org.apache.ibatis.Session.SQLSessionFactoryBuilder; import java.io.ioException; impor java.io.reader; SQLSessionFactory static SQLSessionFactory; pembaca pembaca statis pribadi; static {try {reader = resources.getResourceasReader ("configuration.xml"); sqlSessionFactory = oDrace}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} static void main (string [] args) {sqlsession sqlsession = sqlSessionFactory.opensession (); coba {// user user = (user) sqlSession.selecTone ("com.fanyafeng.dao.userdao.selectuserid", 2);/// Systems.oSex (Systemsx. user.getBirthday ()); // System.out.println (user.getId () + user.getUserName ()); //// Daftar <User> userList = sqlSession.selectlist ("com.fanyafeng.dao.iuserdao.queryusername", "%li ning%li ning%); untuk (int i = 0; i <userlist.size (); i ++) {System.out.println (userlist.get (i) .toString ());} user user = User baru (); user.setid (100); user.setbirthday (tanggal baru ()); user.setusername ("Li ning (" li ning "; jongkok "); int isadd = sqlsession.insert (" com.fanyafeng.dao.iuserdao.add ", pengguna); sqlsession.commit (); // Jangan lupa} akhirnya {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"> <oBperurasi/configuration/mybatis-3-config.dtd "> <papled/configuration/mybatis- 3-config.dtd"> <papled> <! here--><!--<typeAlias alias="User" type="com.fanyafeng.model.User"/>--><!--</typeAliases>--><!--</typeAliases>--><!-- Environments configuration after integration with spring will be abolished --><environments default="development"><environment id="development"><!-- Use jdbc transaction management --><transactionManager type = "jdbc"/> <!-Pool koneksi database-> <datasource type = "pooled"> <properti name = "driver" value = "com.mysql.jdbc.driver"/> <nama properti = "URL" value = "jdbc: mysql: // localhost: 3306/myl" "jdbc: mysql: // localhost: 330/mylbat" characer- karakter 8 value = "root"/> <name properti = "kata sandi" value = "" // </dateSource> </urveening> </lingkungan> <mappers> <mapper resource = "com/fanyafeng/model/user.xml" // </pappers> </donfiguration>
Untuk log4j, tambahkan sesuai dengan hobi Anda. Komentar dalam kode ditulis secara detail, jadi saya tidak akan membahas detailnya. Ada tempat di sini yang membuat saya merasa sangat frustrasi. Saya meminta seorang master yang hebat untuk mengetahui apa yang terjadi. Ada direktori target di tangkapan layar. Ini adalah lokasi penyimpanan untuk file yang dikompilasi. Namun, pertanyaannya adalah, di mana file java akan disusun dan ditempatkan. Namun, file XML non-sumber daya tidak dimasukkan, dan pengecualian dibuang. Saya memeriksa banyak informasi dan menjawab pertanyaan itu. Lalu saya memecahkannya seperti ini dan melihat file pom.xml. Setelah saya mengubahnya, saya menambahkan tag build.
<Project xmlns = "http://maven.apache.org/pom/4.0.0" xmlns: xsi = "http://www.w3.org/2001/xmlschema-instance" xsi: schemalocation = "http:/maven.apache.rompe.rompe.romper http://maven.apache.org/maven-v4_0_0.xsd "> <nodelversion> 4.0.0 </ModelVersion> <GroupId> com.fanyafeng </groupid> < ArtifactId> mybatisdemo </stifactid> <packaging> war </packaging> <version> 1.0-snapshot </version> <name> mybatisdemo Maven WebApp </name> <rurl> http://maven.apache.org </ruRl> <build> <finalname> mybatisdemo </finalname> <urser sumber daya> <Serayat> <serforma> <recrectory> src/mai n/sumber daya </direktori> <certed> <certed> **/*. xml </cert> <certed> **/*. Properti </include> </include> </resource> <serformage> < Direktori> SRC/Main/Java </Directory> <clay> <certed> **/*. xml </cert> </clayt> </sumberce> </sumber daya> </dendor> <dependencies> <dependency> </groupid> </groupid> <Artifactid> Junit </Artifactid> <version> </groupid> <Artifactid> Junit </Artifactid> <version> 3.8.8.8.8.8.8.8.8.8 https://mvnrepository.com/artifact/mysql/mysql-connector-java-> <dependency> <groupid> mysql </groupid> <ArtifactId> mysql-connector-java </arttifactid> <versi> 5.1.38 </Versi> </DEPGENCED> </artifactid> <versi> 5.1.38 </Versi> </Version> </artifactid> </versies> </Versi> </Versi> </Version> </Version> </Versi. https://mvnrepository.com/artifact/org.mybatis/mybatis-> <dependency> <groupid> org.mybatis </groupid> <ArtifactId> mybatis </artifactid> <version> 3.2.8 </version> </dependency> </artifactid> <version> 3.2.8 </versi> </Dependency> <!- https://mvnrepository.com/artifact/org.slf4j/slf4j-log4j12-> <dependency> <groupid> org.slf4j </groupid> <ArTifactid> Slf4j-log4j12 </arttifactid> <Artifactid> SLF4J-LOG4J12 </Artifactid> Versi 1.7.7.7.7.71 </artifactid> </artifactid> </version> </arttifactid> </Version> </arttifactid> </artifactid> https://mvnrepository.com/artifact/org.slf4j/slf4j-api-> <dependency> <Groupid> org.slf4j </groupid> <ArTifactid> Slf4j-API </arttifactid> <version> 1.7.21 </Versi> </Versi> </Versi> </artifactid> <versi> 1.7.21 </Versi> </Versi> </Versi> </Versi> </Versi> </Versi> </Versi> </Versi> </Versi> https://mvnrepository.com/artifact/log4j/log4j-> <dependency> <groupid> log4j </groupid> <ArtifactId> log4j </artifactid> <version> 1.2.17 </version> </dependency> <!- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core-> <dependency> <groupid> org.apache.logging.log4j </groupid> <Artifactid> LOG4J-Core </arttifactid> Versi 2.5 </groupid> <TiFacTID> </artifactid> <TROPID> <TROPICD> </ArtifactId </Artifactid> </Groupid> <TROPACTID> </Artifactid </ArtiFactid> https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-api-> <dependency> <groupid> org.apache.logging.log4j </groupid> <Artifactid> </ampache </Arttifactid> </groupid> <Tifactid> </log4j-api </arttifactid> 2.5 Version> <titifactid> </artifactid> </Artifactid </artifacid> </Artifactid </artifactid> https://mvnrepository.com/artifact/org.javassist/javassist-> <dependency> <groupid> org.javassist </groupid> <ArtifactId> Javassist </arttifactid> <version> 3.18.1-GA </Versi> </Dependency> </artfactid> <version> 3.18.1-GA </Versi> </Dependency> </! https://mvnrepository.com/artifact/commons-logging/commons-logging-> <dependency> <groupid> commons-logging </proupid> <Raintifactid> commons-gogging </artifactid> <version> 1.1.1 </version> </dependency> <!-htcglps:Eposy -> <dependency> <GroupId> CGLIB </GroupId> <ArTifactId> CGLIB </artifactid> <version> 2.2.2 </version> </dependency> <!-https://mvnrepository.com/artifact/asm/asm -> <dependency> <GroupId> ASM </GroupId> <ArTifactId> ASM </StifactId> <Version> 3.3.1 </version> </dependency> </dependencies> </joy Project>
Ini sudah cukup, saya telah menerapkan pencarian dan penambahan di sini, dan hal -hal lain sedang dipelajari.
Di atas adalah koneksi IntelliJ Mybatis ke database MySQL yang diperkenalkan oleh editor. Saya harap ini akan membantu semua orang. Jika Anda memiliki pertanyaan, silakan tinggalkan saya pesan dan editor akan membalas semua orang tepat waktu. Terima kasih banyak atas dukungan Anda ke situs web Wulin.com!