嵌入式java虛擬機cldc(java深入理解虛擬機)

本文目錄一覽:

J2ME的CLDC是什麼呀?只是一個協議嗎?能簡單介紹一下嗎?

J2EE和JAVA有關係

一、準備篇

1 什麼是J2EE?它和普通的Java有什麼不同?

答:J2EE全稱為Java2 Platform, Enterprise Edition。

「J2EE平台本質上是一個分佈式的服務器應用程序設計環境——一個Java環境,它提供了:

·宿主應用的一個運行基礎框架環境。

·一套用來創建應用的Java擴展API。」(引自《J2EE服務器端高級編程》)

2 J2EE好學嗎?

答:J2EE是很多技術的集合體,並且還在成長中。

你會遇到很多專有名詞:比如(X)HTML,Servlet/JSP,JDBC,JMS,JNDI,EJB,XML,Web Service……。

尤其是XML和Web Service正在快速成長。幸運的是,你不需要等到學會所有技術後再開始編程。

大體上J2EE可以分成3個主要應用:Servlet/JSP,EJB,XML/Web Service 和一些支撐技術例如JDBC和JNDI。

你可以一個一個的學。

3 J2EE有什麼用?

答:用來建設大型的分佈式企業級應用程序。或者用更時髦的名詞說就是「電子商務」應用程序。

這些企業可能大到擁有中心數據庫服務器,Web服務器集群和遍布全國的辦公終端,也可能小到只不過想做一個網站。

4 學J2EE有前途嗎?

答:在這一市場目前只有一種技術可以和J2EE競爭,那就是Microsoft的.NET。

相對來說.NET要「新」一些而J2EE要「老」一些。

