您好,登錄后才能下訂單哦!
java中Channel是什么?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
1.SpringMVC,Spring Web MVC是一種基于Java的實現了Web MVC設計模式的請求驅動類型的輕量級Web框架。2.Shiro,Apache Shiro是Java的一個安全框架。3.Mybatis,MyBatis 是支持普通 SQL查詢,存儲過程和高級映射的優秀持久層框架。4.Dubbo,Dubbo是一個分布式服務框架。5.Maven,Maven是個項目管理和構建自動化工具。6.RabbitMQ,RabbitMQ是用Erlang實現的一個高并發高可靠AMQP消息隊列服務器。7.Ehcache,EhCache 是一個純Java的進程內緩存框架。
1、說明
Channel是一個可以通過它讀寫數據的對象。它可以被視為IO中的流。但與流相比,它有一些不同:
Channel是雙向的,可以讀也可以寫,流是單向的。
Channel可以異步讀寫。
Channel的讀寫必須通過buffer對象。
2、實例
利用通道和非直接緩沖區完成。
FileInputStream fis=null; //引用 FileOutputStream fout=null; FileChannel channel=null; //通道引用 FileChannel outchannel=null; try { fis = new FileInputStream("sb.jpg"); //源文件 fout = new FileOutputStream("bb.jpg"); //目標文件 channel = fis.getChannel(); //獲取連接源文件的通道 outchannel = fout.getChannel(); //獲取連接目標文件的通道 //指定緩沖區 非直接緩沖區 ByteBuffer buffer=ByteBuffer.allocate(1024); //創建緩沖區 用來傳輸數據 while(channel.read(buffer)!=-1) //從連接源文件的管道讀取數據到緩沖區 { //將緩沖區反轉 buffer.flip(); outchannel.write(buffer); //將緩沖區中的數據寫入連接到目標文件的管道 buffer.clear(); //"清空"緩沖區 }
看完上述內容,你們掌握java中Channel是什么的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。