最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于IO版的用戶登錄注冊實例(Java)

 更新時間:2017年09月18日 09:08:17   作者:kamaria  
下面小編就為大家?guī)硪黄贗O版的用戶登錄注冊實例(Java)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

今天學的是用戶登錄注冊功能。

4個包:

itcast.cn.user包 User.java 用戶類,描述用戶基本信息,包括成員變量,無參構造函數(shù),帶參構造(可有可無).get和set方法

package itcast.cn.day22;
/*
 * 用戶基本描述包類
 */

public class User {
 private int userName;
 private int passWord;
 public User(){
  super();
 }
 public User(int userName,int passWord){
  super();
  this.userName=userName;
  this.passWord=passWord;  
 }
 public int getUserName() {
  return userName;
 }
 public void setUserName(int userName) {
  this.userName = userName;
 }
 public int getPassWord() {
  return passWord;
 }
 public void setPassWord(int passWord) {
  this.passWord = passWord;
 }

}

tcast.cn.uerDao包 UserDao.java 定義一個接口,聲明登錄注冊功能

public interface UserDao { 
 2 public abstract boolean islogin( String userName, String passWord);
 3 public abstract void register(User user);
 4 }

itcast.cn.userDaoImpl包 UserDaoImpl.java 實現(xiàn)UserDao接口,具體描述登錄注冊方法。

需要注意的是:在登錄方法中,返回值boolean flag = true 即登錄成功

在實現(xiàn)過程中需要注意的一點是:全局變量br,bw的聲明一定要放在try大括號外

IO版本實現(xiàn)方法代碼如下:

public class UserDaoImpl implements UserDao{

@Override
public boolean islogin(String userName, String passWord) {
boolean flag = false;
BufferedReader br = null;
try {
br = new BufferedReader(new FileReader("user,txt"));
String line = null;

while((line=br.readLine())!=null){
String[] datas = line.split("=");
if(datas[0].equals(userName)&&datas[1].equals(passWord)){
flag = true;
break;
}
}
} 
catch (FileNotFoundException e) {
//e.printStackTrace();
System.out.println("用戶信息獲取失敗");
}catch (IOException e) {
//e.printStackTrace();
System.out.println("用戶登錄失敗");
}
if(br!=null){
try {
br.close();
} catch (IOException e) {
//e.printStackTrace();
System.out.println("用戶釋放資源失敗");
}
}
return flag;
}

@Override
public void register(User user) {
BufferedWriter bw = null; 
try {
bw = new BufferedWriter(new FileWriter("user.txt"));
bw.write(user.getUserName()+"="+user.getPassWord());
bw.newLine();
} catch (IOException e) {
//e.printStackTrace();
System.out.println("注冊失敗");
}finally{
if(bw!=null){
try {
bw.close();
} catch (IOException e) {
//e.printStackTrace();
System.out.println("注冊釋放資源失敗");
}
}
}
57}
}

itcast.cn.usertest包 UserTest類 測試類

在這個類中,存在一個未解決的問題:

scanner函數(shù)無法一個一個的輸入,另外構造方法中的(true)需要多看。

package itcast.cn.day22;

import java.util.Scanner;

public class UserTest {
public static void main(String[] args) {
//歡迎界面
while(true){
UserDao ud = new UserDaoImpl();
System.out.println("*****歡迎進入*****");
System.out.println("登錄請輸入1");
System.out.println("注冊請輸入2");
System.out.println("返回請輸入3");

System.out.println("請輸入你的選擇:");
Scanner sc = new Scanner(System.in);
int choice = sc.nextInt();
switch(choice){
case 1:
System.out.println("*****登錄界面*****************");
//Scanner sc1 = new Scanner(System.in);
System.out.println("請輸入用戶名:");
String userName = sc.nextLine();
System.out.println("請輸入密碼:");
String passWord = sc.nextLine();

boolean flag = ud.islogin(userName, passWord);
if(flag){
System.out.println("登錄成功");
break;
}else{
System.out.println("用戶名或密碼錯誤");
}

case 2:
System.out.println("*****注冊界面****************");
System.out.println("請輸入用戶名:");
String userName1 = sc.nextLine();
System.out.println("請輸入密碼:");
String passWord1 = sc.nextLine();

User user = new User();
user.getUserName();
user.getPassWord();
ud.register(user);
System.out.println("注冊成功");
break;
case 3:
default:
System.out.println("謝謝使用,歡迎下次再來");
System.exit(0);
break;
}
}
}
}

