程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> java書店體系卒業設計 用戶模塊(2)

java書店體系卒業設計 用戶模塊(2)

編輯:關於JAVA

java書店體系卒業設計 用戶模塊(2)。本站提示廣大學習愛好者:(java書店體系卒業設計 用戶模塊(2))文章只能為提供參考,不一定能成為您想要的結果。以下是java書店體系卒業設計 用戶模塊(2)正文


本文實例為年夜家分享了java書店體系卒業設計第二篇,供年夜家參考,詳細內容以下

1、用戶治理(user.txt)

字段名溫柔序

解釋:個中的type為int類型,用來表現操感化戶的類型。
1——表現為admin,可以停止全體操作
2——表現為能操作圖書模塊的人員
3——表現為能操作進貨模塊的人員
4——表現為能操作發賣模塊的人員
5——表現為能操作庫存模塊的人員


type用了列舉完成

package cn.hncu.bookStore.user.common;
public enum UserTypeEnum {
 AdMIN(1,"超等治理員"),BOOK(2,"圖書治理員"),IN(3,"進貨治理員"),OUT(4,"發賣治理員"),STOCK(5,"庫存治理員");
 private final int type;
 private final String name;
 UserTypeEnum(int type,String name){//默許private
  this.name =name;
  this.type=type;
 }
 public int getType() {
  return type;
 }
 public String getName() {
  return name;
 }
 public static int getTypeByName(String name){
  for(UserTypeEnum utm:UserTypeEnum.values()){
   if(utm.getName().equals(name.trim())){
    return utm.getType();
   }
  }
  throw new IllegalArgumentException("沒有該\""+name+"\"對應的用戶類型");//不法參數異常
 }
 public static String getNameByType(int type){
  for(UserTypeEnum utm:UserTypeEnum.values()){
   if(utm.getType()==type){
    return utm.getName();
   }
  }

  throw new IllegalArgumentException("沒有該\""+type+"\"對應的用戶類型");//不法參數異常
 }

}

package cn.hncu.bookStore.user.vo;
import java.io.Serializable;
import cn.hncu.bookStore.user.common.UserTypeEnum;
/**
 * 
 *@author<a href="mailto:[email protected]">xzm</a>
 */
public class UserModel implements Serializable{
 private static final long serialVersionUID = 1L;
 private String uuid,name,pwd;//用戶編號,用戶稱號,用戶暗碼
 private int type;//用戶類型
 public UserModel() {
 }
 public String getUuid() {
  return uuid;
 }
 public void setUuid(String uuid) {
  this.uuid = uuid;
 }
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
 public String getPwd() {
  return pwd;
 }
 public void setPwd(String pwd) {
  this.pwd = pwd;
 }
 public int getType() {
  return type;
 }
 public void setType(int type) {
  this.type = type;
 }
 @Override
 public int hashCode() {
  final int prime = 31;
  int result = 1;
  result = prime * result + ((uuid == null) ? 0 : uuid.hashCode());
  return result;
 }
 @Override
 public boolean equals(Object obj) {
  if (this == obj)
   return true;
  if (obj == null)
   return false;
  if (getClass() != obj.getClass())
   return false;
  UserModel other = (UserModel) obj;
  if (uuid == null) {
   if (other.uuid != null)
    return false;
  } else if (!uuid.equals(other.uuid))
   return false;
  return true;
 }
 @Override
 public String toString() {
  return uuid + "," + name +"," + UserTypeEnum.getNameByType(type);
 }
}

package cn.hncu.bookStore.user.vo;
public class UserQueryModel extends UserModel{
 private static final long serialVersionUID = 1L;
}

dao層:

package cn.hncu.bookStore.user.dao.dao;

import java.util.List;

import cn.hncu.bookStore.user.vo.UserModel;
import cn.hncu.bookStore.user.vo.UserQueryModel;

public interface UserDAo {

 /**
  * 注冊一個新用戶,假如該用戶存在,則不克不及創立
  * @param user
  * 待創立的用戶
  * @return
  * 假如創立勝利,則前往true,不然前往false
  */
 public boolean create(UserModel user);
 /**
  * 刪除一個用戶,假如該用戶不存在,則刪除掉敗
  * @param uuid
  * 待刪除用戶的uuid
  * @return
  * 假如刪除勝利則前往true,不然前往false
  */
 public boolean delete(String uuid);
 /**
  * 更新用戶信息,假如用戶不存在,則不克不及更新
  * @param user
  * 待更新信息的用戶
  * @return
  * 假如更新勝利前往true,不然前往false
  */
 public boolean update(UserModel user);
 /**
  * 查詢一個用戶的數據
  * @param uuid
  * 待查詢信息的用戶編號
  * @return
  * 假如用戶存在,前往指定 uuid的用戶對象,不然前往null
  */
 public UserModel getSingle(String uuid);
 /**
  * 依據查詢值對象束縛的前提,前往一切知足user的用戶對象聚集
  * @param user
  * 查詢值對象
  * @return
  * 假如有知足查詢值對象束縛的前提的用戶,則前往用戶對象聚集,不然前往空聚集
  */
 public List<UserModel> getByCondition(UserQueryModel user);
 /**
  * 獲得文件中一切用戶對象
  * @return
  * 前往文件中一切用戶對象
  */
 public List<UserModel> getAll();
}

package cn.hncu.bookStore.user.dao.impl;

import java.util.ArrayList;
import java.util.List;

import cn.hncu.bookStore.user.dao.dao.UserDAo;
import cn.hncu.bookStore.user.vo.UserModel;
import cn.hncu.bookStore.user.vo.UserQueryModel;
import cn.hncu.bookStore.utils.FileIOUtil;

public class UserDAOFileImpl implements UserDAo {

