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

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

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

難度中級
時長 4小時30分
學習人數
綜合評分9.73
430人評價 查看評價
9.9 內容實用
9.7 簡潔易懂
9.6 邏輯清晰
  • ognl表達式
    查看全部
  • Connection為何不需要commit();因為conn.setAutoCommit(true);設置為自動提交,而我們MyBatis把它封裝后,setAutoCommit(false);所以需要手動提交事務。 Ps1:a href="#" 這個在html中有什么作用?跳轉到本頁面頂部,一般建議寫成javascript:void(0);要好一點,點了一點反應都沒有,寫#點了會跳一下的。 Ps2:servlet拿到什么數據類型就什么類型,至于service不一致時,再service里面去修改,這也是service作用之一。 Ps3:MyEclipse對JS等文件報錯處理:http://jingyan.baidu.com/article/ca41422fe094251eae99ede7.html Ps4: /** * 調用后臺批量刪除方法 */ function deleteBatch(basePath){ $("#mainForm").attr("action",basePath+"DeleteBatchServlet.action"); $("#mainForm").submit(); } 解析:將id為mainForm的表單的action提交路徑改為basePath+"DeleteBatchServlet.action"這個并且執行submit提交表單!
    查看全部
  • servlet負責接收頁面的值和向頁面傳值。如果有業務邏輯需要處理則調用相應的service。service接收servlet傳過來的值,并對其進行處理,做業務的操作,算法等等,如果有需要則調用相應的dao層。dao層完成與數據庫的交互,執行相應的SQL語句。 增刪改默認按事務處理,Mybatis對事務的控制,默認 是不自動提交的,需要手動提交 sqlSession.commit(); <script type="text/javascript" charset="utf-8" > //獲得動態URL function getUrl(url){ //獲得查詢指令名稱的值 var command = document.getElementById("command").value; //獲得查詢描述的值 var description = document.getElementById("description").value; //拼接最后的URL地址 var changeUrl = url + "&command=" + command + "&description=" + description; //跳轉頁面 window.location.href=changeUrl; } </script> 單條刪除:<a>用post傳值,并彈出確認框 <script type="text/javascript"> function judgeDelete(id) { if(confirm("確定要刪除嗎?")) { window.location.href="DeleteOneServlet.action?id="+id; } } </script> <a href="javascript:judgeDelete(${message.id})">刪除</a>
    查看全部
  • SqlSession
    查看全部
  • //加載驅動,連數據庫 Class.forName("com.mysql.jdbc.Driver"); Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/message","root","123123"); //操作數據庫并聲明 String sql = "select ID ,COMMAND,DESCRIPTION,CONTENT from MESSAGE"; PreparedStatement statement = conn.prepareStatement(sql.toString()); //查詢數據庫 ResultSet rs = statement.executeQuery(); //查詢結果放在一個集合中 List<Message> messageList = new ArrayList<Message>(); while(rs.next()) { Message message = new Message(); messageList.add(message); message.setId(rs.getString("ID")); message.setCommand(rs.getString("COMMAND")); message.setDescription(rs.getString("DESCRIPTION")); message.setContent(rs.getString("CONTENT")); } //向頁面傳值 req.setAttribute("messageList", messageList); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { } //跳轉 req.getRequestDispatcher("/WEB-INF/jsp/back/list.jsp").forward(req, resp); }
    查看全部
    0 采集 收起 來源:數據庫連接

    2018-03-22

  • ognl表達式
    查看全部
  • ognl表達式
    查看全部
  • MyBatis準備工作:JSP,JSTL,EL,JS/JQUERY,Servlet,JavaBean,JDBC,MySQL
    查看全部
    0 采集 收起 來源:案例簡介

    2017-10-17

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

    2017-10-17

  • 常見問題解析 一、獲取自增主鍵值: <insert id="insert" useGeneratedKeys="true" keyProperty="id" parameterType="com.imooc.bean.Command"> insert into command(name,description) values(#{name},#{description}) </insert> //解析:添加數據(在主外鍵的關系中)可以使用 useGeneratedKeys="true",可獲取自增長的id,并配合keyProperty="id"(java中實體類的屬性名)指定該對象的主鍵值。 二、找不到namespace.id的異常效果: 1、在Configuration.xml沒有配置<mappers><mapper resource="*.xml"></mapper></mappers>; 2、在1的配置中或selectList("Message.queryMessageList",message);中,名字寫錯。 三、排查SQL語法錯誤:如果控制臺出現SQL語句問題,復制到SQL軟件上執行,若有參數,手動寫上并執行。 四、不要過度使用${}。 五、亂碼問題: 1. servlet傳參時的編碼:request.setCharacterEncoding("utf-8");或直接使用過濾器; 2. Java文件本身的編碼; 3. 連接數據庫的參數中,設定編碼方式:jdbc:mysql://192.168.1.1:3306/cms?characterEncoding=utf-8 4. 數據庫、表的編碼; 5. 展示頁面的編碼:<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 6. 瀏覽器編碼問題等。
    查看全部
    0 采集 收起 來源:常見問題解析

    2018-03-22

  • parameterType
    查看全部
  • resultMap && resultType
    查看全部
  • 一、resultMap和resultType:當配置resultType時,就不需要配置resultMap,看似resultType方便,但是會被受限制,沒有resultMap開放多。 相同點:都是表示查詢結果集的類型。 不同點:resultMap需要手動配置映射關系,而resultType是直接指定java類型或者自定義的實體類型,查詢結果集的列名必須和實體屬性名稱一致(實體類:名稱大小寫可以忽略;java類型,如Map集合的key大小寫要一致,盡量都大小寫規范,如果不放心可以select ID id,...)。 優缺點: 1、resultType結果集列名要與java屬性名一樣,但是resultMap不受限制,因為resultMap有column來規定。 2、由于SQL類型與Java中類型部分不匹配,resultMap可以通過typeHandler=""來匹配(如:SQL中的0和1來表示java中的false和true;Date類型的轉換),但是resultType無能為力。 二、parameterMap和patameterType: 表示傳入參數的對應關系,前者不推薦使用,只是mybatis為了適應以前的版本。 提示:看到Map字眼的想到映射關系,看到Type字眼的想到類型。 三、#{}和${}: 相同點:都是用來作為占位符。 不同點:#{}在預編譯的時候會被替換為?,而${}在預編譯的時候直接將變量的值替換進去,而且沒有引號(所以還要加上“'${...}'”),故一般都是用前者,個別情況會使用后者:如需要進行排序,且排序字段為參數時可以使用${}(order by后面預編譯是不可以用直接的列名比?更合適,所以選用${})。 四、#{}和ognl:在#{}中如果是基本類型,其中的名稱可以隨便寫(不推薦),但一般都用_parameter,因為值唯一,而ognl中必須寫成_parameter的方式
    查看全部
  • 常用標簽
    查看全部
    0 采集 收起 來源:常用標簽

    2017-10-17

  • 在子表類的Sql配置文檔的<resultMap>標簽下需要添加一個<association>標簽來指明當前子表這個類里包含著一個主表類類型的成員變量. 其中<assoication>標簽有property、column(可無)、javaType屬性、resultMap屬性. property屬性指明在子表類中的主表類類型的成員變量名. column屬性指明數據庫中的字段. javaType屬性指明主表類的類名. resutlMap屬性指明主表類的<resultMap>標簽的id屬性的屬性值. 在<association>標簽下有<id>與<result>子標簽,他們都有property與column屬性.來表明主表類的所有成員變量.或者直接用resultMap屬性直接替代,就可以不用寫子標簽. (在子表的Sql配置文件) <resultMap type="com.imooc.Content" id="Content"> <id column="ID" jdbcType="Integer" property="id"/> <result column="Content" jdbcType="VARCHAR" property="content"/> <result column="CommandId" jdbcType="Integer" property="commandId"/> <association property="command" javaType="com.imooc.Command"> <id column="CID" property="id"/> <result column="name" property="name"/> <result column="description" property="description" /> </association> </resultMap> 等于: <resultMap type="" id=""> <id column="" jdbcType="" property=""/> <result column="" jdbcType="" property=""/> <association property="" resultMap="" /> </resultMap>
    查看全部

舉報

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
您的移動學習伙伴

公眾號

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

友情提示:

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