MyBatis
光山網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。成都創(chuàng)新互聯(lián)于2013年開(kāi)始到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專(zhuān)注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)。
MyBatis 是一款優(yōu)秀的持久層框架,它支持定制化 SQL、存儲(chǔ)過(guò)程以及高級(jí)映射。MyBatis 避免了幾乎所有的 JDBC 代碼和手動(dòng)設(shè)置參數(shù)以及獲取結(jié)果集。MyBatis 可以使用簡(jiǎn)單的 XML 或注解來(lái)配置和映射原生信息,將接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java對(duì)象)映射成數(shù)據(jù)庫(kù)中的記錄。
搭建MyBatis
第一步:先創(chuàng)建一個(gè)項(xiàng)目,平常的Java project就行,項(xiàng)目結(jié)構(gòu)先看看
第二步:導(dǎo)入相關(guān)的jar包(可以上官網(wǎng)下,開(kāi)源的):
•mybatis-3.4.4.jar MyBatis的jar包
•MySQL-connector-java-5.1.13-bin.jar Mysql的jar包
第三步:編寫(xiě)一個(gè)配置文件。是一個(gè)XML文件mybatis-config.xml,位置放在src下
<?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> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/mobile"/> <property name="username" value="zhou"/> <property name="password" value="123456"/> </dataSource> </environment> </environments> <mappers> <mapper resource="com/entity/UserMapper.xml"/> </mappers> </configuration>
有關(guān)MyBatis中xml文件的屬性說(shuō)明:
<!-- 配置文件的根元素 --> <configuration> <!-- 屬性:定義配置外在化 --> <properties></properties> <!-- 設(shè)置:定義mybatis的一些全局性設(shè)置 --> <settings> <!-- 具體的參數(shù)名和參數(shù)值 --> <setting name="" value=""/> </settings> <!-- 類(lèi)型名稱(chēng):為一些類(lèi)定義別名 --> <typeAliases></typeAliases> <!-- 類(lèi)型處理器:定義Java類(lèi)型與數(shù)據(jù)庫(kù)中的數(shù)據(jù)類(lèi)型之間的轉(zhuǎn)換關(guān)系 --> <typeHandlers></typeHandlers> <!-- 對(duì)象工廠(chǎng) --> <objectFactory type=""></objectFactory> <!-- 插件:mybatis的插件,插件可以修改mybatis的內(nèi)部運(yùn)行規(guī)則 --> <plugins> <plugin interceptor=""></plugin> </plugins> <!-- 環(huán)境:配置mybatis的環(huán)境 --> <environments default=""> <!-- 環(huán)境變量:可以配置多個(gè)環(huán)境變量,比如使用多數(shù)據(jù)源時(shí),就需要配置多個(gè)環(huán)境變量 --> <environment id=""> <!-- 事務(wù)管理器 --> <transactionManager type=""></transactionManager> <!-- 數(shù)據(jù)源 --> <dataSource type=""></dataSource> </environment> </environments> <!-- 數(shù)據(jù)庫(kù)廠(chǎng)商標(biāo)識(shí) --> <databaseIdProvider type=""></databaseIdProvider> <!-- 映射器:指定映射文件或者映射類(lèi) --> <mappers></mappers> </configuration>
第四步:創(chuàng)建實(shí)體類(lèi),這個(gè)不用多說(shuō)了,正常創(chuàng)建就ok
第五步:創(chuàng)建實(shí)體類(lèi)的mapper映射xml文件,位置跟實(shí)體類(lèi)同級(jí),是對(duì)實(shí)體類(lèi)的一些操作,在我認(rèn)為就是配置了sql語(yǔ)句的趕腳,再去方法里調(diào)一下
<?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可以不加xml后綴 --> <mapper namespace="com.entity.UserMapper"> <!-- 單個(gè)對(duì)象查詢(xún) --> <select id="selectUser" parameterType="int" resultType="com.entity.User"> select * from user where id = #{id} </select> <!--查詢(xún)列表 --> <resultMap id="userList" type="com.entity.User"> <result property="id" column="id" /> <result property="username" column="username"/> <result property="password" column="password"/> </resultMap> <select id="selectAll" resultMap="userList"> select * from user </select> <!--插入數(shù)據(jù) --> <insert id="insert" > insert into User (username,password) values(#{username},#{password}) </insert> <!--更新數(shù)據(jù) --> <update id="update"> update User set username = #{username},password = #{password} where id = #{id} </update> <!--刪除數(shù)據(jù) --> <delete id="delete"> delete from User where id = #{id} </delete> </mapper>
實(shí)體類(lèi)映射的屬性說(shuō)明:先看前幾個(gè)后面的遇到再說(shuō),百度就可以
第六步:編寫(xiě)一下測(cè)試類(lèi),測(cè)試一下你搭建的是否有用
package com.test; import java.io.IOException; import java.io.InputStream; import java.util.List; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import com.entity.User; /** * * @author 堅(jiān)持到你GL * */ public class Test { private static SqlSession session=null; public static SqlSession mySession() { //你的MyBatis的配置文件地址 String resource = "mybatis-config.xml"; InputStream inputStream=null; try { //IO解析xml文件 inputStream = Resources.getResourceAsStream(resource); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } //創(chuàng)建一個(gè)SqlSessionFactoryBuilder對(duì)象,獲得SqlSessionFactory 的實(shí)例 SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); //開(kāi)啟SqlSession session=sqlSessionFactory.openSession(); return session; } private static void select(){ //selectUser是實(shí)體類(lèi)映射文件的中設(shè)置的id User user=mySession().selectOne("selectUser",2); System.out.println(user); } private static void selectAll() { List<User> list=mySession().selectList("selectAll"); for (User user : list) { System.out.println(user); } } private static void insert() { User insertuser=new User("zhou","123456"); mySession().insert("insert",insertuser); session.commit(); } private static void update() { User updateuser =new User(9,"admin","admin"); mySession().update("update", updateuser); session.commit(); } private static void delect() { mySession().delete("delete", 10); session.commit(); } public static void main(String[] args) { selectAll(); } }
小項(xiàng)目微服務(wù)簡(jiǎn)單的開(kāi)發(fā),運(yùn)用MyBatis是非常不錯(cuò)的選擇
以上這篇基于MyBatis的簡(jiǎn)單使用(推薦)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持創(chuàng)新互聯(lián)。
文章題目:基于MyBatis的簡(jiǎn)單使用(推薦)
本文路徑:http://aaarwkj.com/article0/gjdiio.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、做網(wǎng)站、定制開(kāi)發(fā)、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、定制網(wǎng)站、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)