
方法和详细的 *** 作步骤如下:
1、第一步,打开程序后,可以在程序左侧看到“数据库列表”,展开以查看打开的所有数据库,见下图,转到下面的步骤。
2、第二步,执行完上面的 *** 作之后,单击.db文件,然后将.db直接拖到程序窗口中,见下图,转到下面的步骤。
3、第三步,执行完上面的 *** 作之后,显示“注册数据库”,单击[确定]按钮,以便可以使用SQLiteDeveloper来管理此.db文件,见下图,转到下面的步骤。
4、第四步,执行完上面的 *** 作之后,展开左侧的数据库列表,然后找到刚注册的.db文件, 在右键菜单中单击[打开数据库]选项,见下图,转到下面的步骤。
5、第五步,执行完上面的 *** 作之后,可以看到此.db文件中有很多数据表,选择其中一个,右键单击[查询数据]选项,可以查看此表的数据内容,见下图,转到下面的步骤。
6、第六步,执行完上面的 *** 作之后,记住在读取数据库后关闭数据库, 否则,此.db文件将被程序占用,并且无法移动或删除,见下图。这样,就解决了这个问题了。
问题解决思路:将配置文件用户相关的信息(例如:密码)进行加密使其以密文形式存在,进行初始化连接池的时候进行解密 *** 作,达到成功创建连接池的目的。Tomcat默认使用DBCP连接池(基于common-pool的一种连接池实现),可在下载commons-dbcp源码包commons-dbcp-1.4-src.zip,对org.apache.commons.dbcp.BasicDataSourceFactory类修改,把数据库密码字段(加密后的密文)用解密程序解密,获得解密后的明文即可。具体实现:1.修改org.apache.commons.dbcp.BasicDataSourceFactory类文件找到数据源密码设置部分value=properties.getProperty(PROP_PASSWORD)if(value!=null){dataSource.setPassword(value)}修改为:value=properties.getProperty(PROP_PASSWORD)if(value!=null){dataSource.setPassword(Encode.decode(value))}将配置文件中的“密码”(加密后的结果)取出,调用加解密类中的解密方法Encode.decode(value)进行解密。2.加密类Encode.java,本例中使用加密解密模块比较简单只是用来说明问题,密文为明文的十六进制串。publicclassEncode{//编码-普通字符串转为十六进制字符串publicstaticStringencode(Stringpassword){Stringresult=“”byte[]psd=password.getBytes()for(inti=0ipassword696e65743231urljdbc:oracle:thin:@127.0.0.1:1521:orcldriverClassNameoracle.jdbc.driver.OracleDriverusernamewanfang4.将修改后的BasicDataSourceFactory.java和新添加的Encode.java编译后的class类文件重新打包进commons-dbcp-1.4.jar,将该包拷贝进tomcat下的common/lib目录中,重启tomcat。此时tomcat下部署的应用在连接数据源的时候都可以在不暴露密码明文的情况下进行连接。转载,仅供参考。欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)