但是.NET只能用於Windows平台(Microsoft聲稱要開發C#在Linux上的虛擬機但是尚未兌現該諾言),

考慮到Linux的發展勢頭,你可以相信.NET不會一統天下。

5 據說J2EE的性能不如.NET好,是真的嗎?

答:在Sun公司提供的樣例程序Pet Store上,Microsoft聲稱不如相同的.NET程序好。

而Sun公司反駁說這一程序不能真正體現J2EE的性能,並且指責Microsoft在數據庫上做了優化。

作者沒有學習過.NET因而不能妄下斷言。

無論如何,大型分佈式程序中的性能瓶頸通常首先來自於錯誤的設計。

6 聽你說了這麼多,我想學着玩玩。

答:除非你想靠它當飯吃或者作為技術儲備,否則請不要浪費你的時間。

Flash要好玩得多。計算機遊戲就更加好玩了。

7 學習J2EE該怎麼開始?

答:首先,下載一個J2EE服務器。其次,去java.sun.com下載J2EE的API。第三,找一本好的參考書。最後,找一個順手的IDE。

J2EE服務器。你可以用Sun的J2EE SDK(免費),或者Weblogic(性能最好,但是太大,而且作者不推薦盜版行為),或者JBoss(免費,就是文檔太少),或者JRun(開發版免費,作者用這個)。參考書作者感覺Wrox的《J2EE服務器端高級編程》不錯,但是太老(作者手頭的是2001年中文版)。你還需要去下載一些最新的技術資料(當然肯定是英文的)。

IDE如果你的機器配置夠好(內存至少512M以上,256M或以下請勿考慮),可以用IBM的WSAD,不然就繼續用Eclipse或者其他。

你也可以經常去水木清華的Java版逛逛,但是在發貼前先看看精華區里有沒有你要的答案。

8 我下了一個J2EE服務器但是不會配置。

答:請認真閱讀隨機指導文檔,不同的服務器的配置都不一樣,作者愛莫能助。

9 我發現你沒有提到Tomcat。

答:Tomcat只是一個Web服務器,更準確地說主要只是一個Web Container。

如果你想要學習EJB的話,Tomcat無法滿足你的需要。

二、 Servlet/JSP篇

10 什麼是Servlet?

答:一個Servlet是一個Java類。它處理Http(s)請求並作出響應,包括返回一個HTML頁面或轉交給其他URL處理。

Servlet必須運行在一個Web Container例如Tomcat中。

Servlet必須是javax.servlet.http.HttpServlet的子類,

你可以繼承doGet()或者doPost()方法,兩者分別對應於Http(s)中的Get請求和Post請求。

11 我怎麼獲得Http請求里的參數?

答:HttpRequest的getParameter()方法。例如:String paramValue = request.getParameter(“paramName”);

12 我怎麼返回結果?

答:你可以利用相關API打開一個輸出流,並向流中直接寫入一個HTML頁面。

但是作者完全不贊成這樣做。一方面這樣做會很羅嗦。

另一方面從Model-View-Controller模式(在《J2EE核心模式》中被歸為Front Controller模式)的觀點來看,

你應當提供一些HTML或者JSP作為視圖(view),而Servlet則根據請求參數決定轉到哪一個視圖。

你可以利用response.sendRedirect(…)方法或request.getDispatcher(…).forward()方法來實現。

13 sendRedirect()和forward()有什麼不同?

答:sendRedirect()是向瀏覽器發送一個redirect通知,瀏覽器重定向到新的URL。

而forward是在服務器端直接轉到新的URL,對於瀏覽器是透明的。

前者瀏覽器的地址欄顯示的是新的URL,後者瀏覽器的地址欄顯示的是Servlet的URL。

因而當目標URL會自動刷新時,兩者會造成一些差別。

14 我寫了一個Servlet程序,怎麼運行它?

答:開發J2EE程序有一個部署(deploy)的概念,實際上是開發——部署——運行的三部曲。

大多數服務器支持Hot deploy。你只需要在相應的Application目錄(具體路徑依賴於服務器)下面

建立一個符合WAR或EAR格式(參見16,17)的目錄,啟動服務器,就可以通過瀏覽器訪問了。

特別的,你的Servlet的class文件應當放在/WEB-INF/classes目錄中。

注意J2EE SDK不支持Hot deploy,你需要通過它的deploy tool來部署。

Tomcat只支持WAR格式。

15 EAR和WAR有什麼不同?

答:EAR是一個完整的J2EE應用程序,包括Web部分和EJB部分。

WAR只是其中的Web部分。

16 EAR格式是怎樣的?

答:一個EAR可以包含任意多個WAR或EJB JAR,並且包含一個META-INF的目錄。

在/META-INF中包含了一個application.xml,其中描述了這個EAR包含哪些模塊,以及安全性配置。

細節請看參考書。

17 WAR格式是怎樣的?

答:一個WAR包含一個WEB-INF的目錄,這個目錄下包含classes目錄,lib目錄和web.xml。

/WEB-INF/classes存放按package組織的class文件,/WEB-INF/lib目錄存放jar文件,

web.xml描述了很多東西,請讀參考書。

18 我的普通HTML文件應當放在哪裡?

答:放在除了/WEB-INF以外的其他地方。

19 我訪問不到servlet,甚至連HTML文件都訪問不到!

答:第一你沒啟動服務器。第二你敲錯了端口。第三你沒有正確配置context-path。

第四你的服務器不支持auto reload或者你關閉了這一選項,你得重啟服務器。

第五確認你沒有把HTML放在/WEB-INF目錄下,那是訪問不到的。

20 我能訪問HTML但是訪問不到servlet。

答:請檢查你的web.xml文件。確保你正確定義了servlet和servlet-mapping元素。

前者標識了一個servlet,後者將一個相對於context-path的URL映射到一個servlet。

在Tomcat中你可以通過/context-path/servlet/package/servletname的形式訪問servlet,

但是這只是Tomcat的便捷訪問方式,並不是正式規範。

細節請看參考書。

21 什麼是JSP?它和Servlet有什麼區別?

答:你可以將JSP當做一個可擴充的HTML來對待。

雖然在本質上JSP文件會被服務器自動翻譯為相應的Servlet來執行。

可以說Servlet是面向Java程序員而JSP是面向HTML程序員的,除此之外兩者功能完全等價。

22 我的JSP顯示的漢字是亂碼。

答:在你的JSP開頭加上一行 %@ page contentType=”text/html; charset=gb2312″%

如果你已經聲明了page我想你知道該怎麼修改。

23 JSP文件存放在哪裡?

答:除了/WEB-INF下的任何地方。

24 在JSP裏面怎麼引用Java Bean。

答:首先,確認你要引用的類在/WEB-INF/classes下或在/WEB-INF/lib的某個jar內。

其次,在JSP里加一行 jsp:useBean id=”…” scope=”…” class=”…”/

具體解釋請看參考書。

25 我想在servlet間傳遞數據。

答:利用session。在Servlet/JSP中,你可以在4個地方保存數據。

1) page,本頁面。

2) session,用來存放客戶相關的信息,比如購物車,對應接口為javax.servlet.http.HttpSession。

session機制實際上是cookie和URL Rewrite的抽象,服務器會自動使用cookie或URL Rewrite來實現。

3) request,可以在forward()時傳遞信息,對應接口為javax.servlet.http.HttpRequest。

4) application,或稱context,存放全局信息,對應接口為javax.servlet.ServletContext。

26 怎麼調用cookie?

答:作者建議使用session,你總是會遇到某些禁用cookie的用戶。這時session會自動使用URL重寫來實現。

27 怎麼在JSP裏面實現文件下載?

答:實際上這是一個HTML的問題。答案是一個超鏈接a。

28 怎麼實現文件上傳?

答:客戶端是HTML問題,在form中設置method為post,enctype為multi-part/form-data,加一個input type=”file”。

而在接收的servlet中只是一個I/O問題。

29 我想讓頁面自動刷新,比如聊天室。

答:這是一個HTML問題,在head部分中加一條meta http-equiv=”refresh” content=”5″ url=”…”。

這是所謂的Clinet-push,客戶端刷新技術。

30 我想讓用戶登錄以後才能訪問頁面。

答:使用聲明式安全措施。

你只需要在web.xml中定義安全角色(Role),並定義受保護的URL集合只能由特定Role訪問。

大多數服務器支持基於數據庫的用戶映射,你只要在相應數據庫中建立兩張表並配置服務器就可以了。

注意J2EE SDK不支持基於數據庫的用戶映射。

細節請看參考書和服務器文檔。

31 我想要能註冊用戶。

答:參看30。在接受註冊請求的Servlet中執行寫入數據庫操作即可。

32 怎麼在JSP中訪問數據庫?

答:標準做法是使用DAO模式,定義一個Java bean來訪問數據庫並在JSP中使用。

然而,當你的數據庫模式很簡單時,你可以使用JSTL中的sql:query標籤來快速訪問。

33 什麼是JSTL?

答:JSTL是Jsp Standard Tag Library的縮寫。這是一組通用標籤並將成為JSP 2.0的一部分。

其中包含賦值c:set,分支c:if,循環c:forEach,查詢數據庫sql:query,更新數據庫sql:update

等。目前你需要像添加自定義標籤庫一樣來添加JSTL,但是可以預計JSP 2.0會將JSTL作為組成部分。

標籤庫可以在下載。注意JSTL需要在支持JSP1.2或更高版本的容器下運行。

幫助文件可以閱讀sun的JSTL正式規範。

=======================================================

j2me入門–什麼是J2ME及J2ME基礎知識

Java發展歷史

相信熟悉Java 演進歷史的人或多或少都聽說過,Java 技術一開始並非就叫做 Java ,而是叫做OAK ,而且最早的時候就是為了嵌入式系統而設計的一項產品。後來因為網際網路的發達,而OAK 的諸多特性剛好又適合用在網路上(例如可移植性、編譯後程序碼很小),因為商標已被註冊的關係,因此 OAK 被改名成Java ,從此因緣際會地成了網路上的閃亮巨星,並隨著時間越來越成熟,也慢慢地產生了許多非原本預期中的相關運用。雖然 Java 已經被用到許多企業級軟體上,可是其實骨子裏面還是非常適合用在嵌入式系統之中。

雖然從Java 1.0 發表之後,Java 就被廣泛地使用在桌上型應用程序以及Applet 的開發上,但是,從Java 1.1 開始,Java又回到了它一開始的老路–也就是嵌入式系統方面的應用,在當時Sun Microsystems 發表了Embedded Java 與Personal Java(也有人簡稱為PJava)這兩項規格。其中Embedded Java 是為了資源十分有限,而且沒有顯示設備的嵌入式裝置而設計; Personal Java 則是為了在能夠與網際網路連線、並擁有顯示系統(例如彩色LCD)的消費性電子裝置而設計。接着Java 的版本演進到Java 2 ,這時為了再明顯區分各種Java 的應用,所以分割出了J2EE 、J2SE、以及 J2ME 三種版本。這三種版本的各種特性我們已經在前面已經詳細地描述,在此不再贅述。不過請大家記住,由於 Java 2將Java 的應用區分成三大塊,使得 Java 程序語言的發展不會再像Java 1.1時如樹枝狀般擴散出去,這麼一來有助於大家對 Java 各種應用的澄清,而不會造成今後越發展下去越不可收拾的混亂局面。額外向大家一提的是,後來Personal Java 發展到1.2 版的時候,也採用了一些Java 2 平台上與安全性有關的設計。

J2ME

