Javaweb mybatis接口開(kāi)發(fā)實(shí)現(xiàn)過(guò)程詳解
mapper.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"> <!-- 門(mén)店表的映射文件 namespace值為對(duì)應(yīng)接口的全路徑 --> <mapper namespace="com.tedu.dao.DoorMapper"> <!-- 1.查詢(xún)所有門(mén)店信息,id值為對(duì)應(yīng)接口中方法的名字 resultType指定將查詢(xún)的結(jié)果封裝到哪個(gè)pojo對(duì)象中 --> <select id="findAll" resultType="com.tedu.pojo.Door"> select * from tb_door </select> </mapper>
mapper的接口文件(接口由我們自己聲明,由Spring-mybatis提供子類(lèi)實(shí)現(xiàn)類(lèi))
package com.tedu.dao; import java.util.List; import com.tedu.pojo.Door; /** * DoorMapper接口 * 聲明增刪改查方法,對(duì)門(mén)店信息進(jìn)行操作 */ public interface DoorMapper { /** *接口由我們開(kāi)發(fā)人員負(fù)責(zé)提供,但接口的實(shí)現(xiàn)類(lèi)(子類(lèi))由框架負(fù)責(zé)提供 *如果不整合mybatis和spring框架,接口的子類(lèi)實(shí)例也是由mybatis負(fù)責(zé)創(chuàng)建 * 如果整合了mybatis和spring框架,接口的子類(lèi)實(shí)例將會(huì)由spring容器負(fù)責(zé)創(chuàng)建 */ //方法名必須肯mapper文件中的id值一致 public List<Door> findAll(); }
測(cè)試類(lèi)中調(diào)用findAll方法
package com.tedu; 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 org.apache.jasper.tagplugins.jstl.core.ForEach; import org.junit.Test; import com.tedu.dao.DoorMapper; import com.tedu.pojo.Door; /** * mybatis的入門(mén)案例: 查詢(xún)yonghedb.emp表中的所有員工信息 */ public class TestMybatis01 { /* 練習(xí)1: 查詢(xún)emp中的所有員工信息 */ @Test public void testFindAll01() throws Exception { //1.讀取mybatis核心配置文件(mybatis-config.xml),Resources是mybatis提供的工具類(lèi) InputStream in = Resources.getResourceAsStream("mybatis/mybatis-config.xml"); //2.通過(guò)配置信息獲取SqlSession工廠(chǎng)對(duì)象 SqlSessionFactory fac = new SqlSessionFactoryBuilder().build( in ); //3.獲取SQLSession對(duì)象(打開(kāi)與數(shù)據(jù)庫(kù)的連接) SqlSession session = fac.openSession(); //4.獲取Doormapper子類(lèi)實(shí)例 DoorMapper doormapper = session.getMapper(DoorMapper.class); List<Door> lis = doormapper.findAll(); //5.輸出結(jié)果 for (Door door : lis) { System.out.println(door); } } }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Java爬蟲(chóng)實(shí)現(xiàn)Jsoup利用dom方法遍歷Document對(duì)象
本文主要介紹了Java爬蟲(chóng)實(shí)現(xiàn)Jsoup利用dom方法遍歷Document對(duì)象,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05IDEA 2020.1打開(kāi)時(shí)閃退的問(wèn)題及解決方法(完美解決方法)
這篇文章主要介紹了IDEA 2020.1打開(kāi)時(shí)閃退問(wèn)題及解決方法,本文給大家分享我的處理方案,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04java中Map如何根據(jù)key的大小進(jìn)行排序詳解
這篇文章主要給大家介紹了關(guān)于java中Map如何根據(jù)key的大小進(jìn)行排序的相關(guān)資料,有時(shí)候我們業(yè)務(wù)上需要對(duì)map里面的值按照key的大小來(lái)進(jìn)行排序的時(shí)候我們就可以利用如下方法來(lái)進(jìn)行排序了,需要的朋友可以參考下2023-09-09Java日常練習(xí)題,每天進(jìn)步一點(diǎn)點(diǎn)(21)
下面小編就為大家?guī)?lái)一篇Java基礎(chǔ)的幾道練習(xí)題(分享)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧,希望可以幫到你2021-07-07java實(shí)現(xiàn)簡(jiǎn)單斗地主(看牌排序)
這篇文章主要介紹了java實(shí)現(xiàn)簡(jiǎn)單斗地主,看牌進(jìn)行排序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2010-11-11IntelliJ IDEA安裝插件阿里巴巴Java開(kāi)發(fā)手冊(cè)(Alibaba Java Coding Guidelines
這篇文章主要介紹了IntelliJ IDEA安裝插件阿里巴巴Java開(kāi)發(fā)手冊(cè)(Alibaba Java Coding Guidelines),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05springboot3請(qǐng)求參數(shù)種類(lèi)及接口測(cè)試案例小結(jié)
這篇文章主要介紹了springboot3請(qǐng)求參數(shù)種類(lèi)及接口測(cè)試案例小結(jié),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2023-10-10Java高效實(shí)現(xiàn)電商產(chǎn)品排序?qū)崙?zhàn)
這篇文章主要為大家介紹了Java高效實(shí)現(xiàn)電商產(chǎn)品排序?qū)崙?zhàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11微信公眾號(hào)開(kāi)發(fā)之設(shè)置自定義菜單實(shí)例代碼【java版】
這篇文章主要介紹了微信公眾號(hào)開(kāi)發(fā)之設(shè)置自定義菜單實(shí)例代碼,本實(shí)例是為了實(shí)現(xiàn)在管理后臺(tái)實(shí)現(xiàn)微信菜單的添加刪除管理。需要的朋友可以參考下2018-06-06