UserServiceImpl.java 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. package J20250802.demo04;
  2. import java.io.File;
  3. import java.io.FileReader;
  4. import java.io.FileWriter;
  5. import java.io.IOException;
  6. import java.util.Properties;
  7. /**
  8. * @author WanJl
  9. * @version 1.0
  10. * @title UserServiceImpl
  11. * @description
  12. * @create 2025/8/2
  13. */
  14. public class UserServiceImpl implements UserService{
  15. /**
  16. * 用户注册
  17. *
  18. * @param user
  19. */
  20. @Override
  21. public void register(User user) {
  22. try {
  23. //File创建File文件对象
  24. File file=new File("D:/"+user.getUsername()+".properties");
  25. //先查一次又没有这个文件
  26. if (file.exists()){
  27. throw new UsernameDuplicateException("用户已存在");
  28. }
  29. //没有文件就创建
  30. file.createNewFile();
  31. //写入数据到文件
  32. FileWriter fw=new FileWriter(file);
  33. Properties prop=new Properties();
  34. //设置密码
  35. prop.setProperty("password", user.getPassword());
  36. //将集合的元素写入到文件
  37. prop.store(fw,null);
  38. } catch (IOException e) {
  39. e.printStackTrace();
  40. }
  41. }
  42. /**
  43. * 用户登录
  44. *
  45. * @param username
  46. * @param password
  47. * @return 登录结果
  48. */
  49. @Override
  50. public String login(String username, String password) {
  51. //File创建File文件对象
  52. File file=new File("D:/"+username+".properties");
  53. //判断是否存在这个文件,不存在则抛出异常
  54. if (!file.exists()){
  55. throw new UsernameDuplicateException("用户不存在");
  56. }
  57. try {
  58. Properties prop=new Properties();
  59. prop.load(new FileReader(file));
  60. String pwd = prop.getProperty("password");
  61. return pwd.equals(password)?"登录成功":"登录失败,密码错误";
  62. } catch (IOException e) {
  63. e.printStackTrace();
  64. }
  65. return "登录失败,密码错误";
  66. }
  67. }