黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java數據庫技術總結,內涵相關免費視頻

Java數據庫技術總結,內涵相關免費視頻

更新時間:2020-02-05 09:40:01 來源:動力節點 瀏覽2425次


Java數據庫技術總結,內涵相關免費視頻


  一、JDBC連接數據庫步驟(以MYSQL為例)


  1、加載JDBC驅動程序:


  通過Class類的forName方法實現,并將驅動地址放進去


  成功加載后,會將Driver類的實例注冊到DriverManager類中。


  2、提供JDBC連接的URL、創建數據庫的連接


  ?要連接數據庫,需要向java.sql.DriverManager請求并獲得Connection對象,


  該對象就代表一個數據庫的連接。


  ?使用DriverManager的getConnectin()方法傳入指定的欲連接的數據庫的路徑、數據庫的用戶名和密碼。


  Connectioncon=DriverManager.getConnection(url,username,password);


  &&&:"jdbc:mysql://localhost/test?user=root&password=123&useUnicode=true&characterEncoding=utf-8”;


  3、創建一個Statement


  ?要執行SQL語句,必須獲得java.sql.Statement實例


  ?執行靜態SQL語句。通常通過Statement實例實現。


  ?執行動態SQL語句。通常通過PreparedStatement實例實現。


  Stringsql=“”;


  Statementst=con.createStatement();


  PreparedStatementpst=con.prepareStatement(sql);


  4、執行SQL語句


  Statement接口提供了executeQuery、executeUpdate、execute三種方法


  executeQuery:執行select語句,返回ResultSet結果集


  ResultSetrst=pst.executeQuery();


  ?executeUpdate:執行insert、update、delete語句


  pst.executeUpdate();


  5、關閉JDBC對象


  操作完成以后要把所有使用的JDBC對象全都關閉,以釋放JDBC資源。


  二、數據庫連接池


  數據庫連接池的優點運行原理:在我們不使用數據庫連接池的時候,每次訪問數據庫都需要創建連接,使用完成之后需要釋放關閉連接,而這樣是很耗費資源的。當我們使用數據庫連接池的時候,在tomcat啟動的時候就創建了指定數量的連接,之后當我們程序使用的時候就直接從連接池里面取,而不需要創建,同理,當我們使用完的時候也不需要關閉連接,而是將連接返回到連接池中,供其他請求繼續使用。


  DBCP:比較穩定。


  C3P0:性能比較高。


  三、mysql的數據庫導入導出


  配置:


  首先找到mysql的安裝目錄,進入bin目錄下復制路徑


  將mysql的bin目錄粘貼在計算機環境變量的path中


  授權:


  登錄mysql


  將某張表的某個權限賦給某個用戶


  grant[select,insert,update,delete,create,drop]on[databaseName].[tableName]to[userName]@[userIP]identifiedby[‘連接口令’]


  grantselect,insert,update,delete,create,droponoa_ssh.usertoroot@[IP]identifiedby‘root’;


  將所有庫的所有權限賦給某個用戶


  grantallprivilegeson.to[userName]@[userIp]identifiedby[‘連接口令’]


  grantallprivilegeson.toroot@[IP]identifiedby‘root’;


  將所有庫的所有權限賦給所有用戶


  grantallprivilegeson.toroot@’%’identifiedby‘root’;


  導出本地數據庫:


  mysqldump-u用戶名-p數據庫名>磁盤:導出的文件名(加后綴)


  遠程導出數據庫:


  mysqldump-hIP-u用戶名-p數據庫名稱>導出的文件名(加后綴)


  遠程導出數據表:


  mysqldump-uroot-p-d--add-drop-table數據庫名稱>導出文件


  名(加后綴)


  導入數據:


  mysql-uroot-p登錄成功后==》source磁盤:導入的文件名(加后綴)


  四、jdbc分段批量提交的時候出現異常怎么處理?


  通過Map來解決性能問題。首先在分段批量提交的時候,我們不采用事務,這樣就保證了合法的數據就自動提交,不合法的數據就自己自動進行回滾,為了避免不合法數據影響后續合法數據的提交,采用定義業務規則字典表,實現對數據的驗證,將不合法的數據記錄下來,供用戶進行后續處理,而合法的數據就全部提交。


  五、jdbc批量處理數據


  批量處理數據:(代碼優化:提高程序執行性能)


  降低了java程序代碼(客戶端)和數據庫之間的網絡通信的次數。


  在jdbc中進行批量插入的核心API為addBatch,executeBatch


  大數據量的插入問題:(jdbc,hibernate,ibatis)


  1.每次只插入一條和數據庫交互多次(很耗時間)


  2.批量插入和數據庫只交互一次(內存溢出)


  3.分段批量插入(推薦)


  jdbc批量處理數據是通過PreparedStatement對象的addbatch(),executebatch()clearbatch()進行和數據庫的交互。通常我們使用分段批量處理的方式這樣可以提高程序的性能,防止內存溢出。


  1.每個sql語句都和數據庫交互一次(非批量操作)


  2.只和數據庫交互一次(批量操作)(內存溢出)


  當數據達到一定額度的時候就和數據庫進行交互,分多次進行(分段批量操作)


  (500或者1000)


  pst.addBatch();


  if(i>0&&i%1000==0){


  pst.executeBatch();


  pst.clearBatch();


  }


  六、Oracle分頁


  select*from(select*from(selects.*,rownumrnfromstudents)wherern<=5)wherern>0


  七、Oracle的基本數據類型


  Oracle的基本數據類型(常用):


  1、字符型


  Char固定長度字符串占2000個字節


  Varchar2可變長度字符串占4000個字節


  Nvarchar2占2000個字符(最多能存2000個字母/中文)


  2、大對象型(lob)


  Blob:二進制數據最大長度4G


  Blob用于存一些圖片,視頻,文件。


  比如:當我們在進行文件上傳時,我們一般把上傳的文件存在硬盤上,可以不占用數據庫,下載時,如果項目遷移時,文件也要跟著遷移。因此我們可以把用blob把它存在數據庫中。但這樣也增加了數據庫的負擔。


  Clob:字符數據最大長度4G,可以存大字符串varchar2和nvarchar2都具有一定的局限性,它們長度有限,但數據庫中無論用varchar2或nvarchar2類型,還是用clob,在java端都使用String接收。


  3、數值型


  Integer整數類型,小的整數。


  Float浮點數類型。


  Real實數類型。


  Number(p,s)包含小數位的數值類型。P表示精度,s表示小數后的位數。


  Eg:number(10,2)表示小數點之前可有8位數字,小數點后有2位。


  4、日期類型


  Date日期(日-月-年)DD-MM-YY(HH-MI-SS)


  Timestamp跟date比它可以精確到微秒。精確范圍0~9默認為6.


  八、id、rowid、rownum的區別


  rowid物理位置的唯一標識。


  而id是邏輯上的唯一標識,所以rowid查找速度要快于id,是目前最快的


  定位一條記錄的方式


  rowid和rownum都是"偽數列"


  所謂“偽數列”也就是默認隱藏的一個數列。


  rownum用于標記結果集中結果順序的一個字段,


  它的特點是按順序標記,而且是連續的,


  換句話說就是只有有rownum=1的記錄,才可能有rownum=2的記錄。


  rownum關鍵字只能和<或者<=直接關聯


  如果是>或者=則需要給他起個別名


  九、主鍵和唯一索引的區別?


  在創建主鍵的同時會生成對應的唯一索引,主鍵在保證數據唯一性的同時不允許為空,而唯一可以有一個為空數據項,一個表中只能有一個主鍵,但是一個主鍵可以有多個字段,一個表中可以有多個唯一索引。


  十、Preparedstatement和statement的區別


  用Preparedstatement進行開發。Preparedstatement是預編譯的,而statement不是,在每次執行sql語句的增刪改時,如果是一條數據兩者沒差距,但如果數據量大于1,那么每次執行sql語句statement都要重新編譯一次,而Preparedstatement不用,Preparedstatement的運行效率大于statement;從代碼的可維護性和可讀性來說,雖然用Preparedstatement來代替statement會使代碼多出幾行,但這樣的代碼無論從可讀性還是可維護性來說,都比直接使用statement的代碼高很多檔次;最重要的一點,從安全角度來說,使用Preparedstatement可以大大提高程序的安全性,因為Preparedstatement是用‘?’傳參,可以防止sql注入,具有安全性,而statement用的是‘+’字符串拼接,安全性較低。


  數據庫相關視頻教程


  oracle數據庫教程:http://www.ilovecolors.com.cn/v22/


  數據庫plsql教程:http://www.ilovecolors.com.cn/v23/


  jdbc數據庫教程:http://www.ilovecolors.com.cn/v24/


  數據庫mysql教程:http://www.ilovecolors.com.cn/v21


  Java實戰項目視頻之egov項目視頻教程【免費下載】:http://www.ilovecolors.com.cn/v83/


  Java學生成績管理系統視頻教程【免費下載】:http://www.ilovecolors.com.cn/v51/


