您的位置:

嵌入式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中,很多都是接口,这些就要求厂商在手机中提供真实的实现,而且很多本地方法也要求手机厂商进行实现。