以上這篇基于IO版的用戶登錄注冊實例(Java)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Java Ehcache緩存框架入門級使用實例

    Java Ehcache緩存框架入門級使用實例

    這篇文章主要介紹了Java Ehcache緩存框架入門級使用實例,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-08-08
  • java算法之靜態(tài)內部類實現(xiàn)雪花算法

    java算法之靜態(tài)內部類實現(xiàn)雪花算法

    這篇文章主要介紹了java算法之靜態(tài)內部類實現(xiàn)雪花算法,對算法感興趣的同學,一定要看一下
    2021-05-05
  • Java java.lang.ExceptionInInitializerError 錯誤如何解決

    Java java.lang.ExceptionInInitializerError 錯誤如何解決

    這篇文章主要介紹了 Java java.lang.ExceptionInInitializerError 錯誤如何解決的相關資料,需要的朋友可以參考下
    2017-06-06
  • 大數(shù)據Kafka:消息隊列和Kafka基本介紹

    大數(shù)據Kafka:消息隊列和Kafka基本介紹

    本文對消息隊列的應用場景,優(yōu)缺點,消息隊列的兩種方式,常見的消息隊列產品以及Kafka的特點和應用場景做了詳細的講解,需要的朋友可以參考下,希望可以對大家有所幫助
    2021-08-08
  • shiro編碼和加密代碼詳解

    shiro編碼和加密代碼詳解

    Shiro提供了base64和16進制字符串編碼/解碼的API支持,方便一些編碼解碼操作。下面通過實例代碼給大家詳解shiro編碼和加密知識,感興趣的朋友一起看看吧
    2017-09-09
  • SSM?Mapper文件查詢出返回數(shù)據查不到個別字段的問題

    SSM?Mapper文件查詢出返回數(shù)據查不到個別字段的問題

    這篇文章主要介紹了SSM?Mapper文件查詢出返回數(shù)據查不到個別字段的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • Java?C++題解leetcode672燈泡開關示例

    Java?C++題解leetcode672燈泡開關示例

    這篇文章主要為大家介紹了Java?C++題解leetcode672燈泡開關示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09
  • Mybatis MapperScannerConfigurer自動掃描Mapper接口生成代理注入到Spring的方法

    Mybatis MapperScannerConfigurer自動掃描Mapper接口生成代理注入到Spring的方法

    這篇文章主要給大家介紹了關于Mybatis MapperScannerConfigurer自動掃描將Mapper接口生成代理注入到Spring的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2019-03-03
  • 一文徹底理清SpringBoot CURD處理邏輯、順序

    一文徹底理清SpringBoot CURD處理邏輯、順序

    這篇文章主要給大家介紹了關于如何一文徹底理清SpringBoot CURD處理邏輯、順序的相關資料,CURD是一個數(shù)據庫技術中的縮寫詞,一般的項目開發(fā)的各種參數(shù)的基本功能都是CURD,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-10-10
  • debug模式遲遲不能啟動問題及解決

    debug模式遲遲不能啟動問題及解決

    在使用Debug模式進行代碼測試時,由于設置了過多的斷點,導致程序加載緩慢甚至無法啟動,解決此問題的方法是取消不必要的斷點,通過IDE的斷點管理功能,檢查并移除問題斷點,從而優(yōu)化調試效率,分享此經驗希望能幫助遇到相同問題的開發(fā)者
    2022-11-11

最新評論

海宁市| 军事| 搜索| 桐梓县| 高雄市| 乌兰浩特市| 梨树县| 万宁市| 侯马市| 合阳县| 吉木乃县| 阿拉善右旗| 丹江口市| 万安县| 隆尧县| 佛学| 屯昌县| 饶河县| 陇南市| 安顺市| 瑞金市| 松潘县| 西乌珠穆沁旗| 鄂托克旗| 西宁市| 齐齐哈尔市| 乌兰县| 葫芦岛市| 蕉岭县| 皋兰县| 法库县| 东宁县| 临高县| 建水县| 庆城县| 洪洞县| 绥芬河市| 遵义县| 大竹县| 黔江区| 肇庆市|