 private final static String FILE_NAME="a.txt";
 @Override
 public boolean create(UserModel user) {
  if(user==null){//假如待注冊的用戶信息為null,則不克不及注冊,前往false
   return false;
  }
  List<UserModel> list=getAll();//獲得文件中已存在的一切用戶對象
  for(UserModel u:list){//遍歷
   if(u.getUuid().equals(user.getUuid())){//假如此用戶已存在,則不克不及注冊
    return false;
   }
  }
  //經由下面的遍歷,解釋user不存在,則可以注冊
  list.add(user);
  return FileIOUtil.writeToFile(list, FILE_NAME);
 }

 @Override
 public boolean delete(String uuid) {
  List<UserModel> list=getAll();
  for(int i=0;i<list.size();i++){//遍歷
   UserModel u=list.get(i);
   if(u.getUuid().equals(uuid)){
    list.remove(i);//刪除
    return FileIOUtil.writeToFile(list, FILE_NAME);
   }
  }
  return false;
 }

 @Override
 public boolean update(UserModel user) {
  List<UserModel> list=getAll();
  for(int i=0;i<list.size();i++){
   UserModel u=list.get(i);
   if(u.getUuid().equals(user.getUuid())){
    list.set(i, user);//重置編號為user.getUuid()的用戶
    return FileIOUtil.writeToFile(list, FILE_NAME);
   }
  }
  return false;
 }

 @Override
 public UserModel getSingle(String uuid) {
  List<UserModel> list=getAll();
  for(UserModel u:list){
   if(u.getUuid().equals(uuid)){
    return u;
   }
  }
  return null;
 }

 @Override
 public List<UserModel> getByCondition(UserQueryModel user) {

  List<UserModel> list=getAll();
  List<UserModel> reslist=new ArrayList<UserModel>();
  for(UserModel u:list){
   if(user.getUuid()!=null && user.getUuid().trim().length()>0){
    if(!user.getUuid().trim().equals(u.getUuid())){
     continue;
    }
   }
   if(user.getName()!=null && user.getName().trim().length()>0){
    if(u.getName().indexOf(user.getName())==-1){
     continue;
    }
   }
   if(user.getType()>0){
    if(u.getType()!=user.getType()){
     continue;
    }
   }
   reslist.add(u);
  }
  return reslist;
 }

 @Override
 public List<UserModel> getAll() {
  return FileIOUtil.readFromFile(FILE_NAME);
 }

}

package cn.hncu.bookStore.user.dao.factory;

import cn.hncu.bookStore.user.dao.dao.UserDAo;
import cn.hncu.bookStore.user.dao.impl.UserDAOFileImpl;
public class UserDAOFactory {
 private UserDAOFactory(){
 }
 public static UserDAo getUserDAo(){
  return new UserDAOFileImpl();
 }
}

營業邏輯層:

package cn.hncu.bookStore.user.business.ebi;

import java.util.List;

import cn.hncu.bookStore.user.vo.UserModel;
import cn.hncu.bookStore.user.vo.UserQueryModel;

public interface UserEbi {


 public boolean create(UserModel user);
 public boolean delete(String uuid);
 public boolean update(UserModel user);
 public UserModel getSingle(String uuid);
 public List<UserModel> getByCondition(UserQueryModel user);
 public List<UserModel> getAll();
 public abstract List<UserModel> getAllIn();
 public List<UserModel> getAllOut();
}

package cn.hncu.bookStore.user.business.ebo;

import java.util.List;

import cn.hncu.bookStore.common.uuidModelConstance;
import cn.hncu.bookStore.common.uuid.dao.factory.uuidDAOFactory;
import cn.hncu.bookStore.user.business.ebi.UserEbi;
import cn.hncu.bookStore.user.common.UserTypeEnum;
import cn.hncu.bookStore.user.dao.dao.UserDAo;
import cn.hncu.bookStore.user.dao.factory.UserDAOFactory;
import cn.hncu.bookStore.user.vo.UserModel;
import cn.hncu.bookStore.user.vo.UserQueryModel;

public class UserEbo implements UserEbi {

 //注入
 UserDAo dao = UserDAOFactory.getUserDAo();
 @Override
 public boolean create(UserModel user) {
  String uuid=uuidDAOFactory.getUuidDAO().getNextNum(uuidModelConstance.User);
  user.setUuid(uuid);
  return dao.create(user);
 }

 @Override
 public boolean delete(String uuid) {
  return dao.delete(uuid);
 }

 @Override
 public boolean update(UserModel user) {
  return dao.update(user);
 }

 @Override
 public UserModel getSingle(String uuid) {
  return dao.getSingle(uuid);
 }

 @Override
 public List<UserModel> getByCondition(UserQueryModel user) {
  return dao.getByCondition(user);
 }

 @Override
 public List<UserModel> getAll() {
  return dao.getAll();
 }
 @Override
 public List<UserModel> getAllIn() {
  UserQueryModel user=new UserQueryModel();
  user.setType(UserTypeEnum.IN.getType());
  return dao.getByCondition(user);
 }
 public List<UserModel> getAllOut() {
  UserQueryModel user=new UserQueryModel();
  user.setType(UserTypeEnum.OUT.getType());
  return dao.getByCondition(user);
 }

}

package cn.hncu.bookStore.user.business.factory;

import cn.hncu.bookStore.user.business.ebi.UserEbi;
import cn.hncu.bookStore.user.business.ebo.UserEbo;

public class UserEbiFactory {

 private UserEbiFactory() {
 }
 public static UserEbi getUserEbi(){
  return new UserEbo();
 }
}

以上就是本文的全體內容,願望對年夜家的進修有所贊助,也願望年夜家多多支撐。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved