[TOC]
# 字節流
* 字節輸入流 InputStream
- FileInputStream 操作文件的字節輸入流
- BufferedInputStream高效的字節輸入流
- ObjectInputStream 反序列化流
* 字節輸出流 OutputStram
- FileOutputStream 操作文件的字節輸出流
- BufferedOutputStream 高效的字節輸出流
- ObjectOuputStream 序列化流
- PrintStream 字節打印流
# 字符流
* 字符輸入流 Reader
- FileReader 操作文件的字符輸入流
- BufferedReader 高效的字符輸入流
- InputStreamReader 輸入操作的轉換流(把字節流封裝成字符流)
* 字符輸出流 Writer
- FileWriter 操作文件的字符輸出流
- BufferedWriter 高效的字符輸出流
- OutputStreamWriter 輸出操作的轉換流(把字節流封裝成字符流)
- PrintWriter 字符打印流
# 方法:
* 讀數據方法:
- read() 一次讀一個字節或字符的方法
- read(byte[] char[]) 一次讀一個數組數據的方法
- readLine() 一次讀一行字符串的方法(BufferedReader類特有方法)
- readObject() 從流中讀取對象(ObjectInputStream特有方法)
* 寫數據方法:
- write(int) 一次寫一個字節或字符到文件中
- write(byte[] char[]) 一次寫一個數組數據到文件中
- write(String) 一次寫一個字符串內容到文件中
- writeObject(Object ) 寫對象到流中(ObjectOutputStream類特有方法)
- newLine() 寫一個換行符號(BufferedWriter類特有方法)
# 向文件中寫入數據的過程
1,創建輸出流對象
2,寫數據到文件
3,關閉輸出流
# 從文件中讀數據的過程
1, 創建輸入流對象
2, 從文件中讀數據
3, 關閉輸入流
# 文件復制的過程
1, 創建輸入流(數據源)
2, 創建輸出流(目的地)
3, 從輸入流中讀數據
4, 通過輸出流,把數據寫入目的地
5, 關閉流
# File類
* 方法
- 獲取文件名稱 getName()
- 獲取文件絕對路徑 getAbsolutePath()
- 獲取文件大小 length()
- 獲取當前文件夾中所有File對象 File[] listFiles()
- 判斷是否為文件 isFile()
- 判斷是否為文件夾 isDirectory()
- 創建文件夾 mkdir() mkdirs()
- 創建文件 createNewFile()
# 異常
- try..catch…finally捕獲處理異常
- throws 聲明異常
- throw 拋出異常對象
# 異常的分類
* 編譯期異常 Exception
|- 運行期異常 RuntimeException
* 注意:
編譯期異常,必須處理,不然無法編譯通過
運行期異常,程序運行過程中,產生的異常信息
# Properties
* Properties:Map集合的一種,它是Hashtable集合的子集合,它鍵與值都是String類型,它是唯一能與IO流結合使用的集合
- 方法
* load( InputStream in ) 從流所對應的文件中,讀數據到集合中
* load( Reader in ) 從流所對應的文件中,讀數據到集合中
* store( OutputStream out , String message ) 把集合中的數據,寫入到流所對應的文件中
* store( Writer out , String message) 把集合中的數據,寫入到流所對應的文件中
* 實現文件內容的自動追加
- 構造方法
- FileOutputStream(File file, boolean append)
- FileOutputStream(String fileName, boolean append)
- FileWriter(File, boolean append)
- FileWriter(String fileName, boolean append)
* 實現文件內容的自動刷新
- 構造方法
- PrintStream(OutputStream out, boolean autoFlush)
- PrintWriter(OutputStream out, boolean autoFlush)
- PrintWriter(Writer out, boolean autoFlush)
# Commons-IO
- 方法
- readFileToString(File file):讀取文件內容,并返回一個String;
- writeStringToFile(File file,String content):將內容content寫入到file中;
- copyDirectoryToDirectory(File srcDir,File destDir);文件夾復制
- copyFileToDirectory (File srcFile,File destFile);文件復制
- 基礎
- 編譯和安裝
- scanner類(鍵盤錄入)
- Random類(隨機數)
- 數組
- 方法
- 類
- ArrayList集合
- char與int
- eclipse
- IDEA
- 變量與常量
- 常用API
- String,StringBuffer,StringBuilder
- 正則,Date,DateFormat,Calendar
- 包裝類,System,Math,Arrays,BigInteger,BigDecimal
- 集合,迭代器,增強for,泛型
- List,set,判斷集合唯一
- map,Entry,HashMap,Collections
- 異常
- IO
- File
- 遞歸
- 字節流
- 字符流
- IO流分類
- 轉換流
- 緩沖流
- 流的操作規律
- properties
- 序列化流與反序列化流
- 打印流
- commons-IO
- IO流總結
- 多線程
- 線程池
- 線程安全
- 線程同步
- 死鎖
- lock接口
- ThreadLoad
- 等待喚醒機制
- 線程狀態
- jdbc
- DBUtils
- 連接池DBCP
- c3p0連接池
- 網絡編程
- 多線程socket上傳圖片
- 反射
- xml
- 設計模式
- 裝飾器模式
- web service
- tomcat
- Servlet
- response
- request
- session和cookie
- JSP
- EL
- JSTL
- 事務
- 監聽器Listener
- 過濾器Filter
- json
- linux安裝軟件
- 反射詳解
- 類加載器和注解
- 動態代理
- jedis
- Hibernate
- 簡介
- 創建映射文件
- Hibernate核心配置文件
- 事務和增刪改查
- HibernateUtils
- 持久化對象的三種狀態
- 檢索方式
- query
- Criteria
- SQLQuery
- 持久化類
- 主鍵生成策略
- 緩存
- 事務管理
- 關系映射
- 注解
- 優化
- struts2
- 搭建
- 配置詳解
- Action
- 結果跳轉方式
- 訪問ServletAPI方式
- 如何獲得參數
- OGNL表達式
- valueStack 值棧
- Interceptor攔截器
- spring
- 導包
- IOC和DI
- Bean獲取與實例化
- Bean屬性注入
- spring注解
- 注解分層
- junit整合
- aop
- 動態代理實現
- cglib代理實現
- aop名詞
- spring的aop
- aop-xml詳解
- aop-注解詳解
- 代理方式選擇
- jdbcTemplate
- spring事務管理
- 回滾注意
- 事務傳播屬性
- MyBatis
- MyBatis簡介
- 入門程序
- 與jdbc hibernate不同
- 原始Dao開發
- Mapper動態代理方式
- SqlMapConfig.xml配置文件
- 輸入參數pojo包裝類
- resultMap
- 動態sql
- 一對一關聯
- 一對多
- 整合spring
- 逆向工程
- maven
- maven簡介
- 倉庫
- maven目錄結構
- maven常用命令
- 生命周期
- eclipse中maven插件
- 入門程序
- 整合struct
- 依賴范圍
- 添加插件
- idea配置
- jar包沖突
- 分模塊開發
- 構建可執行的jar包(包含依賴jar包)
- springMVC
- 處理流程
- java面試
- java版本升級
- java1-8版本變更
- java9新特性
- 鎖
- java資料
- idea
- jdk版本切換
- log4j
- 入門實例
- 基本使用方法
- Web中使用Log4j
- spring中使用log4j
- java代碼優化