注册表是一个树状结构,由5个分支组成:
HKEY_CLASSES_ROOT,存放系统注册过的文件类型;
HKEY_CURRENT_USER,存放正在使用计算机的用户有关的信息;
HKEY_LOCAL_MACHINE,存放与本机有关的信息;
HKEY_USER,存放在本机上登陆过的所有用户的信息;
HKEY_CURRENT_CONFIG,存放计算机的当前配置.
代码:
- <%@ page language="java" import="java.util.prefs.Preferences" pageEncoding="UTF-8"%>
- <jsp:directive.page import="java.util.prefs.BackingStoreException"/>
- <%
- String path = request.getContextPath();
- String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
- %>
- <!DOCTYPE HTML PUBLIC "-//W//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <base href="<%=basePath%>">
- <title>访问注册表</title>
- </head>
- <body>
- <%
- String items[]={"item1","item2","item3"};
- String values[]={"value1","value2","value3"};
- //创建/com/foo/bar节点
- Preferences preferences=Preferences.userRoot().node("/com/foo/bar");
- //用put方法写键值对到注册表
- for(int i=0;i<items.length;i++){
- preferences.put(items[i],values[i]);
- }
- //用get方法读取注册表中的值,并输出到控制台
- try{
- String keys[]=preferences.keys();
- for(int i=0,n=keys.length;i<n;i++){
- System.out.println(keys[i]+":"+preferences.get(keys[i],"NULL"));
- }
- }catch(BackingStoreException e){
- e.printStackTrace();
- }
- //如过要看到注册表中的变化,清将下面的代码注释
- try{
- preferences.removeNode();
- System.out.println("已经将刚才写入注册表的信息成功删除!");
- }catch(BackingStoreException e){
- e.printStackTrace();
- }
- %>
- </body>
- </html>
转载于:https://blog.51cto.com/huqianhao/953014