java實現用戶登錄注冊功能(用集合框架來實現)


需求:實現用戶登錄注冊功能(用集合框架來實現)

分析:
  A:需求的類和接口
    1.用戶類 UserBean
    2.用戶操作方法接口和實現類 UserDao UserDaoImpl
    3.測試類 UserTest
  B:各個類中的東西
    1.用戶類UserBean:
      a.成員 變量
        (1)用戶名 String username
        (2)密碼 String password
      b.構造方法:
        (1)無參構造方法 UserBean()
        (2)有參構造方法 UserBean(String username,String password)
      c.成員方法
        (1)get()方法
        (2)set()方法
      d.重寫toString()方法
  2.用戶方法操作接口UserDao:
    a.方法:
      (1)注冊方法 registerUser()
      (2)登錄方法 isLognUser()
  3.接口實現類UserDaoImpl:
    a.實現方法
      (1)注冊方法 registerUser()
      (2)登錄方法 isLoginUser()
  4.測試類Test:
    方法:
    main()方法
C:類與類之間的關系
  1.UserDao的實現類是UserDaoImpl.
  2.UserDaoImpl是用來操作UserBean的。
  3.UserTest是用來調用其它幾個類的

分包:
  A:功能划分
  B:模塊划分
  C:先按模塊划分,再按功能划分

目前只能按功能划分:
  用戶類的類包: com.ma.bean
  用戶操作類的接口:com.ma.dao
  用戶操作接口實現類:com.ma.dao.impl
  用戶測試類:com.ma.test

代碼:

用戶基本類:

 
         
package com.ma.bean;
/**
 * 用戶基本類
 * 
 * @author ma
 * @version V1.0
 *
 */
public class UserBean {
	
	//成員變量區
	/**
	 * 用戶名
	 */
	private String username;
	
	/**
	 * 用戶密碼
	 */
	private String password;

	//構造方法
	public UserBean() {
		super();
	}

	public UserBean(String username, String password) {
		super();
		this.username = username;
		this.password = password;
	}

	//成員方法區
	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	@Override
	public String toString() {
		return "UserBean [username=" + username + ", password=" + password + "]";
	}
	
	

}
 
         

  

 

用戶類UserBean的功能接口:

package com.ma.dao;

import com.ma.bean.UserBean;
/**
 * 用戶類UserBean的功能接口
 * 
 * @author ma
 * @version V1.0
 *
 */
public interface UserDao {
	
	/**
	 * 用戶登錄方法
	 * 
	 * @param user  用戶對象
	 * @return boolean 登錄成功返回true,登錄失敗返回false
	 */
	public abstract boolean isLognUser(UserBean user);
	
	/**
	 * 用戶注冊方法
	 * 
	 * @param user 用戶對象
	 * @return boolean 注冊成功返回true,注冊失敗返回false
	 */
	public abstract boolean registerUser(UserBean user);
	
}

   用戶功能 接口UserDao的實現類:

package com.ma.dao.impl;

import java.util.ArrayList;

import com.ma.bean.UserBean;
import com.ma.dao.UserDao;
/**
 * 用戶功能 接口UserDao的實現類
 * 
 * @author ma
 * @version V1.0
 *
 */
public class UserDaoImpl implements UserDao {

	//得到一個集合
	ArrayList<UserBean> arrList = new ArrayList<UserBean>();
	
	@Override
	public boolean isLognUser(UserBean user) {
		//定義一個boolean返回值變量,默認為false
		boolean flag = false;
		
		//遍歷集合,比較數據,判斷是否可以登錄
		for (UserBean userBean : arrList) {
			if (userBean != null) {
				if(userBean.getUsername().equals(user.getUsername())&&userBean.getPassword().equals(user.getPassword())){
					flag = true;
				}
			}
		}
		
		return flag;
	}

	@Override
	public boolean registerUser(UserBean user) {
		boolean flag = true;
		
		arrList.add(user);
		
		return true;
	}

}

  用戶登錄注冊測試類:

package com.ma.test;

import com.ma.bean.UserBean;
import com.ma.dao.UserDao;
import com.ma.dao.impl.UserDaoImpl;

/**
 * 用戶登錄注冊測試類
 * 
 * @author ma
 * @version V1.0
 */
public class UserTest {
	
	public static void main(String[] args) {
		
		//創建一個用戶操作類
		UserDao ud = new UserDaoImpl();
		
		//創建一個UserBean對象
		UserBean user = new UserBean();
		
		//得到數據
		String name = "張三";
		String password = "abc123";
		
		//把數組放入UserBean對象中
		user.setUsername(name);
		user.setPassword(password);
		
		//創建一個UserBean對象
		UserBean user1 = new UserBean("張三","abc123");

		//調用注冊方法
		if(ud.registerUser(user)){
			System.out.println("注冊成功");
			//調用登錄方法
			boolean result = ud.isLognUser(user1);
			if(result){
				System.out.println("登錄成功");
			}else{
				System.out.println("用戶名和密碼不匹配。登錄失敗");
			}
		}else{
			System.out.println("注冊失敗");
		}
			
		
	}
	
}

  輸出結果:

    注冊成功
    登錄成功

可以換下參數測試下。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM