Java中的 KeyStore deleteEntry() 方法及示例
Java.security.KeyStore类的deleteEntry(String alias)方法用于删除请求的别名的条目。
句法:
public final void deleteEntry(String alias)
throws KeyStoreException
参数:该方法将别名的名称作为要删除条目的String类型的参数查找。
返回值:此方法没有任何返回值。
异常:如果您不初始化此密钥库,此方法将引发KeyStoreException 。
注意:本文中的所有程序都不会在在线 IDE 上运行,因为不存在“privatekey”密钥库。您可以在系统上的Java编译器上检查此代码。要检查此代码,请在您的系统上创建一个密钥库“privatekey”并设置您自己的密钥库密码以访问该密钥库。
以下是说明deleteEntry()方法的示例:
示例 1:
// Java program to demonstrate
// getInstance() method
import java.security.*;
import java.security.cert.*;
import java.util.*;
import java.io.*;
public class GFG {
public static void main(String[] argv)
{
try {
// creating Enumeration object
// and initializing with null
Enumeration e = null;
// creating the object of MessageDigest
// and getting instance
// By using getInstance() method
KeyStore sr = KeyStore.getInstance("JKS");
// keystore password is require to access keystore
char[] pass = ("123456").toCharArray();
// creating and initializing
// object of InputStream
InputStream is
= new FileInputStream(
"f:/java/private key.store");
// initializing keystore object
sr.load(is, pass);
// getting the list of aliases
// using aliases() method
e = sr.aliases();
// display the result
System.out.println("List of all the alias"
+ " present before deletion");
while (e.hasMoreElements()) {
System.out.print(e.nextElement() + " ");
System.out.println();
}
// delete the entry having alias name htttp
// using deleteEntry method
sr.deleteEntry("htttp");
// getting the list of aliases
// using aliases() method
e = sr.aliases();
// display the result
System.out.println("\nList of all the alias"
+ " present after deletion");
while (e.hasMoreElements()) {
System.out.print(e.nextElement() + " ");
System.out.println();
}
}
catch (NoSuchAlgorithmException e) {
System.out.println("Exception thrown : " + e);
}
catch (NullPointerException e) {
System.out.println("Exception thrown : " + e);
}
catch (KeyStoreException e) {
System.out.println("Exception thrown : " + e);
}
catch (FileNotFoundException e) {
System.out.println("Exception thrown : " + e);
}
catch (IOException e) {
System.out.println("Exception thrown : " + e);
}
catch (CertificateException e) {
System.out.println("Exception thrown : " + e);
}
}
}
输出:
List of all the alias present before deletion
ftpkey
htttp
List of all the alias present after deletion
ftpkey
示例 2:对于
// Java program to demonstrate
// getInstance() method
import java.security.*;
import java.security.cert.*;
import java.util.*;
import java.io.*;
public class GFG {
public static void main(String[] argv)
{
try {
// creating Enumeration object
// and initializing with null
Enumeration e = null;
// creating the object of MessageDigest
// and getting instance
// By using getInstance() method
KeyStore sr = KeyStore.getInstance("JKS");
// initializing keystore object
// sr.load(is, pass);
// getting the list of aliases
// using aliases() method
e = sr.aliases();
// display the result
System.out.println("List of all the alias "
+ "present before deletion");
while (e.hasMoreElements()) {
System.out.print(e.nextElement() + " ");
System.out.println();
}
// delete the entry having alias name htttp
// using deleteEntry method
sr.deleteEntry("htttp");
// getting the list of aliases
// using aliases() method
e = sr.aliases();
// display the result
System.out.println("\nList of all the alias"
+ " present after deletion");
while (e.hasMoreElements()) {
System.out.print(e.nextElement() + " ");
System.out.println();
}
}
catch (NullPointerException e) {
System.out.println("Exception thrown : " + e);
}
catch (KeyStoreException e) {
System.out.println("Exception thrown : " + e);
}
}
}
输出:
Exception thrown :
java.security.KeyStoreException:
Uninitialized keystore
参考: https://docs.oracle.com/javase/9/docs/api/ Java/security/KeyStore.html#deleteEntry-java.lang.String-