Package javax.smartcardio


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的一个简单示例是:
      // 显示可用终端列表
      TerminalFactory factory = TerminalFactory.getDefault();
      List<CardTerminal> terminals = factory.terminals().list();
      System.out.println("终端: " + terminals);
      // 获取第一个终端
      CardTerminal terminal = terminals.get(0);
      // 与卡建立连接
      Card card = terminal.connect("T=0");
      System.out.println("卡: " + card);
      CardChannel channel = card.getBasicChannel();
      ResponseAPDU r = channel.transmit(new CommandAPDU(c1));
      System.out.println("响应: " + toString(r.getBytes()));
      // 断开连接
      card.disconnect(false);
 
自版本:
1.6
  • Class
    Description
    ATR
    智能卡的复位响应字节。
    已建立连接的智能卡。
    与智能卡的逻辑通道连接。
    在与智能卡堆栈或卡本身通信期间发生错误时抛出的异常。
    当应用程序尝试与没有插入卡的终端建立连接时抛出的异常。
    智能卡操作的权限。
    智能卡终端,有时称为智能卡读卡器。
    TerminalFactory支持的终端集合。
    CardTerminal的属性枚举。
    遵循ISO/IEC 7816-4定义的命令APDU。
    ISO/IEC 7816-4中定义的响应APDU。
    CardTerminal对象的工厂。
    TerminalFactorySpi类定义了服务提供者接口。