Package javax.smartcardio
Java™智能卡I / O API
该规范描述了由JSR 268定义的Java智能卡I / O API。 它定义了一个Java API,用于使用ISO / IEC 7816-4 APDU与智能卡进行通信。 因此,它允许Java应用程序与智能卡上运行的应用程序交互,以存储和检索卡上的数据等。 API由包javax.smartcardio
类定义。 它们可分为以下几类:
- 描述相应智能卡结构的类
- ATR , CommandAPDU , ResponseAPDU
- 工厂获得实施
- TerminalFactory
- 卡和终端功能的主要类
- CardTerminals , CardTerminal , Card , CardChannel
- 支持权限和异常类
- CardPermission , CardException , CardNotPresentException
- 服务提供者界面,不由应用程序直接访问
- TerminalFactorySpi
API示例
使用API的一个简单示例是: // show the list of available terminals
TerminalFactory factory = TerminalFactory.getDefault();
List<CardTerminal> terminals = factory.terminals().list();
System.out.println("Terminals: " + terminals);
// get the first terminal
CardTerminal terminal = terminals.get(0);
// establish a connection with the card
Card card = terminal.connect("T=0");
System.out.println("card: " + card);
CardChannel channel = card.getBasicChannel();
ResponseAPDU r = channel.transmit(new CommandAPDU(c1));
System.out.println("response: " + toString(r.getBytes()));
// disconnect
card.disconnect(false);
- 从以下版本开始:
- 1.6
-
类摘要 类 描述 ATR 智能卡的应答复位字节。Card 已建立连接的智能卡。CardChannel 与智能卡的逻辑通道连接。CardPermission 智能卡操作的权限。CardTerminal 智能卡终端,有时也称为智能卡读卡器。CardTerminals TerminalFactory支持的终端集。CommandAPDU 遵循ISO / IEC 7816-4中定义的结构的命令APDU。ResponseAPDU ISO / IEC 7816-4中定义的响应APDU。TerminalFactory CardTerminal对象的工厂。TerminalFactorySpi TerminalFactorySpi类定义服务提供者接口。 -
枚举摘要 Enum 描述 CardTerminals.State 枚举CardTerminal的属性。 -
异常摘要 异常 描述 CardException 与智能卡堆栈或卡本身通信期间发生的错误的例外情况。CardNotPresentException 当应用程序尝试与没有卡的终端建立连接时抛出异常。