Эта статья разделяет вторую главу «Выпускной дизайн системы книжного магазина Java» для вашей ссылки. Конкретный контент заключается в следующем
1. Управление пользователями (user.txt)
Имена поля и заказ
Примечание. Тип - это тип int, который используется для представления типа оператора.
1 - обозначен как администратор, все операции могут быть выполнены
2-разоблаченный как человек, который может управлять книжным модулем
3 - выраженное как лицо, которое может управлять модулем покупки
4 - выражены как человек, который может управлять модулями продаж
5 - выраженное как человек, который может управлять модулями инвентаризации
Тип использует реализацию перечисления
пакет cn.hncu.bookstore.user.common; public enum usertypeenum {admin (1, «супер -администратор»), книга (2, «библиотекарь»), в (3, «Администратор покупки»), Out (4, «Администратор продаж»), акции (5, «Администратор инвентаря»); частный финальный тип int; частное имя финальной строки; 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 (); }} бросить новый allosalArgumentException ("Нет типа пользователя, соответствующего этому/" "+name+"/"); // Незаконное исключение параметров} public static String getNameBytype (int type) {for (usertypeenum utm: usertypeenum.values ()) {if (utm.gretpe () == tup) AllogalargumentException ("Нет типа пользователя, соответствующего этому/" "+type+"/"); // Исключение незаконного параметра}} Пакет cn.hncu.bookstore.user.vo; import java.io.serializable; import cn.hncu.bookstore.user.common.usertypeenum;/** * *@Автор <a href = "mailto: 2402201666666666666666666666666 гг. SerialVersionUid = 1L; Приватная строка 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 ()); результат возврата; } @Override public boolean equals (Object obj) {if (this == obj) вернуть true; if (obj == null) вернуть false; if (getClass ()! = obj.getClass ()) вернуть false; USERMODEL Другое = (USERMODEL) OBJ; if (uuid == null) {if (shry.uuid! = null) вернуть false; } else if (! uuid.equals (ore.uuid)) вернуть false; вернуть истину; } @Override public String toString () {return uuid + "," + name + "," + usertypeenum.getNameBytype (type); }} Пакет Cn.hncu.bookstore.user.vo; открытый класс userQueryModel расширяет usermodel {Private Static Final Long SerialVersionUID = 1L;}Слой DAO:
Пакет 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 user userdao { /*** Регистрация. Если пользователь существует, его нельзя создать * @param пользователь * Пользователь, который будет создан * @return * return true, если создание будет успешным, в противном случае он вернет false */ public boolean create (usermodel user); /*** Удалить пользователя. Если пользователя не существует, он не удастся * @param uuid * uuid пользователя, который должен быть удален * @return * return true, если удаление успешно, в противном случае false */ public boolean delete (string uuid); /*** Обновить информацию пользователя. Если пользователя не существует, то он не может быть обновлен * @param пользователь * Пользователь для обновления * Если обновление успешно, то False */ public boolean update (пользователь usermodel); / ** * Запросить данные пользователя * @param Uuid * Номер пользователя информации, которая будет запросом * @return * Если пользователь существует, верните пользовательский объект указанного UUID, в противном случае вернуть null */ public usermodel getinggle (string uuid); / *** В соответствии с условиями ограничения объекта значения запроса верните все объекты пользователя, которые соответствуют пользователю* @param пользователь* value value object* @return* Если есть пользователь, который соответствует условиям ограничения объекта запроса, верните коллекцию объектов пользователя, в противном случае возвращает пустой набор*/ public <usermodel> getbycondition (пользователь пользователя quoreModel); / *** Получить все объекты пользователя в файле* @return* Возврат все объекты пользователя в файле*/ public list <usermodel> getall ();} Пакет cn.hncu.bookstore.user.dao.impl; import java.util.arraylist; import java.util.list; import cn.hncu.bookstore.user.dao.dao.userdao; импорт cn.hncu.bookstore.user.vo.usermodel; cn.hncu.bookstore.user.vo.userquerymodel; import cn.hncu.bookstore.utils.fileioutil; открытый класс userdaofileimpl реализует userdao {private static String file_name = "a.txt"; @Override public boolean create (usermodel user) {if (user == null) {// Если информация пользователя, которая будет зарегистрирована, является нулевой, она не может быть зарегистрирована и возвращает false return false; } List <usermodel> list = getAll (); // Получить все объекты пользователей, которые уже существуют в файле для (usermodel u: list) {// travel if (u.getuuid (). Equals (user.getuuid ())) {// Если этот пользователь уже существует, он не может быть зарегистрирован вернуть false; }} // После вышеуказанного обхода это означает, что пользователь не существует, вы можете зарегистрировать 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 ++) {// ranquility usermodel u = list.get (i); if (u.getuuid (). equals (uuid)) {list.remove (i); // delete return fileioutil.writetofile (list, file_name); }} вернуть 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_name); }} вернуть false; } @Override public usermodel etsingling (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 пользователь) {list <usermodel> list = getall (); Список <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 ())) {contination; }} if (user.getName ()! = null && user.getName (). trim (). Length ()> 0) {if (u.getName (). indexof (user.getName ()) ==-1) {contul; }} if (user.getType ()> 0) {if (u.getType ()! = user.getType ()) {продолжение; }} reslist.add (u); } return reslist; } @Override public list <usermodel> getall () {return fileioutil.readfromfile (file_name); }} Пакет cn.hncu.bookstore.user.dao.factory; import cn.hncu.bookstore.user.dao.dao.userdao; импортировать cn.hncu.bookstore.user.dao.impl.userdaofileimpl; public class userdaofactor getUserdao () {return new userdaofileimpl (); }}Слой бизнес -логики:
Пакет cn.hncu.bookstore.user.business.ebi; import java.util.list; import cn.hncu.bookstore.user.vo.usermodel; импорт cn.hncu.bookstore.user.vo.userquerymodel; public userebi {public boolean create user); Public Boolean Delete (String uuid); Общественное логическое обновление (пользователь usermodel); public usermodel getingngle (string uuid); Общественный список <usermodel> GetByCondition (пользователь userQueryModel); Общественный список <usermodel> getall (); Общедоступный список абстрактных <usermodel> getallin (); Общественный список <usermodel> getallout ();} Пакет cn.hncu.bookstore.user.business.ebo; import java.util.list; импорт cn.hncu.bookstore.common.uuidmodelConstance; импорт cn.hncu.bookstore.common.uuid.dao.factory.uuiddaofactory; cn.hncu.bookstore.user.business.ebi.userebi; импорт cn.hncu.bookstore.user.common.usertypeenum; импорт cn.hncu.bookstore.user.dao.dao.userdao; импорт cn.hncu.bookstore.usery.Aroery.AsoryRy.AsoryRy.AsoryRy.Asoryry.AsoryRy.AsoryRy.AsoryRy.AsoryRy.Asoryry. cn.hncu.bookstore.user.vo.usermodel; import cn.hncu.bookstore.user.vo.userquerymodel; открытый класс Userebo реализует userebi {// unject userdao dao = userdaofactory.getuserdao (); @Override public boolean create (usermodel user) {string uuid = uuiddaofactory.getuuiddao (). GetNextnum (uuidmodelConstance.user); user.setUuid (uuid); вернуть dao.create (пользователь); } @Override public boolean delete (string uuid) {return dao.delete (uuid); } @Override public boolean update (usermodel user) {return dao.update (user); } @Override public usermodel etsingling (string uuid) {return dao.getsingle (uuid); } @Override public list <usermodel> getByCondition (userQueryModel пользователь) {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 ()); вернуть dao.getbyCondition (пользователь); } public List <usermodel> getallout () {userQueryModel user = new userQueryModel (); user.settype (usertypeenum.out.gettype ()); вернуть dao.getbyCondition (пользователь); }}Пакет cn.hncu.bookstore.user.business.factory; import cn.hncu.bookstore.user.business.ebi.userebi; импорт cn.hncu.bookstore.user.business.ebo.userebo; вернуть новый USEREBO (); }}
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.