J2ME 在設計其規格的時候,遵循着「對於各種不同的裝置而造出一個單一的開發系統是沒有意義的事」這個基本原則。於是 J2ME 先將所有的嵌入式裝置大體上區分為兩種 :一種是運算功能有限、電力供應也有限的嵌入式裝置(比方說PDA 、手機);另外一種則是運算能力相對較佳、並請在電力供應上相對比較充足的嵌入式裝置 (比方說冷氣機、電冰箱、電視機上盒 (set-top box))。因為這兩種型態的嵌入式裝置,所以Java 引入了一個叫做Configuration 的概念,然後把上述運算功能有限、電力有限的嵌入式裝置定義在Connected Limited Device Configuration(CLDC)規格之中;而另外一種裝置則規範為 Connected Device Configuration(CDC)規格。也就是說, J2ME 先把所有的嵌入式裝置利用Configuration 的概念區隔成兩種抽象的型態。

其實在這裡大家可以把Configuration 當作是J2ME 對於兩種類型嵌入式裝置的規格,而這些規格之中定義了這些裝置至少要符合的運算能力、供電能力、記憶體大小等規範,同時也定了一組在這些裝置上執行的 Java程序所能使用的類別函式庫、這些規範之中所定義的類別函式庫為 Java標準核心類別函式庫的子集合以及與該型態裝置特性相符的擴充類別函式庫。比方就CLDC 的規範來說,可以支援的核心類別函式庫為java.lang.*、java.io.*、java.util.*,而支援的擴充類別函式庫為java.microedition.io.*。區分出兩種主要的Configuration 之後,J2ME 接着在定義出Profile的概念。Profile 是架構在Configuration 之上的規格。之所以有Profile的概念,是為了要更明確地區分出各種嵌入式裝置上Java 程序該如何開發以及它們應該具有哪些功能。因此Profile 之中定義了與特定嵌入式裝置非常相關的擴充類別函式庫,而 Java 程序在各種嵌入式裝置上的使用者介面該如何呈現就是定義在Profile 裡頭。Profile 之中所定義的擴充類別函式庫是根據底層Configuration 內所定義的核心類別函式庫所建立。

雖然J2ME標準繁多,但只要把握住標準劃分的原因就很容易掌握。在這個技術飛速發展的領域,我們不能把眼光局限於標準的字面含義,而要靈活掌握,把握其精神。比如,CLDC和CDC的定義中具體的最小內存需求僅僅是”最小的”,隨着硬件能力的飛速發展,很有可能一些界限會變得模糊。PDA本來應該屬於CLDC的範圍,但是Compaq的iPaq上卻實現了CDC。以後的下一代PDA有64M內存並不意外,在其上實現CDC也是完全可能的。但是,從功能的角度,應該還是CLDC以及PDA Profile更適合於PDA的條件。到那時,具體的實現就要看廠商和開發者的選擇了。還需要注意的是,由於Profile是建於Configuration之上,作為對Configuration的擴展,因此Profile必須Configuration的支持。有的文章在講到MIDP的內存需求時,說MIDP需要最少256K,這是指MIDP本身。而有的文章說MIDP需要最少768K,那時因為把作為基礎的CLDC所需要的512K算進去了。

CLDC

CLDC是針對少於512KB內存footprint的設備的配置。CLDC採用的是KVM,它是高度優化的JVM方式,他針對的是16比特或32比特的微處理器,160到512 KB內存為基礎的低端,網絡連接,電池驅動的設備。典型的內存要求是128KB做有來存儲KVM和相關的庫。更多關於KVM的信息可以從Sun公司的KVM白頁中得到。

就網絡化而言,CLDC針對的是有限的和間歇性的無線連接設備,所有在J2ME CLDC之上運行的應用軟件都應能在其他任何高端的Java VM上運行。當然,這需要CLDC庫的支持。CLDC配置關注於I/O,網絡化,安全問題,國際化問題和核心Java庫等相關的領域。

與事件處理,用戶和應用程序的互動,應用程序生存期管理等內容相關的領域是由Profile來處理的。使用界面定義(對於特定的設備,如傳呼機,流動電話和PDA)也在Profile層的範圍之內,它建立在頂端之上,並使用J2ME配置。Mobile Information Device Profile (MIDP)是一個J2ME profile,它定義了使用CLDC配置設備的用戶界面相關的規範。

CLDC從J2SE獲得絕大多數的類,但一些針對小內存footprint設備的新類並不是從J2SE APIs獲得的。關於類從J2SE 做繼承和新CLDC類的具體信息,可參考CLDC規範1.0a版本的6.2和6.3中的內容。Java語言規範中的一些例外是沒有浮點支持,沒有類實例的完成化支持和有限的錯誤處理能力。

在這裡提到CLDC HotSpot應用也是具有相關性的,它相當於使用CLDC配置的設備的KVM中Java VM的替換。根據Sun公司,CLDC HotSpot執行VM是一個高性能的JVM(32位,採用CLDC v1.0規範)。他在相同的內存footprint上運行時提供比KVM高出一個數量級的更佳的性能。

CDC:完全的Java平台

CDC是應用在具有較大內存,特別是2MB以上的設備上的,CDC針對有限和間歇的無線連接設備,CDC與CVM和Foundation profile共同定義了完全的J2ME環境。

CVM是為用戶和嵌入設備設計的完全功能性JVM,它支持所有的Java 2 v1.3 VM安全防護,JNI, JVMDI, RMI,弱引用功能和庫。本質上說,CVM具有所有一個駐留桌面系統的JVM所具有的功能。

CDC由J2SE中最小的Java數據包組成。Foundation profile由用戶設備所需要的保持類庫和APIs所組成。因此,如果你工作在一個以CDC為基礎的J2ME環境下,你就需要更新你代碼以使APIs更新換代。

CDC是CLDC的一個擴展集,所以在兩種配置之間存在着向上的兼容性。CDC和Foundation profile也提供了對使用PersonalJava實時規範開發的應用程序的完全兼容。

J2ME的平台無關性主要指的是設備的宿主操作系統平台。由於Java平台建築於虛擬機之上,只要不同的操作系統上的虛擬機滿足同樣的規範和標準,對於虛擬機以上的層次是平台無關的。這使得針對某一Configuration或者Profile的應用可以運行於所有實現了這一Configuration或者Profile的操作系統平台。舉例來說,目前已經有網站開始收集基於MIDP的程序–MIDlet,提供下載和收費,各種支持MIDP的設備都可以使用,這包括數量巨大的智能手機和幾乎所有的PDA(Palm OS和Pocket PC)。

相關站點

Java 2 Micro Edition

JDC J2ME Tech Tips

CLDC KVM

Java的3個平台有什麼區別

平台的區別和關係如下:

一、定義和應用範圍:J2SE包含於J2EE中,J2ME包含了J2SE的核心類,但新添加了一些專有類 。

1、j2se是java的桌面應用平台,用於開發桌面應用程序,比如qq,暴風影音都是桌面應用程序,其中s表示standard,標準的意思。

2、j2ee,其中的e表示enterprise,即企業是意思,即java企業應用平台,用於大型的分佈式的開發程序。

3、j2me,m表示mobile,即移動平台,用於開發手機,嵌入cpu機器的開發平台。

二、應用領域:

1、針對企業網應用的J2EE(Java 2Enterprise Edition);

2、針對普通PC應用的J2SE(Java 2 StandardEdition);

3、針對嵌入式設備及消費類電器的J2ME(Java 2 MicroEdition)。

三、做出來的東西即java程序:

1、 源文件擴展名.java;

2、對應文件編譯後擴展名為.class;

3、打包後擴展名為.jar。

擴展資料:

Java的三大核心機制:

1、虛擬機機制:利用虛擬機解釋位元組碼執行java程序實現跨平台。

2、垃圾收集機制:自動內存回收。

3、代碼安全性機制:加載代碼後校驗代碼後再執行代碼。

參考資料:百度百科–java

MIDP2.0和CLDC 1.1各是什麼東東?

J2ME的術語

MIDP

開放分類: 計算機技術、電腦

MIDP(Mobile Information Device Profile,移動信息設備配置文件)建立在 CLDC 的基礎之上,用來描述手機和尋呼機這樣更加具體化的的無線移動設備。

對於 Java ME 平台,MIDP 定義了一個標準的 Java API 集合,此集合與聯網的受限設備配置 CLDC 一起提供了一個面向移動信息設備(如流動電話、雙向尋呼機和無線個人電腦記事本)的完整 Java ME 應用程序運行環境。

MIDP 提供了以下功能:

·顯示工具箱

·用戶輸入方法

·持久性數據存儲(使用簡單的面向記錄的數據庫模型)

·基於 HTTP 1.1 的網絡(使用 CLDC 通用連接框架)

Java 規範請求 (Java Specification Request, JSR)-37 中定義了 MIDP 1.0 標準。

JSR-118 中定義了 MIDP 2.0 標準。

CLDC

開放分類: 計算機技術、電腦

CLDC(Connected Limited Device Configuration,聯網的受限設備配置)是用來開發在無線設備上運行的應用程序所要用到的一組最小的 API。CLDC 描述了所有無線移動設備所需的一個最小級別的功能集合。

對於 Java ME 平台,CLDC 為流動電話、雙向尋呼機以及類似設備定義了基本配置(Java 語言、虛擬機功能和基本類庫)。這些設備具有以下特性:

·總內存量為 128 KB 到 512 KB。

·具有有限電源,如電池。

·可以連接到網絡。

·具有相對有限的用戶界面,通常只限文本。

CLDC 1.1 是 CLDC 1.0 規範的修訂版本,包含很多新增功能(例如浮點和弱引用支持)以及其他增強功能。

Java 規範請求 (Java Specification Request, JSR) 30 中詳細指定了 CLDC 1.0 的要求。

JSR 139 中詳細指定了 CLDC 1.1 的要求。

J2ME是一種使用Java語言進行嵌入式設備編程的技術,但是嵌入式設備的種類過於繁多,至少有幾百種之多,為了降低編程的複雜度,SUN公司將所有的嵌入式設備分為了兩大類:

1 CDC(連接設備配置)

有穩定的電源供應

設備性能強勁

例如車載設備、機頂盒等。

2 CLDC(連接有限設備配置)

使用電池供電

設備性能有限

其中手機屬於CLDC類別。

上面的說法都是從硬件劃分的角度來說明CLDC的,下面從程序員的角度來理解一下CLDC的概念。其實對於程序員來說,CLDC主要包含三個部分:

1 Java虛擬機(又稱JVM)

這個是所有Java程序運行的基礎。對於手機來說,在手機出廠以前,已經固化在手機中了,出廠了以後就不能進行修改了。

2 一套標準的API實現

該標準的API主要包含java.io、java.lang、java.util包以及javax.microedition.io包中的部分。這個是規範要求必須實現的API,也固化在手機中,不能修改。

3 本地方法實現

在標準的API中,很多都是接口,這些就要求廠商在手機中提供真實的實現,而且很多本地方法也要求手機廠商進行實現。

為什麼我的手機安裝java虛擬機之後運行java軟件會花屏?

中斷Java ME手機上的屏幕保護程序

br如果你的應用程序不要求用戶連續按鍵,那麼在SonyEricsson的手機上運行的程序,可能一段時間之後就會出現屏幕保護界面,這是手機自帶的功能。但是我們可以通過Nokia UI API來設置背景燈來阻止屏幕保護界面。但是持續讓背景燈打開會消

brcookie技術在Java ME平台的應用與實現

brCookie在Web應用程序中被廣泛採用,維護瀏覽器和服務器之間的狀態。遺憾的是這一特性在Java ME平台中並沒有得到支持。因此,要想維持客戶端和服務器端的狀態則必須使用URL重寫的方式。URL重寫操作起來比較麻煩,所以研究一下cooki

br我的j2me創意–Wap瀏覽器的源代碼

br這幾天不斷的有網友,朋友,公司來詢問我關於Wap瀏覽器,即時信息內容設計,以及低級UI組件設計的問題。為了解答各位網友跟朋友的需求,再次貢獻自己的源代碼,這些代碼直接在eclipse+eclipseMe上可直接運行裏面實現的功能友通過kxm

brDoJa平台手機遊戲的開發與移植

br一,DoJa技術簡介 簡單的說,DoJa是日本最大的移動通訊公司NTT DoCoMo的專利技術。而i-mode是該公司對於移動通訊2.5G階段的一種應用模式,這個技術覆

brJ2ME應用程序架構模型

br做了快一年的手機應用程序,抽空寫點對應用程序架構的認識吧。本文以J2ME手機應用程序為實例。介紹一下在企業應用的開發中,都會涉及到哪些方面的程序架構特徵。J2ME技術從誕生到現在還處於不斷的發展壯大中,雖然各種手機對JSR標準支持的差異,各

brIIS+Resin集成多個站點和數據庫連接池 做web開發一直都是使用Resin作為容器,配置起來非常的方便,啟動和執行的速度都很快。Resin的官方站點說Resin自帶的web服務器速度也非常之快,因此可以不用和apache or iis進行集成。當然,如果由於項目需要集成在一起也很

brRPG遊戲引擎的設計原理

br角色扮演遊戲(RPG)是深受廣大遊戲迷們喜愛的一種遊戲, 它以獨特的互動性和故事性吸引了無數的玩家。它向人們提供了超出現實生活的廣闊的虛擬世界,使人們能夠嘗試扮演不同的角色,去經歷和體驗各種不同的人生旅程或奇幻經歷。這些體驗都是在現實生活中

