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

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

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

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

    執行sql語句

    獲取結果并封裝結果信息

    返回結果

    查看全部
  • OGNL表達式

    查看全部
  • OGNL表達式

    查看全部
  • 啊三妻四妾

    查看全部
  • Mybatis常用標簽

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

    2018-05-13

  • var content;

    //content 為‘’????null?????undeifend????0時,if(content) 意為 if(false)

    查看全部
  • mybatis的下載地址:https://github.com/mybatis/mybatis-3/releases如何分層,為什么要分層。一個servlet類包含了太多代碼,把數據庫相關表操作放到了dao層,把業務相關操作放到了service層,service層依賴dao層的對象,這里是直接new出來,如果采用spring框架,可以通過依賴注入dao的對象。servlet依賴service對象,一樣是new的,不過這樣分層不同功能的代碼就分出去了。servlet作為一個控制類,基本做這幾樣事情:一些配置,例如設置編碼,這部分重復工作可以通過過濾器統一處理。獲取請求參數,當然也可以通過過濾器處理,這也是其他一些mvc框架,例如struts,springmv要做的數據綁定功能,然后是調用業務類處理業務,一個項目主要就是在寫業務了。最后就是跳轉頁面。所以servlet應該只做控制的事情

    查看全部
  • 應該專門設置一個類,專門來獲取SqlSession對象. 如果是路徑的話就不能寫點,都用/代替. public SqlSession getSqlSession(){ ? ?//讀取配置文件 Reader reader=Resources.getResourceAsReader("配置文件所在路徑"); //構造SqlSessionFactory對象 ? ? SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(reader); ? ? //通過會話工廠打開會話 ? ? SqlSession sqlSession=sqlSessionFactory.openSession(); ? ? return sqlSession; } SqlSession用完也需要關閉. 異常中的finally子句: finally可以沒有,也可以只有一個.無論有沒有發生異常,它總會在這個異常處理結構的最后運行.即使你在try塊內用return返回了,在返回前finally總是要執行,這以便讓你有機會能夠在異常處理最后做一些清理工作.如關閉數據庫連接等等.


    Mybatis之SqlSession(核心) SqlSession的作用: 1、向 SQL 語句傳入參數 2、執行SQL語句 3、獲取執行SQL語句的結果 4、事務的控制 如何得到SqlSession: 1、通過配置文件獲取數據庫連接相關信息 2、通過配置信息構建SqlSessionFactory 3、通過SqlSessionFactory打開數據庫會話 //通過配置文件獲取數據庫連接信息 Reader reader=Resources.getResourceAsReaser("config/Configuration.xml"); //通過配置信息構建一個sqlSessinfactory SqlSessionFactory sqlSessionFactory=new SqlSessionfactoryBuilder(reader); //通過sqlSessionFactory打開一個數據庫回話 SqlSession sqlsession=sqlSessionFactory.openSession();

    查看全部
  • 在Dao層中封裝了與數據庫有關的操作,在service層調用Dao層來處理業務邏輯,在servlet中調用service層中的對象來得到處理的結果,并且返回給頁面 * servlet的幾個功能<br> * 1.接受頁面的值<br> * 2.向頁面傳值<br> * 3.(根據業務需要,調用service)<br> * 4.跳轉頁面


    各個層的功能 Model: 數據表對應的模型; DAO:每個表對應一個DAO,對該表的一些操作。 Service:或Logic層,跟Servlet對應,一些相關的業務功能。 Servlet: 設置編碼/過濾器;接受頁面的值;向頁面傳值;業務需要調用service;跳轉頁面。 ps: 1,jsp頁面傳值可以使用超鏈接形式為:地址?參數=要傳的值! 2,servlet總采用request.getParameter("參數”)接收; 3,jdbc中對占位符?的復制采用setInt(index,參數)的方式index代表第幾個?。

    查看全部
    0 采集 收起 來源:代碼重構

    2018-05-10

  • Trim  Trim()   功能刪除字符串首部和尾部的空格。   語法Trim ( string )   參數string:string類型,指定要刪除首部和尾部空格的字符串返回值String。函數執行成功時返回刪除了string字符串首部和尾部空格的字符串,發生錯誤時返回空字符串("")。如果任何參數的值為NULL,Trim()函數返回NULL。


    String 字符串常量 StringBuffer 字符串變量(線程安全) StringBuilder 字符串變量(非線程安全) 簡要的說, String 類型和 StringBuffer 類型的主要性能區別其實在于 String 是不可變的對象, 因此在每次對 String 類型進行改變的時候其實都等同于生成了一個新的 String 對象,然后將指針指向新的 String 對象,所以經常改變內容的字符串最好不要用 String ,因為每次生成對象都會對系統性能產生影響,特別當內存中無引用對象多了以后, JVM 的 GC 就會開始工作,那速度是一定會相當慢的。 在大部分情況下 StringBuilder > StringBuffer

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

    2018-05-10

  • @關鍵代碼(技巧): StringBuilder sql=new StringBuilder(" select ID,COMMAND,DESCRIPTION,CONTENT from message where 1=1 "); List<String> paramList=new ArrayList<String>(); if(command!=null&&!"".equals(command.trim())){ sql.append(" and COMMAND=? "); paramList.add(command); } if(description!=null&&!"".equals(description.trim())){ sql.append(" and DESCRIPTION like '%' ? '%' ");//MySql語法:'%'空格?空格'%' paramList.add(description); } PreparedStatement pstmt=conn.prepareStatement(sql.toString()); for(int i=0;i<paramList.size();i++){ pstmt.setString(i+1,paramList.get(i)); } ResultSet rs=pstmt.executeQuery(); 注意1:PreparedStatement語句要在sql語句還沒準備好后面,但要在循環前面。 注意2:為何不直接在if語句后寫“?”的內容呢?因為不知道問號序號是多少,不好控制。 Ps1:Tomcat啟動一般用Debug,只要不要設置斷點,效果與Run是一樣的,這樣一來,如果想調試就設置斷點即可,不需要再切換到Debug模式(Ps:Debug模式下,修改Java代碼會自動上傳到服務器,無需重新啟動Tomcat) Ps2:sql+="";//這樣寫不好,因為原來的字符串占用內存還在,推薦使用StringBuffer、StringBuilder。



    List<Message> messageList=new ArrayList<Message>(); while(rs.next()){ Message message=new Message(); messageList.add(message); message.setId(rs.getString("ID")); ... } 注意:先放數據,再添加到容器;或者先添加到容器,再放數據。都是一樣的,因為它放進去是引用類型,并不是對象本身。 select * from...//1 select id,name,...(所有列名) from...//2 注意:2的效率和安全性比1要高。 Ps1: Alt+Shift+J:自動添加類的文檔注釋。 Ctrl+Shift+Y:大寫轉小寫 Ctrl+Shift+X:小寫轉大寫 Ps2:varStatus=""中變量名支持自定義。

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

    2018-05-10

  • 1.載入JSTL中的c標簽:<%@ taglib prefix="c" uri="http://java.sum.com/jsp/jstl/core" %> 2.利用c標簽來進行foreach循環和if判斷 <c:forEach items="${messageList}" var="message" varStatus="status"><!-- varSatus屬性,可以通過其屬性值獲取到本次循環的狀態,如其中的index可以獲取循環的次數(從0開始),可配合if標簽做隔行換色的效果 --> <tr <c:if test="${status.index % 2 != 0}">style='background-color:#ECF6EE;'</c:if>> <td><input type="checkbox" name="id" value="${message.id}"/></td> <td>${status.index + 1}</td> <td>${message.command}</td> <td>${message.description}</td> <td> </c:forEach>

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

    2018-05-10

  • //加載驅動,連數據庫 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); }


    alt+shift+j 自動加載類的注釋

    查看全部
    0 采集 收起 來源:數據庫連接

    2018-05-10

  • 文件在WebRoot目錄下就相當于在工程項目下 1.凡是寫在WebRoot文件夾中的jsp文件,必須通過后臺的servlet才能訪問到, 如果只是在地址欄中輸入,是無法訪問到的 (也就是說我們可以直接不用加Web-Root就可以訪問到在此文件夾下的直接文件如:Index.jsp) (以MicroMessage這個項目為例:) 2.jsp中的basePath的值是:http://localhost:8080/MicroMessage/ 3.jsp中的path的值是:/MicroMessage 4.在servlet中: request.getRequestDispatcher("/WEB-INF/jsp/back/list.jsp").forward( request, response); 這里的/代表的是項目的根目錄,所以不用加上Web-Root,就像我們訪問index.jsp不用加上 Web-Root一樣

    查看全部
    0 采集 收起 來源:頁面跳轉

    2018-05-10

  • 案例分析 基本功能 接收發送指令 根據指令自動回復對應的內容 模塊劃分 回復內容列表--->回復維護內容-->對話功能---->回復內容刪除

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

    2018-05-10

舉報

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

公眾號

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

友情提示:

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