我是Java的新手,我正在从事一个项目。
我想知道你是否可以在编译的java程序中而不是在文件中存储字符串..我已经可以使用JDBC查询和访问数据库了。
我希望有一个特殊的密钥对每个用户都是唯一的,但我不希望用户可以访问它。一旦你重新启动计算机,那个字符串仍然会被保存。这甚至可能吗?我不确定这是怎么可能的..
我感谢任何帮助!
答案 0 :(得分:2)
通常(但不总是)编译的java程序以.jar(或.war或.ear)的形式发布。这些是压缩'存档'包含java类文件和运行应用程序所需的其他东西的文件。
.jar只是一个zip文件。用户可以使用Windows,Linux,Mac OS的内置功能解压缩或读取其内容。因此,虽然可以将数据写入.jar,但用户可以很容易地访问它,甚至可以很容易理解。
答案 1 :(得分:1)
特殊钥匙?那么你最简单的解决方案就是创建一个偶数系列或奇数,这对每个用户来说都是不同的。
现在用于存储数据,您可以将数据保存在数据库或文本文件中, 保存在文本文件中就像这样
首先导入此
import java.io.*;
以下是在文本文件中创建和保存数据的代码。
int userSpecialkey = 123;
File f = new File("FileName.txt");
f.createNewFile();
BufferedWriter bw = new BufferedWriter(new FileWriter(f));
bw.write(userSpecialkey);
bw.close();
一个简单的解决方案,对于加密数据,您可以将密码sting更改为char数组,然后为每个索引添加一些值
String name = "shady";
String password = "OnePunchMan";
char[] encryptingPassword = password.toCharArray();
for(int i=0; i < encryptingPassword.length; i++){
encryptingPassword[i] += '5';
}
这会将char更改为新的char, 用于解密
for(int i=0; i < encryptingPassword.length; i++){
encryptingPassword[i] -= '5';
}
`