brJ2ME中的基礎碰撞檢測算法淺析 在遊戲中,經常需要進行碰撞檢測的實現,例如判斷前面是否有障礙以及判斷子彈是否擊中飛機,都是檢測兩個物體是否發生碰撞,然後根據檢測的結果做出不同的處理。 進行碰撞檢測的物體可能有些的形狀和複雜,這些需要進行組合碰撞檢測,就是將複雜的物體處理成

brJsr75學習筆記(一)

br這段時間因為開發上要用到本地文件,因此開始接觸Jsr75的包,Jsr75分兩個部分,一部分是File,即本地文件系統,一部分是PIM,說白了就是電話本之類的信息,我先學習的是File部分,通過import javax.microeditio

br關於Motorola手機安全簽名

br今天在MOTO E6的手機上安裝了一個anyview的閱讀軟件,根據安裝嚮導,竟然是一個對程序簽名的過程。然後立馬寫了一個jsr75的操作的程序,按照此方法做了一遍,哈哈!討厭的對話框沒了~~~簽名的過程:1、裝在sd卡上2、手機USB大容

brKVM的執行引擎(下) — 指令集

br指令集是虛擬機中最底層也是最核心的部分,Java程序中的變量賦值、函數調用等所有操作最後都要被轉化為一條條的指令來執行。指令集是在Java虛擬機規範中定義的,各種虛擬機實現要給予精確的實現,下面就來介紹一下指令集的分類以及在KVM中是如何實

brKVM的執行引擎(上) — 棧和幀

br接下來的兩篇將介紹在KVM中位元組是如何執行的,這是KVM中比較核心的內容,分為兩部分來講,本篇先介紹虛擬機中的棧和幀是如何實現的。 首先來看一些全局指針,在頭文件kvm/vmcommon/h/interpret.h中定義有以下結構

brKVM的常量池

br在class文件中,「常量池」是最複雜也最值得關注的內容。Java是一種動態連接的語言,常量池的作用非常重要,常量池中除了包含代碼中所定義的各種基本類型(如int、long等等)和對象型(如String及數組)的常量值還,還包含一些以文本形

brKVM的類加載 首先簡要介紹一下class文件的結構(詳細內容請參考Java虛擬機規範,在《深入Java虛擬機》一書中也有詳細描述):長度(位元組)名稱解釋4magic0xCAFEBABE,Java文件的標識,常稱為「魔數」2minor_version次版本

brKVM的擴展

brKVM本身只帶有cldc1.1的類庫,功能十分簡單,不能滿足用戶的需求,本篇介紹如何對KVM進行擴展。對KVM進行擴展,在Java層十分簡單,只要向在編譯Java代碼時多加一個文件就可以,沒什麼要說的,麻煩的是如果在加入的Java類中有本地

brKVM簡介和編譯

brKVM(K Virtual Machine)是SUN公司的一種主要面向嵌入式設備的小型Java虛擬機,在PC機上也能使用。KVM最大的特點是極為小巧,只有一個可執行文件,大概200K多一點。相應地,KVM的功能也很弱,它只有cldc1.1的

brJ2ME MIDlet(MIDP 2.0)代碼簽名證書申請和使

brVeriSign 和 Thawte 的Java代碼簽名證書可以用於數字簽名運行J2ME MIDlet(MIDP 2.0)代碼,支持目前市面上流行的各種基於Java的手機多媒體和交互應用,運行簽名後的MIDlet Suite就不會彈出煩人的警

brNokia MIDlet(MIDP 2.0)代碼簽名證書申請和 VeriSign 和 Thawte 的 Java代碼簽名證書可以用於數字簽名運行J2ME MIDlet(MIDP 2.0)代碼,支持Nokia(諾基亞)40系列手機和60系列手機等,運行簽名後的MIDlet Suite就不會彈出煩人的警告框

brMIDP 2.0安全機制 與 MIDlet 數字簽名

br本文檔是 WoTrust 根據 Forum Nokia 提供的技術文檔《MIDP 2.0: Tutorial On Signed MIDlets》翻譯整理的,請同時參考此英文原文文檔。請用戶在編寫 MIDlet 和簽名 MIdlet 之前閱

brJava ME平台中的URLEncoder實現類

br這個類是從java.net.URLEncoder修改來的 經測試能夠正常完成URL編碼的工作,在幾部手機上測試過。使用的時候直接調用URLEncoder.encode(中國)即可 如果向服務器端發送。

