亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

通過自動回復機器人學Mybatis---基礎版

難度中級
時長 4小時30分
學習人數
綜合評分9.73
430人評價 查看評價
9.9 內容實用
9.7 簡潔易懂
9.6 邏輯清晰
  • OGNL表達式

    查看全部
  • 網頁亂碼:在talk.jsp頁面添加這句;<%@ page contentType="text/html; charset=UTF-8" %>

    查看全部
  • jdbc的數據庫連接地址后面加?useUnicode=true&characterEncoding=UTF-8

    Message.xml的select標簽中間select語句最后沒加where 1=1

    正確的sql語句是select ID,COMMAND,DESCRIPTION,CONTENT from MESSAGE where 1=1 and COMMAND=? 。

    查看全部
    0 采集 收起 來源:列表查詢

    2019-08-20

  • jsp介紹

    查看全部
    0 采集 收起 來源:數據展示

    2019-08-19

  • Mybatis 常見問題

    查看全部
    0 采集 收起 來源:常見問題解析

    2019-08-07

  • Mybatis #{} 與 ognl

    建議統一寫法:_parameter

    查看全部
  • Mybatis #{} 與 ${}

    1. #{}: 預編譯的。自動數據類型轉換。防止sql注入,優先使用。

    2. ${}: 直接拼接的。需自行判斷數據類型。使用場景:order by,傳入數據庫對象(如:列名,表明),模糊查詢,分頁等。

    查看全部
  • Mybatis 常用標簽

    查看全部
    0 采集 收起 來源:常用標簽

    2019-08-07

  • Mybatis 中的 OGNL 表達式

    查看全部
  • Mybatis 中的 OGNL 表達式

    查看全部
  • Mybatis 之 SqlSession

    查看全部
  • OGNL表達式

    查看全部
  • 【知識點1】

    <a href="">屬于GET方式請求,參數通過在路徑中傳遞(可以通過js進行提交,并進行提示,如下圖)。

    https://img1.sycdn.imooc.com//5d38ff6b00013c3709690131.jpg

    https://img1.sycdn.imooc.com//5d38ff6c000146bf09150309.jpg

    【知識點2】

    使用<a>標簽提交form表單信息,使用js修改提交的action,如下圖

    https://img1.sycdn.imooc.com//5d39004e0001b9d307610072.jpg

    https://img1.sycdn.imooc.com//5d39004e0001b02e07440153.jpg


    查看全部
  • 知識點1】

    通過Properties類獲取數據信息。

    InputStream is=當前類.class.getClassLoader.getResourceAsStream("Properties文件位置")

    Properties properties=new Properties();

    properties.load(is);

    properties.getProperty("Properties文件的key值");

    【知識點二】

    RequestDispatcher rd=request.getRequestDispatcher();

    該對象的forward(request,response)和include(request,response)的區別?

    這兩個方法都是用來跳轉資源的,但是forward方法執行完,該Servlet后面的response輸出不會被執行,如果跳轉的是另一個Servlet,另一個Servlet里也有response輸出,則這個輸出會執行,這里的不會執行只是執行forward方法的Servlet后面的response輸出不會執行。如果換成include方法,則這兩個Servlet里response輸出都會被執行。如果在跳轉的Servlet里把response.getWriter獲得的對象close掉,則原來的Servlet也不會進行輸出。

    servlet A
    RequestDispatcher disp = request.getRequestDispatcher("B");
    disp.forward(request, response);
    System.out.println("servlet A completed");
    PrintWriter pw = response.getWriter();
    pw.println("servlet A");
    servlet B
    PrintWriter?pw?= response.getWriter();
    pw.println("servlet B");
    輸出結果:
    控制臺:servlet A completed

    頁面:servlet B
    如果將forward換成include的話,則結果為:
    控制臺:servlet A completed
    頁面:servlet B servlet A
    PS:如果在servlet B里把pw給close掉了的話,那servlet A 這里就無法輸出了,則結果就和第一個一樣。

    【知識點三】

    JSTL和EL

    JSTL——

    for循環標簽:<c:forEach items="" ?var="" ?varStatus="">

    items:值為傳過來的集合,可以通過EL表達式或者JSP表達式獲取(${list}或者<%=request.get...%>)

    var:代表集合中的每一項的名稱,如果集合中是基本類型,則可以通過${變量名}取值,如果是自定義的類,則可以通過${變量名.屬性名}。

    varStatus:相當于一個變量,它的初始值是0,獲取它的值方式,名稱.index,通常用它和<if>標簽實現隔行變色功能。

    if條件標簽:<if test="表達式"></if>它可以嵌在標簽里面。

    EL——通過${}獲取傳到頁面的值。

    https://img1.sycdn.imooc.com//5d37c2ff0001c87611180414.jpg


    查看全部
    0 采集 收起 來源:黎明前的黑暗

    2019-07-24

  • Mybatis總結——常見問題解析

    https://img1.sycdn.imooc.com//5d36ec200001946910140594.jpg

    【1】獲取自增主鍵值

    案例描述:一對多新增功能,整個頁面一次性提交,后端分別保存主表數據與子表數據,設計表的主鍵還是自動遞增的,否則就不在討論范圍內了,問題的根源是保存主表數據后,需要知道插入這條數據的自增主鍵值,然后再保存子表數據,因為這個主鍵值作為子表的外鍵。

    Mybatis執行insert語句后,獲取自增主鍵值:

    以command表為例,因為command表是一對多關系中的主表,首先插入主表的數據,正常情況下如圖1,但是想要獲取插入的自增主鍵值需要使用<insert>標簽的useGeneratedKeys屬性,把它設置為true,作用是主鍵采用自動生成,而不是自己指定的主鍵值。通過<insert>的keyProperty屬性Mybatis會獲取自動生成的主鍵,該屬性值為填充到映射關系中的哪個屬性中,所以為屬性名(這樣在Command對象傳入XML中id是沒有值的,當SqlSession調用方法執行完sql以后,這個id屬性就有值了并且這個值為新增的主鍵值)。

    https://img1.sycdn.imooc.com//5d36ee5a0001582a10800144.jpg


    【2】找不到namespace.id的異常效果

    如果不在Mybatis核心配置文件中引入sql的XML文件,或者namespace.id寫錯都會報該異常,如下圖

    https://img1.sycdn.imooc.com//5d36efe00001f0d310850271.jpg

    【3】排查SQL語法錯誤

    這里可以通過log4j輸出的sql語句排查錯誤(可以把sql語句復制到Navicat中進行驗證)。

    https://img1.sycdn.imooc.com//5d36f09a0001bf6910810233.jpg

    【4】不要過度使用${}

    比如做表頭排序時會在order by后拼接${},它就像java中用變量拼接字符串一樣,有些會習慣寫jdbc的代碼,直接在java代碼里寫select...,把它寫好后傳值給XML,然后XML中直接使用${傳進來sql語句字符串},這樣的編寫風格會出現維護困難,因為這樣一部分sql語句在java代碼中,一部分語句在XML中。Mybatis提供了把sql語句寫在java代碼中,這種編寫方式稱作注解sql,但是這種編寫方式很麻煩。

    https://img1.sycdn.imooc.com//5d36f2810001480f10410438.jpg

    【5】亂碼問題

    關注文件本身的編碼。

    JSP頁面設置的編碼。

    Servlet接受頁面傳值時,轉換的編碼。

    GET請求提交中文參數時,Tomcat里也要進行配置編碼。

    除此之外,與數據庫進行交互時 ,出現亂碼時,應注意以下幾處:

    Mybatis核心配置文件里導入數據庫的url中指定編碼方式。

    https://img1.sycdn.imooc.com//5d36f3d40001f1e107930160.jpghttps://img1.sycdn.imooc.com//5d36f3e30001f1e107930160.jpg

    Mysql安裝時,字符集設置應統一。

    https://img1.sycdn.imooc.com//5d36f3ef0001695406660356.jpg





    建立數據庫時的編碼和建表時的編碼。


    https://img1.sycdn.imooc.com//5d36f4400001614e03920295.jpg

    https://img1.sycdn.imooc.com//5d36f44000018c1d04260368.jpg



    查看全部
    0 采集 收起 來源:常見問題解析

    2019-07-26

舉報

0/150
提交
取消
課程須知
各位小伙伴們需要有一定Java Web開發基礎,至少需要掌握以下內容: 1、JSP、Servlet、JSTL、EL 2、JS/JQUERY 3、JDBC 如果你還是新人,建議先移步網站相關課程,在理解并掌握相關知識之后再回來進修
老師告訴你能學到什么?
1、 Mybatis 的下載與配置 2、 Mybatis 的基本功能應用 3、 融合 Mybatis 的一個完整小案例的實戰 4、 Mybatis 的特征總結 5、 Mybatis 常見 QA

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!