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(); } }
以上就是本文的全體內容,願望對年夜家的進修有所贊助,也願望年夜家多多支撐。