Java數據庫技術總結,內涵相關免費視頻


       以上就是動力節點Java培訓機構小編介紹的“Java數據庫技術總結,內涵相關免費視頻”的內容,希望對大家有幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。


  相關內容


  Java編程學習:MySQL數據庫的學習路線


  2020年Java數據庫筆試題大全


  Java數據庫入門學習,mysql書籍推薦


  學習Java數據庫增刪查改通用方法


  Java學習:數據庫學習條件查詢和排序


提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 波多野结衣手机视频一区 | 欧美日韩视频一区三区二区 | 色天使久久综合给合久久97色 | 成人在线短视频 | 欧美日韩一区不卡 | 又爽又黄又紧的免费视频 | 中文字幕制服丝袜 | 午夜免费看视频 | 美女综合网 | 亚洲精品人成网线在线 | 性欧美xxxx视频在线观看 | 香港午夜三级a三级高清观看 | 黄色一级视频免费观看 | 黄网站在线观看 | 成人免费一区二区三区 | 欧美在线视频观看 | 日韩欧美国内 | 久久手机免费视频 | 日韩日日操| 欧美日韩国产剧情 | 亚洲视屏在线观看 | 国产福利微拍精品一区二区 | 国产 麻豆 欧美亚洲综合久久 | 婷婷伊人久久 | 99久久免费国产特黄 | 国产精品一区二区三区高清在线 | 2020国产欧洲精品视频 | 欧美午夜视频在线观看 | 最近中文字幕免费mv在线视频 | 麻豆久久婷婷国产综合五月 | 欧美成人小视频 | 综合影院 | 日韩精品一区二区三区毛片 | 国产免费叼嘿在线观看 | 热久久国产欧美一区二区精品 | 国产日韩亚洲欧洲一区二区三区 | 日本宅男午夜免费永久网站 | 久久国产综合精品欧美 | 成人午夜性视频欧美成人 | 久久mimi色 | 成人永久福利在线观看不卡 |