您当前的位置:首页 > 互联网教程

如何开发Java Card移动支付应用

发布时间:2025-05-23 18:47:38    发布人:远客网络

如何开发Java Card移动支付应用

一、如何开发Java Card移动支付应用

移动支付方案一般分SWP方案和全终端方案,由于利益驱动因素运营商更喜欢SWP方案。

应用协议数据单元(APDU)、传输协议数据单元(TPDU)IC卡的应用越来越广泛,从存储卡到逻辑加密卡,目前 CPU卡已经逐渐在应用中占据主导地位。CPU卡根据通讯协议可分为两种:接触式和非接触式。接触式CPU卡主要采用两种通讯协议:T=0和T=1通讯协议。T=0是异步半双工字符传输协议,T=1是异步半双工块传输协议。目前T=0通讯协议的应用较为广泛,国内外大多数CPU卡都支持该协议,在金融交易中也采用这种通讯协议。

Java Card虚拟机(JCVM)只支持Java程序设计语言的一个有限子集,包括对象、继承、动态对象创建、接口和异常等。

原文转载自:

二、java卡的技术简介

1、在JAVA卡出现之前,智能卡应用的研发是一个复杂漫长的过程。尽管对智能卡的结构大小和通信协议,国际规范 ISO 7816早已规定,但各个卡生产商对智能卡的研制都各不相同。各个卡生产商对自己的智能卡操作都有自己独特的一套指令集。此外,智能卡编程接口(APIs)非常复杂,需要开发人员非常熟悉低层通信接口协议,内存管理和一些智能卡硬件的细节。因此,在开发智能卡应用之前,开发人员就需要花费大量时间来了解智能卡的复杂开发环境,而且在他们研究后会发现并不存在现代化的开发工具(象Visual Studio)。更糟糕的是:对不同的智能卡并没有一个通用的开发环境。每次你要开发一种新的应用,可能你都必须重新了解一种新的开发环境。由于所有的智能卡都是在专门的开发环境中开发出来的,不同的卡的生产商生产出来的相同应用的卡可能并不兼容,这使同一系统中使用不同生产商的卡变得很复杂。

2、智能卡的市场不断扩大,但了解智能卡编程的人员少之又少。智能卡编程的复杂性,不统一性将严重阻碍智能卡的发展。市场的需求为智能卡的发展提出了新的要求。

3、JAVA卡和JAVA卡API的出现使智能卡的编程变得既快又简单,同时这些卡的应用程序(Applet)可以在任何支持JAVA卡API的智能卡上运行。

4、在JAVA卡内有一个能执行JAVA字节码(Applet)的JAVA虚拟机--它提供一整套标准的JAVA卡编程的API,使得开发人员无需了解复杂的智能卡硬件和智能卡专用的技术,就可以进行智能卡应用的开发,从而大大减少开发时间和降低开发难度。据粗略的统计,用JAVA来编程可以比用C语言来编程节约60%的开发时间,如与智能卡特殊的汇编语言来比,这种优势将更为明显。同时由于 JAVA虚拟机的使用,JAVA卡的Applet能够在不同卡片的JCAE(JAVA Card Application Environment)上执行,即透过 JAVA虚拟机的机制来达到跨平台的能力。JAVA是一种面对对象的编程语言,智能卡的基于对象的API大大简化了卡内 Applet与终端或后台服务器的通信。

5、JAVA卡的另一巨大优势是:开发人员可以任意选择他们所熟悉和喜欢的开发工具。由于对 JAVA卡的编程是用JAVA语言,所有几乎当今所有流行的JAVA开发环境,如 VJ++,Vcafe等,都可以被用来进行JAVA卡的开发。正因如此,快速完成和调试 JAVA卡的应用程序也变为了可能。而在这之前,调试卡的应用程序是一个极复杂漫长的过程,因为应用程序首先要被装载到卡的ROM中,而装载到卡的ROM中的程序是无法更新的,所以对一个应用程序的调试将占用大量的时间。同时由于任何 JAVA开发人员都可以变为JAVA卡开发人员,这就为智能卡的发展提供了强有力的人才保证。

6、JAVA卡还有两大优点:支持一卡多用途和重用。支持一卡多用途是指JAVA卡上可以同时存在多个不同的应用。这些应用可以来自同一个卡供应商,也可以来自不同的卡供应商。这样一张JAVA卡就可以完成不同的功能,例如,它可以有电子钱包功能,同时也可以有身份鉴别功能。重用是指JAVA卡上的应用可以根据需要进行删除或重新添加新的应用,而无需更换新的智能卡,这样大大增强智能卡的灵活性。

7、由于JAVA字节码是通过解释器来执行的,所以执行速度比较慢。为提高JAVA卡的执行速度,东方英卡采用32位RISC芯片,大大提高了JAVA卡的执行速度,从而使JAVA卡技术更有竞争力。

三、java开发和java ee 开发的区别

Java SE是Java平台标准版的简称(Java Platform, Standard Edition)(also known as Java 2 Platform),用于开发和部署桌面、服务器以及嵌入设备和实时环境中的Java应用程序。Java SE包括用于开发Java Web服务的类库,同时,Java SE为Java EE提供了基础。

Java SE(Java Platform, Standard Edition,Java标准版)就是基于JDK和JRE的。

Java EE是一种利用Java2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。J2EE技术的基础就是核心Java平台或Java SE,Java EE不仅巩固了标准版中的许多优点,例如“编写一次、随处运行”的特性、方便存取数据库的JDBC API、CORBA技术以及能够在Internet应用中保护数据的安全模式等等,同时还提供了对 EJB(EnterpriseJavaBeans)、Java Servlets API、JSP(Java Server Pages)以及XML技术的全面支持。其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构。

Java EE体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高可靠性以及可扩展性的应用的需求。通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持,完全支持EJB,有良好的向导支持打包和部署应用,添加目录支持,增强了安全机制,提高了性能。

简单理解:java ee开发web程序,需要通过浏览器来访问