DBC的知識對于JAVA開發(fā)人員來講在簡單不過的知識了。PreparedStatement的作用更是胸有成竹。我們最常見用到有倆個方法:executeQuery方法和executeUpdate方法。這倆個方法之外還有一個execute方法。只是這個方法我們很少用。但是mybatis框架就是卻用這個方法來實現(xiàn)的。不管mybatis用是哪一個方法來實現(xiàn)。有一點可以肯定——那就是必須得到Statement接口實例。你可以這樣子理解mybatis把如何獲得Statement接口實例做了一個完美的封裝。而這一個封裝就是上一章出現(xiàn)的StatementHandler接口。

mybatis里面實現(xiàn)StatementHandler接口有四個類。

RoutingStatementHandler類:筆者把它理解為下面三個類的代理類。

CallableStatementHandler類:對應處理JDBC里面的CallableStatement類。

PreparedStatementHandler類:對應處理JDBC里面的PreparedStatement類。

SimpleStatementHandler類:對應處理JDBC里面的一般Statement接口實例(筆者也不知道JDBC是需叫他什么)。

正如上面所講的筆者把RoutingStatementHandler類理解為三個類的代理類。mybatis并沒有直接去引用后面三個類。而是通過RoutingStatementHandler類來判斷當前到底要調(diào)用哪個類。再去執(zhí)行相關的Statement接口實例。

Android培訓,安卓培訓,手機開發(fā)培訓,移動開發(fā)培訓,云培訓培訓

 public StatementHandler newStatementHandler(Executor executor, MappedStatement mappedStatement, Object parameterObject, RowBounds rowBounds, ResultHandler resultHandler, BoundSql boundSql) {
    StatementHandler statementHandler = new RoutingStatementHandler(executor, mappedStatement, parameterObject, rowBounds, resultHandler, boundSql);
    statementHandler = (StatementHandler) interceptorChain.pluginAll(statementHandler);    return statementHandler;
  }

Android培訓,安卓培訓,手機開發(fā)培訓,移動開發(fā)培訓,云培訓培訓

延伸閱讀

學習是年輕人改變自己的最好方式-Java培訓,做最負責任的教育,學習改變命運,軟件學習,再就業(yè),大學生如何就業(yè),幫大學生找到好工作,lphotoshop培訓,電腦培訓,電腦維修培訓,移動軟件開發(fā)培訓,網(wǎng)站設計培訓,網(wǎng)站建設培訓學習是年輕人改變自己的最好方式