你的問題需要深入的解答,一半會也說不清!

我可以幫助您!

我的QQ:429608841

加我 給你解答!!!希望能幫助到您,望採納

我的手機寫有JAVA擴展CLDC-1.1/MIDP-2.0是什麼意思啊??

J2ME的術語

MIDP

開放分類: 計算機技術、電腦

MIDP(Mobile Information Device Profile,移動信息設備配置文件)建立在 CLDC 的基礎之上,用來描述手機和尋呼機這樣更加具體化的的無線移動設備。

對於 Java ME 平台,MIDP 定義了一個標準的 Java API 集合,此集合與聯網的受限設備配置 CLDC 一起提供了一個面向移動信息設備(如流動電話、雙向尋呼機和無線個人電腦記事本)的完整 Java ME 應用程序運行環境。

MIDP 提供了以下功能:

·顯示工具箱

·用戶輸入方法

·持久性數據存儲(使用簡單的面向記錄的數據庫模型)

·基於 HTTP 1.1 的網絡(使用 CLDC 通用連接框架)

Java 規範請求 (Java Specification Request, JSR)-37 中定義了 MIDP 1.0 標準。

JSR-118 中定義了 MIDP 2.0 標準。

CLDC

開放分類: 計算機技術、電腦

CLDC(Connected Limited Device Configuration,聯網的受限設備配置)是用來開發在無線設備上運行的應用程序所要用到的一組最小的 API。CLDC 描述了所有無線移動設備所需的一個最小級別的功能集合。

對於 Java ME 平台,CLDC 為流動電話、雙向尋呼機以及類似設備定義了基本配置(Java 語言、虛擬機功能和基本類庫)。這些設備具有以下特性:

·總內存量為 128 KB 到 512 KB。

·具有有限電源,如電池。

·可以連接到網絡。

·具有相對有限的用戶界面,通常只限文本。

CLDC 1.1 是 CLDC 1.0 規範的修訂版本,包含很多新增功能(例如浮點和弱引用支持)以及其他增強功能。

Java 規範請求 (Java Specification Request, JSR) 30 中詳細指定了 CLDC 1.0 的要求。

JSR 139 中詳細指定了 CLDC 1.1 的要求。

J2ME是一種使用Java語言進行嵌入式設備編程的技術,但是嵌入式設備的種類過於繁多,至少有幾百種之多,為了降低編程的複雜度,SUN公司將所有的嵌入式設備分為了兩大類:

1 CDC(連接設備配置)

有穩定的電源供應

設備性能強勁

例如車載設備、機頂盒等。

2 CLDC(連接有限設備配置)

使用電池供電

設備性能有限

其中手機屬於CLDC類別。

上面的說法都是從硬件劃分的角度來說明CLDC的,下面從程序員的角度來理解一下CLDC的概念。其實對於程序員來說,CLDC主要包含三個部分:

1 Java虛擬機(又稱JVM)

這個是所有Java程序運行的基礎。對於手機來說,在手機出廠以前,已經固化在手機中了,出廠了以後就不能進行修改了。

2 一套標準的API實現

該標準的API主要包含java.io、java.lang、java.util包以及javax.microedition.io包中的部分。這個是規範要求必須實現的API,也固化在手機中,不能修改。

3 本地方法實現

在標準的API中,很多都是接口,這些就要求廠商在手機中提供真實的實現,而且很多本地方法也要求手機廠商進行實現。

原創文章,作者:SO9C4,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/130856.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
SO9C4的頭像SO9C4
上一篇 2024-10-03 23:27
下一篇 2024-10-03 23:27

相關推薦

  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發佈。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字符串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字符串中是否存在多個指定字符: 一、字符串遍歷 字符串是Java編程中非常重要的一種數據類型。要判斷字符串中是否存在多個指定字符…

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29
  • Java任務下發回滾系統的設計與實現

    本文將介紹一個Java任務下發回滾系統的設計與實現。該系統可以用於執行複雜的任務,包括可回滾的任務,及時恢復任務失敗前的狀態。系統使用Java語言進行開發,可以支持多種類型的任務。…

    編程 2025-04-29
  • Java 8 Group By 會影響排序嗎?

    是的,Java 8中的Group By會對排序產生影響。本文將從多個方面探討Group By對排序的影響。 一、Group By的概述 Group By是SQL中的一種常見操作,它…

    編程 2025-04-29

發表回復

登錄後才能評論