关于服务器上保存用户名和密码问题? 我现在在做一个方案, C/S架构,客户端的用户怎么实现用文本文件在服务器上保存用户名和密码啊?刚接触JAVA,请大家不吝赐教! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你的问题是啥,不清晰。是不会Java操作文件的API?还是担心密码容易泄漏?还是其它什么问题? public User doRegis(String username, String password) { // 验证用户名和密码 for (User user : userList) { if (user.getUsername().equals(username)) {//有已经注册的用户名,返回空,经另一个对象包装后返回重名信息 return null; } else { ((LinkedList<User>) userList).addLast(user);// 把新注册的用户信息写进用户集合里 return user; } } }}以上是注册部分的代码,就不知该如何把这个集合写到服务器的文件里? 哦,如果是客户端访问服务器端的话,可以用WebService方式;简易点也可以直接模拟HTTP请求来做。 一般都是用jdbc保存到数据库 这样读取查找都方便 这两天在完善着代码,我发现用文档来存储的话几乎写不下去?利用输入输出流来进行传输,如果用字符型ButteredWriter来写的话会把原来用户的密码覆盖掉;用ButteredOutputStream来写的话其带有一方法可在文件末尾续写,但这个类处理的是数据,又不可行,都是写到最后了才发现行不通,头晕哦! LZ要在服务器端用文本文档存账户讯息对吧?用BufferedReader先把现有的内容读出来,然后把新的信息加上去然后再用BufferedWriter写回去……虽然是很麻烦但肯定能成……我以前就这么干过 这个希望对你有帮助public class InputTxt { public static void main(String args[]) throws Exception{ /* * 此类的作用是为了将数据写入的文本文件中结尾 */ File file=new File("student.txt"); //根据给定的文件名以及指示是否附加写入数据的 boolean true表示写道文件的最后 值来构造 FileWriter 对象。 FileWriter fw=new FileWriter(file,true); Scanner sc=new Scanner(System.in); String ss=sc.next();//输入 ss=ss+"\r"; fw.write(ss.toCharArray()); fw.flush(); fw.close(); sc.close(); }} 噢,把文件就传输到FileWriter里,不要包装到BufferedWriter,的确可以解决这个问题,谢谢! c/s架构,密码不保存在客户端把,是保存在服务端的数据库里,登陆的时候用socket把账号密码传到服务端判断,然后返回判断结果。。 是的,修改用户信息真的很麻烦,用xml文档可以处理这个问题,但是代码量很大,想着就后怕 既然只是个作业,那就直接每次都全部重写吧,也没啥想头了;反正数据规模肯定不大。把所有账户密码信息读取到HashMap中,Key就是帐户名,Value就是密码。需要更新或追加的,就直接操作HashMap,然后再把整个HashMap内容回写文件中。 噢,是啊,我当初怎么就没想到用HashMap来实现呢,它的特性正好吻合。我现在用MML来做,还没调试好,按道理应该能成功。 XML也行,半结构化数据,也很方便使用。此外还可以使用Apache的Configuration组件,把用户名密码当properties配置文件来使用。总之招数很多,选择你认为简便的,开发维护上高效的。 求在校生实训项目! JAVA问题 java语法问题 超级奇怪的序列化问题 【求助】高人指点:如何使用TimeSeries 【JFreeChart1.0.5版本中】 ####我想做一个操作符(加减乘除)的循环,该怎么做~~ 请问swing中如何改变按钮大小 如何计算程序的运行时间? 怎么在button上加mouseDrag事件? 高分 求一句话的翻译! 谢谢! 关于JAVA的编译问题 求解!!! XML文档中的疑惑?
// 验证用户名和密码
for (User user : userList) {
if (user.getUsername().equals(username)) {//有已经注册的用户名,返回空,经另一个对象包装后返回重名信息
return null;
} else {
((LinkedList<User>) userList).addLast(user);// 把新注册的用户信息写进用户集合里
return user;
}
}
}
}以上是注册部分的代码,就不知该如何把这个集合写到服务器的文件里?
用BufferedReader先把现有的内容读出来,然后把新的信息加上去然后再用BufferedWriter写回去……虽然是很麻烦但肯定能成……我以前就这么干过
public class InputTxt {
public static void main(String args[]) throws Exception{
/*
* 此类的作用是为了将数据写入的文本文件中结尾
*/
File file=new File("student.txt");
//根据给定的文件名以及指示是否附加写入数据的 boolean true表示写道文件的最后 值来构造 FileWriter 对象。
FileWriter fw=new FileWriter(file,true);
Scanner sc=new Scanner(System.in);
String ss=sc.next();//输入
ss=ss+"\r";
fw.write(ss.toCharArray());
fw.flush();
fw.close();
sc.close();
}}
我现在用MML来做,还没调试好,按道理应该能成功。