亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        PC機(jī)下實(shí)現(xiàn)java對(duì)文件系統(tǒng)功能調(diào)用

        2014-09-24 19:11:54王宏浩富強(qiáng)徐東晨
        無線互聯(lián)科技 2014年7期

        王宏浩 富強(qiáng) 徐東晨

        摘要:隨著時(shí)代的發(fā)展和科技的進(jìn)步,Internet技術(shù)也得到了快速的發(fā)展。在這樣的條件下,java語言以其所獨(dú)有的特點(diǎn),被廣泛應(yīng)用于多種設(shè)備、網(wǎng)絡(luò)和計(jì)算機(jī)中。盡管java可以跨平臺(tái),具有良好的可移植性,但是PC機(jī)上,尤其是WINDOWS系統(tǒng)下,要通過java實(shí)現(xiàn)對(duì)系統(tǒng)文件的調(diào)用則較為困難。論文結(jié)合筆者研究,闡述了如何利用已經(jīng)寫好的FATFS文件系統(tǒng)C代碼,在JNI技術(shù)基礎(chǔ)上實(shí)現(xiàn)PC機(jī)上文件系統(tǒng)功能的調(diào)用。

        關(guān)鍵詞:SOA;文件系統(tǒng);JNI;讀文件;寫文件1JNI技術(shù)

        使用JNI技術(shù)的最終目的就是為了能夠在完成編寫頭文件和本地程序的基礎(chǔ)上,再借助C/C++文件生成一個(gè)動(dòng)態(tài)庫文件,然后將其加載至Java程序中,確保其成功運(yùn)行。具體步驟可以分為以下五步:第一,構(gòu)建Java工程,編寫相應(yīng)的Java代碼。在這一環(huán)節(jié)中,首要任務(wù)是將需要定義的動(dòng)態(tài)庫名稱加載至Java類中,并且需要確定本地方法。第二,編寫并執(zhí)行.bat文件,從而生成與Java代碼相對(duì)應(yīng)的頭文件。第三,編寫本地代碼,以保證Java可以與C/C++數(shù)據(jù)文件之間的相互轉(zhuǎn)換。第四,編譯本地代碼,從而生成DLL或者.SO文件。第五,加載已生成的動(dòng)態(tài)庫文件至Java代碼之內(nèi),并將Java程序運(yùn)行。

        2SOA三層構(gòu)架下FATFS文件系統(tǒng)的移植

        SOA即Service-Oriented Architecture,是面向服務(wù)的體系結(jié)構(gòu),它的出現(xiàn)解決了如何提高系統(tǒng)的擴(kuò)展性的問題。通過SOA的三層構(gòu)架,有效的解決了諸多問題。這可以從兩個(gè)方面分析,即邏輯層的SOA三層構(gòu)架以及實(shí)現(xiàn)層SOA三層構(gòu)架。

        2.1 邏輯層SOA三層構(gòu)架

        邏輯層SOA三層構(gòu)架的主要作用就是確保業(yè)務(wù)需求與系統(tǒng)的分離。根據(jù)不同的應(yīng)用方式,SOA可以實(shí)現(xiàn)不同語義層定義相應(yīng)的應(yīng)用協(xié)議語言。這樣就可以實(shí)現(xiàn)針對(duì)特定應(yīng)用系統(tǒng)的系統(tǒng)需求映射,從而達(dá)到將業(yè)務(wù)需求與系統(tǒng)之間的銜接的目的。邏輯層SOA三層構(gòu)架是針對(duì)FATFS文件系統(tǒng)之間的底層驅(qū)動(dòng)函數(shù)。一般來說FATFS文件系統(tǒng)有六個(gè)接口函數(shù)與硬件層相對(duì)應(yīng),即磁盤初始化、獲取當(dāng)前磁盤的狀態(tài)、寫扇區(qū)、讀扇區(qū)、獲取當(dāng)前時(shí)間以及存儲(chǔ)介質(zhì)控制函數(shù)。

        2.2 實(shí)現(xiàn)層SOA三層構(gòu)架

        這與邏輯層SOA三層構(gòu)架相對(duì)應(yīng),引擎映射對(duì)應(yīng)概念模型需求層;流程映射對(duì)應(yīng)邏輯模型語義層;構(gòu)建映射對(duì)應(yīng)物理模型服務(wù)層。

        因?yàn)檎撐膬?nèi)實(shí)現(xiàn)的PC機(jī)下Java對(duì)文件系統(tǒng)功能的調(diào)用是基于Java調(diào)用C而實(shí)現(xiàn)的,那么邏輯層SOA三層構(gòu)架內(nèi)的服務(wù)層之中的底層函數(shù)是與實(shí)現(xiàn)層的構(gòu)件池相對(duì)應(yīng)的,而實(shí)現(xiàn)層的引擎則是Java,這樣通過Java引擎就可以在調(diào)用文件系統(tǒng)流程的過程中生成的動(dòng)態(tài)庫文件達(dá)到實(shí)現(xiàn)文件系統(tǒng)的目的。

        3PC機(jī)下Java對(duì)文件系統(tǒng)功能調(diào)用

        通過對(duì)前面SOA三層構(gòu)架的分析,并在此基礎(chǔ)上實(shí)現(xiàn)了FATFS文件系統(tǒng)的移植,接下來就可以實(shí)現(xiàn)通過Java對(duì)PC機(jī)下文件系統(tǒng)功能的調(diào)用。為了便于實(shí)現(xiàn)和測(cè)試,筆者所采用的測(cè)試平臺(tái)為VC++以及eclipse平臺(tái)。具體實(shí)驗(yàn)流程如下所述:

        第一步,構(gòu)建Java工程Rename,其中設(shè)置其包名為filesystem,類FileSystem。

        第二步,在代碼FileSystem.java中聲明本地方法。

        其中:①函數(shù)表示對(duì)文件的重命名,path_old表示文件名,而path_new則代表修改以后的文件名;

        ②函數(shù)則表示需要根據(jù)路徑來讀取相應(yīng)的文件夾,代碼String path文件夾;

        ③函數(shù)則代表按照path的路徑進(jìn)行文件數(shù)據(jù)的寫入;

        ④函數(shù)意為讀取相應(yīng)路徑內(nèi)的文件夾的內(nèi)容;

        ⑤函數(shù)表示讀取路徑寫文件的相關(guān)信息,諸如文件的創(chuàng)建時(shí)間等;

        ⑥函數(shù)指需要為path路徑創(chuàng)建一個(gè)文件夾;

        ⑦函數(shù)指將該路徑下文件夾的屬性改變。

        第三步,加載動(dòng)態(tài)庫,其語句為

        static

        {

        System.loadLibrary("renamel");

        }

        Renamel即表示動(dòng)態(tài)庫的名字,這樣Java就可以憑借調(diào)用上述中介DLL的方式,間接地達(dá)到調(diào)用真正第三方DLL的目的。

        第四步,通過編譯,從而生FileSystem.class文件。

        第五步,編寫執(zhí)行.bat文件,這樣就可以生成與Java代碼相對(duì)應(yīng)的頭文件,即filesystem_FileSystem.h。

        第六步,通過VC6.0編譯器,就能夠生成renamel.dll文件。

        這樣一來就實(shí)現(xiàn)了在PC機(jī)下Java對(duì)文件系統(tǒng)功能的調(diào)用。

        4結(jié)語

        綜上所述,在PC機(jī)下實(shí)現(xiàn)Java對(duì)文件系統(tǒng)功能的調(diào)用是一個(gè)復(fù)雜的過程,需要涉及到眾多方面。而JNI技術(shù)保障這一功能實(shí)現(xiàn)的前提。為了實(shí)現(xiàn)這一目的,就必須了解和掌握J(rèn)NI技術(shù)需要的軟件和平臺(tái),并在此基礎(chǔ)上分析FATFS文件系統(tǒng)的結(jié)構(gòu)基礎(chǔ),并最終借助SOA的三層構(gòu)架實(shí)現(xiàn)對(duì)PC上的FATFS系統(tǒng)文件的移植。最后,憑借JNI技術(shù),即可實(shí)現(xiàn)WINDOWS系統(tǒng)下Java對(duì)文件系統(tǒng)功能的調(diào)用。

        [參考文獻(xiàn)]

        [1]常青,張剛,王耀力.SOA三層構(gòu)架在嵌入式文件系統(tǒng)上的實(shí)現(xiàn)[J].太原理工大學(xué)學(xué)報(bào),2011(03).

        大屁股少妇一区二区无码| 国产边摸边吃奶叫床视频| 熟妇人妻av中文字幕老熟妇| 久久6国产| 青青青伊人色综合久久| 国产影片一区二区三区| 24小时日本在线视频资源| 国产精品麻花传媒二三区别| 亚洲无码中文字幕日韩无码| 亚洲天堂av一区二区三区不卡 | 国产免费三级av在线| 少妇久久久久久被弄到高潮 | 特级av毛片免费观看| 久久九九有精品国产尤物| 国产精品女人一区二区三区 | 国产精品美女一区二区av| 亚洲一区二区三区小说| 蜜臀av无码精品人妻色欲| 免费国产h视频在线观看86| 亚洲成人av一区二区| 成人内射国产免费观看| 国产精品va在线播放我和闺蜜| 久久夜色精品国产噜噜噜亚洲av | 日韩视频中文字幕精品偷拍 | 亚洲欧美另类精品久久久| 亚洲女同性恋激情网站| 国产欧美日韩va另类在线播放| 亚洲aⅴ无码成人网站国产app| 无码AV午夜福利一区| 亚洲精品中文字幕导航| 精品人妻伦九区久久aaa片| 久久亚洲国产中v天仙www| 一区二区三区手机看片日本韩国| 精品无码av一区二区三区不卡| 亚洲 自拍 另类 欧美 综合 | 一区二区三区中文字幕有码| 成人偷拍自拍视频在线观看 | 97se在线| 国产精品成人有码在线观看| 亚无码乱人伦一区二区| 色爱区综合五月激情|