-
低級的查看全部
-
三、Mybatis是支持不同sql查詢,存儲過程和高級映射的優秀持久層框架
查看全部 -
出錯? 1代碼?? 2數據庫
若沒加事物管理,則代碼或數據庫中出錯就可能導致事物出錯或事物沒有執行。加上事物管理,
第一步;通過setAutoCommit(false)取消自動提交
第二步;在catch方法中將事物回滾,若有出錯的事物則取消所有的操作,避免代碼出錯導致數據混亂。若無出錯的事物則最好
第三步;在try中最后通過從commit()手動提交事物
查看全部 -
2:一致性:張三給李四100¥,張三-100,李四+100這是兩個操作,放在這里講就必須在一個事物內。
3:隔離性:對數據進行修改的所有并發事物不能同時進行,只能一個一個來
查看全部 -
一、JDBC常用的API深入詳解及存儲過程的調用
二、JDBC的事務管理
三、數據庫連接池,將連接單另出來,使開發人員只需要關注業務邏輯
dbcp 。2.c3p0
四、JDBC的替代產品
hibernate? 2.mybatis
五.總結
查看全部 -
MyBatis:支持普通SQL查詢,存儲過程和高級映射的優秀持久層框架。
特點:
??? 1:易于上手和掌握。
??? 2:SQL卸載XML里,便于統一管理和優化。
??? 3:解除SQL與程序代碼的耦合。
??? 4:提供映射標簽,支持對象與數據庫的orm字段關系映射。
??? 5:提供對象關系映射標簽,支持對象關系組建維護。
??? 6:提供XML標簽,支持編寫動態SQL。查看全部 -
Hibernate:一種Java語言下的對象關系映射解決方案。它是一種自由,開源的軟件。
優點:
??? 1:輕量級的ORM框架
??? 2:對JDBC進行了很好的封裝,使用了ORM做了映射,那么就可以通過面向對象的方式很容易的操作數據庫了。
??? 3:它還提供了緩存機制,可以提高效率。缺點:
??? 如果對大量的數據進行頻繁的操作,性能效率比較低,不如直接使用JDBC核心接口:
??? Session接口:Session接口負責執行被持久化對象的CRUD操作(CRUD的任務是完成與數據庫的交流,包含了很多常見的SQL語句。)。
??? SessionFactory接口:SessionFactory接口負責初始化Hibernate。它充當數據存儲源的代理,并負責創建Session對象。
??? Configuration接口:Configuration接口負責配置并啟動Hibernate,創建SessionFactory對象。
??? Transaction接口:Transaction接口負責事務相關的操作。它是可選的,開發人員也可以設計編寫自己的底層事物處理代碼。
??? Query和Criteria接口:Query和Criteria接口負責執行各種數據庫查詢。它可以使用HQL語言或SQL語句兩種表達方式。配置文件示例:
操作示例:
查看全部 -
1- ?Commons-dbutils
Apache組織提供的一個開源的JDBC工具類庫,對傳統操作數據庫的類進行二次封裝,可以把結果集轉化成List。
特點:
1.杜絕資源泄露。(修正JDBC代碼并不困難,但是這通常導致連接泄露并且難以跟蹤到。)
2.清晰干凈的持久化代碼(大段的持久化數據到數據庫代碼徹底精簡,剩下的代碼清晰表達了編碼意圖。)
3.從ResultSet里自動組裝JavaBean(不需要手工從ResultSet里set值到JavaBean中,每一行數據都將會以一個Bean實例的形式出現。)
核心接口:
1DbUtils:提供如關閉連接,裝載驅動程序等常規工具類;
2.QueryRunner:該類簡化了SQL查詢,它常與ResultSetHandler組合一起使用
3.ResultSetHandler:執行處理一個java.sql.ResultSet,將數據轉變并處理為任何一種形式,這樣有益于其應用而且使用起來更容易。DbUtils.loadDriver(driverClassName) 加載驅動類
示例: 修改、插入數據
示例: 查詢數據
查看全部 -
dbcp連接池和c3p0連接池對比
查看全部 -
1、 導入相關jar包
? ? c3p0-0.9.2-pre4.jar
????mchange-commons-java-0.2.2.jar
2、在項目根目錄下添加配置文件? ? ?c3p0.properties
查看全部 -
獲取dbcp連接方式
1、通過獲取配置文件參數,調用工廠方法獲取DataSource
2、手動使用參數獲取DataSource
3、從DataSource中調用getConnection()獲取連接
查看全部 -
JDBC連接池
背景:
1、數據庫連接是一種重要的資源
2、頻繁的連接數據庫會增加數據庫的壓力
3、為解決以上問題出現連接池技術
dbcp
1、導入相關dbcp的jar包
????commons-dpcp2-2.1.1.jar
????commons-pool2-2.4.2.jar
????commons-logging-1.2.jar
2、在項目根目錄下添加配置文件dbcp.properties
查看全部 -
1、調用Connection的setAutoCommit(false)關閉自動提交
2、使用try 將一系列數據庫操作放到一起,最后使用commit()提交事務
3、在catch里對異常處理,調用rollback()進行事務回滾
查看全部 -
JDBC對事物管理的支持
1、我們通過提交commit()或是回退rollback()來管理事務的操作
2、事務操作默認是自動提交
3、可以通過調用setAutoCommit(false)來禁止自動提交
查看全部 -
事務的概念
事務(TRANSACTION)是作為單個邏輯工作單元執行的一系列操作。
這些操作作為一個整體一起向系統提交,要么都執行、要么都不執行。
事務的特點
1、原子性
事務是一個完整的操作。
2、一致性
當事務完成時,數據必須處于一致狀態。
3、隔離性
對數據進行修改的所有并發事務是彼此隔離的。
4、永久性
事務完成后,它對數據庫的修改被永久保持。
查看全部 -
在數據庫中創建帶輸出參數的存儲過程,將輸出參數INTO到OUT參數里
調用registerOutParameter(index ,Type)方法注冊返回參數,對應括號內占位符?的位置,聲明參數類型為int
查看全部
舉報