国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

IDEA開發(fā)實現(xiàn)Maven+Servlet+Mybatis實現(xiàn)CRUD管理系統(tǒng)-Mapper代理開發(fā)

這篇具有很好參考價值的文章主要介紹了IDEA開發(fā)實現(xiàn)Maven+Servlet+Mybatis實現(xiàn)CRUD管理系統(tǒng)-Mapper代理開發(fā)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

Mapper代理開發(fā)概述

之前我們寫的代碼是基本使用方式,它也存在硬編碼的問題,如下:
IDEA開發(fā)實現(xiàn)Maven+Servlet+Mybatis實現(xiàn)CRUD管理系統(tǒng)-Mapper代理開發(fā)
這里調(diào)用 selectList() 方法傳遞的參數(shù)是映射配置文件中的 namespace.id值。這樣寫也不便于后期的維護。如果使用 Mapper 代理方式(如下圖)則不存在硬編碼問題。
IDEA開發(fā)實現(xiàn)Maven+Servlet+Mybatis實現(xiàn)CRUD管理系統(tǒng)-Mapper代理開發(fā)
通過上面的描述可以看出 Mapper 代理方式的目的:
● 解決原生方式中的硬編碼
● 簡化后期執(zhí)行SQL

Mybatis 官網(wǎng)也是推薦使用 Mapper 代理的方式。下圖是截止官網(wǎng)的圖片
IDEA開發(fā)實現(xiàn)Maven+Servlet+Mybatis實現(xiàn)CRUD管理系統(tǒng)-Mapper代理開發(fā)
使用Mapper代理要求
使用Mapper代理方式,必須滿足以下要求:
● 定義與SQL映射文件同名的Mapper接口,并且將Mapper接口和SQL映射文件放置在同一目錄下。如下圖:
IDEA開發(fā)實現(xiàn)Maven+Servlet+Mybatis實現(xiàn)CRUD管理系統(tǒng)-Mapper代理開發(fā)
案例代碼實現(xiàn)

public interface UserMapper {
    List<User> selectAll();
    User selectById(int id);
}

● 在 com.ruanjian.mapper 包下創(chuàng)建 UserMapper接口,代碼如下:
在 resources 下創(chuàng)建 com/ruanjian/mapper 目錄,并在該目錄下創(chuàng)建 UserMapper.xml 映射配置文件

<!--
    namespace:名稱空間。必須是對應(yīng)接口的全限定名
-->
<mapper namespace="com.ruanjian.mapper.UserMapper">
    <select id="selectAll" resultType="com.ruanjian.pojo.User">
        select *
        from tb_user;
    </select>
</mapper>

設(shè)置SQL映射文件的namespace屬性為Mapper接口全限定名
IDEA開發(fā)實現(xiàn)Maven+Servlet+Mybatis實現(xiàn)CRUD管理系統(tǒng)-Mapper代理開發(fā)

創(chuàng)建測試類

在 com.ruanjian 包下創(chuàng)建 MybatisDemo2 測試類,代碼如下:

/**
 * Mybatis 代理開發(fā)
 */
public class MyBatisDemo2 {

    public static void main(String[] args) throws IOException {

        //1. 加載mybatis的核心配置文件,獲取 SqlSessionFactory
        String resource = "mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

        //2. 獲取SqlSession對象,用它來執(zhí)行sql
        SqlSession sqlSession = sqlSessionFactory.openSession();
        //3. 執(zhí)行sql
        //3.1 獲取UserMapper接口的代理對象
        UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
        List<User> users = userMapper.selectAll();

        System.out.println(users);
        //4. 釋放資源
        sqlSession.close();
    }
}

注意:
如果Mapper接口名稱和SQL映射文件名稱相同,并在同一目錄下,則可以使用包掃描的方式簡化SQL映射文件的加載。也就是將核心配置文件的加載映射配置文件的配置修改為

<mappers>
    <!--加載sql映射文件-->
    <!-- <mapper resource="com/ruanjian/mapper/UserMapper.xml"/>-->
    <!--Mapper代理方式-->
    <package name="com.ruanjian.mapper"/>
</mappers>

類型別名

在映射配置文件中的 resultType 屬性需要配置數(shù)據(jù)封裝的類型(類的全限定名)。而每次這樣寫是特別麻煩的,Mybatis 提供了 類型別名(typeAliases) 可以簡化這部分的書寫。

首先需要現(xiàn)在核心配置文件中配置類型別名,也就意味著給pojo包下所有的類起了別名(別名就是類名),不區(qū)分大小寫。內(nèi)容如下:

<typeAliases>
    <!--name屬性的值是實體類所在包-->
    <package name="com.ruanjian.pojo"/> 
</typeAliases>

通過上述的配置,我們就可以簡化映射配置文件中 resultType 屬性值的編寫

<mapper namespace="com.ruanjian.mapper.UserMapper">
    <select id="selectAll" resultType="user">
        select * from tb_user;
    </select>
</mapper>

運行結(jié)果:

IDEA開發(fā)實現(xiàn)Maven+Servlet+Mybatis實現(xiàn)CRUD管理系統(tǒng)-Mapper代理開發(fā)
若朋友剛開始學習,這里博主整理了已經(jīng)做好的,可直接導入Maven項目,幫助你分析問題哦!

藍奏云網(wǎng)盤-導入此項目文章來源地址http://www.zghlxwxcb.cn/news/detail-448602.html

到了這里,關(guān)于IDEA開發(fā)實現(xiàn)Maven+Servlet+Mybatis實現(xiàn)CRUD管理系統(tǒng)-Mapper代理開發(fā)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 一個簡單的前后端交互——登錄注冊頁面(升級版)idea代碼篇(2:Maven:Javaweb項目)使用MyBatis:Mapper,servlet+Tomcat

    一個簡單的前后端交互——登錄注冊頁面(升級版)idea代碼篇(2:Maven:Javaweb項目)使用MyBatis:Mapper,servlet+Tomcat

    前言:本篇前后端交互實現(xiàn)代碼 。詳細項目搭建見上篇 先貼一張登錄界面和包結(jié)構(gòu): ? 1.Mapper 2.pojo 3.util 4.web 5.Login.html 6.CSS 我的企業(yè)版過期了,不能演示跳轉(zhuǎn)頁面了。但測過沒問題。

    2024年02月11日
    瀏覽(26)
  • JavaWeb小項目——【源碼】使用Vue+axios+Servlet+Lombok+JDBC+MySQL技術(shù)棧實現(xiàn)云筆記管理系統(tǒng)案例的開發(fā)

    JavaWeb小項目——【源碼】使用Vue+axios+Servlet+Lombok+JDBC+MySQL技術(shù)棧實現(xiàn)云筆記管理系統(tǒng)案例的開發(fā)

    使用Vue+axios+Servlet+Lombok+JDBC+MySQL技術(shù)棧實現(xiàn)云筆記管理系統(tǒng)案例的開發(fā) (一)題目要求 使用Vue+axios+Servlet+Lombok+JDBC+MySQL技術(shù)棧實現(xiàn)云筆記管理系統(tǒng)案例的開發(fā) (二)數(shù)據(jù)庫設(shè)計(10分) 創(chuàng)建數(shù)據(jù)庫woniu_note (1)用戶表:t_user,必要字段包含:用戶名(username)、密碼(passwd)

    2024年02月09日
    瀏覽(23)
  • MyBatis的基本入門及Idea搭建MyBatis壞境且如何一步驟實現(xiàn)增刪改查(CRUD)---詳細介紹

    MyBatis的基本入門及Idea搭建MyBatis壞境且如何一步驟實現(xiàn)增刪改查(CRUD)---詳細介紹

    ? ?首先是一個 開源的Java持久化框架 ,它可以幫助開發(fā)人員簡化數(shù)據(jù)庫訪問的過程并提供了一種將SQL語句與Java代碼進行解耦的方式,使得開發(fā)人員可以更加靈活地進行數(shù)據(jù)庫操作。 MyBatis不僅是開源框架,也給我們帶來了許多好處的點,如下: 1.1.1簡化數(shù)據(jù)庫操作 ? ?MyBa

    2024年02月12日
    瀏覽(23)
  • IDEA+SpringBoot+mybatis+SSM+layui+Mysql學生學籍管理系統(tǒng)

    IDEA+SpringBoot+mybatis+SSM+layui+Mysql學生學籍管理系統(tǒng)

    本系統(tǒng)實現(xiàn)了學生學籍管理系統(tǒng),管理端實現(xiàn)了管理員登錄、 專業(yè)管理、 班級管理、 學生管理、 老師管理、 公告管理、 課程管理、 開課管理、 用戶管理,還有老師端和學生端 JDK版本:1.8 Mysql:5.7 賬號:admin 密碼:123456 點擊以下鏈接獲取源碼。 IDEA+SpringBoot+mybatis+SSM+layui+Mysq

    2024年02月12日
    瀏覽(96)
  • IDEA+SpringBoot+mybatis+bootstrap+jquery+Mysql車險理賠管理系統(tǒng)

    IDEA+SpringBoot+mybatis+bootstrap+jquery+Mysql車險理賠管理系統(tǒng)

    本系統(tǒng)實現(xiàn)了車險理賠管理系統(tǒng),管理端實現(xiàn)了管理員登錄、編輯個人信息、用戶管理、添加用戶、申請理賠管理、賠償金發(fā)放管理,勘察員端實現(xiàn)了待調(diào)查事故保單、已調(diào)查記錄、現(xiàn)場勘察管理、勘察記錄,用戶端實現(xiàn)了我的保險管理,我的理賠管理 JDK版本:1.8 Mysql:5.7 賬號

    2024年02月13日
    瀏覽(23)
  • IDEA+SpringBoot + Mybatis + Shiro+Bootstrap+Mysql資產(chǎn)設(shè)備管理系統(tǒng)

    IDEA+SpringBoot + Mybatis + Shiro+Bootstrap+Mysql資產(chǎn)設(shè)備管理系統(tǒng)

    本系統(tǒng)實現(xiàn)了資產(chǎn)設(shè)備管理系統(tǒng),管理端實現(xiàn)了管理員登錄、用戶新增、用戶設(shè)置、崗位管理、審批節(jié)點、人員查詢、組織設(shè)置、人員調(diào)整、角色設(shè)置、角色模塊映射、模塊設(shè)置、應(yīng)用模塊、光纖交換機、服務(wù)器、網(wǎng)絡(luò)設(shè)備、存儲設(shè)備、安全設(shè)備、機房設(shè)備、網(wǎng)點設(shè)備、資產(chǎn)

    2024年02月16日
    瀏覽(13)
  • IDEA+Spring Boot + MyBatis + Layui+Mysql垃圾回收管理系統(tǒng)源碼

    IDEA+Spring Boot + MyBatis + Layui+Mysql垃圾回收管理系統(tǒng)源碼

    本系統(tǒng)實現(xiàn)了垃圾回收管理系統(tǒng),管理端實現(xiàn)了管理員登錄、垃圾回收管理、添加需要回收的垃圾、垃圾去向管理、申請需要打包運出的垃圾、系統(tǒng)公告管理、個人信息管理、修改密碼 JDK版本:1.8 Mysql:5.7 賬號:好貴啊 密碼:123456 點擊以下鏈接獲取源碼。 IDEA+Spring Boot + MyBati

    2024年02月13日
    瀏覽(19)
  • IDEA+Spring Boot+MyBatis+shiro+Layui+Mysql智能平臺管理系統(tǒng)

    IDEA+Spring Boot+MyBatis+shiro+Layui+Mysql智能平臺管理系統(tǒng)

    本系統(tǒng)實現(xiàn)了智能平臺管理系統(tǒng),pc端用戶可以登錄,注冊,發(fā)帖,留言,提交問卷,展示公告,查看文章,管理端實現(xiàn)了管理員登錄,管理員管理, 管理員管理,用戶管理 ,問卷管理,問卷結(jié)果管理 ,帖子分類管理 ,數(shù)據(jù)分析統(tǒng)計 ,公告管理,帖子管理 ,友情鏈接管理

    2024年02月12日
    瀏覽(23)
  • IDEA+SpringBoot +ssm+ Mybatis+easyui+Mysql求職招聘管理系統(tǒng)網(wǎng)站

    IDEA+SpringBoot +ssm+ Mybatis+easyui+Mysql求職招聘管理系統(tǒng)網(wǎng)站

    本系統(tǒng)實現(xiàn)了求職招聘管理系統(tǒng)網(wǎng)站,前臺實現(xiàn)了登錄、注冊、首頁、公司、關(guān)于我們、我的簡歷、我投遞的簡歷、修改密碼,管理端實現(xiàn)了管理員登錄、我的信息、用戶信息、職位類別、職位列表、公司列表、日志列表 JDK版本:1.8 Mysql:8.0 登錄用戶名密碼:拉勾網(wǎng)管理員

    2024年02月16日
    瀏覽(24)
  • 【JAVA】Eclipse+MYSQL數(shù)據(jù)庫+JSP+基礎(chǔ)Servlet開發(fā)JavaWeb學生信息管理系統(tǒng)

    【JAVA】Eclipse+MYSQL數(shù)據(jù)庫+JSP+基礎(chǔ)Servlet開發(fā)JavaWeb學生信息管理系統(tǒng)

    目錄 前言 一、搭建環(huán)境 ?二、功能實現(xiàn)、 1、? ?登陸界面 注冊按鈕 2、學生信息管理系統(tǒng)主界面 3、dao包 ?4、用戶的信息展示,添加,刪除,修改功能(只展示添加代碼) 5、學生的信息展示,添加,刪除,修改功能(只展示添加代碼) 6、成績的信息展示,添加,刪除,修

    2024年02月05日
    瀏覽(30)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包