Cet article partage le deuxième chapitre de la conception de graduation du système de librairie Java pour votre référence. Le contenu spécifique est le suivant
1. Gestion des utilisateurs (user.txt)
Noms de champ et commande
Remarque: Le type est le type int, qui est utilisé pour représenter le type de l'opérateur.
1 - indiqué comme administrateur, toutes les opérations peuvent être effectuées
2 - Dénové en tant que personne qui peut exploiter le module du livre
3 - Exprimé en tant que personne qui peut exploiter le module d'achat
4 - exprimé en tant que personne qui peut exploiter des modules de vente
5 - exprimé en tant que personne qui peut exploiter des modules d'inventaire
Type utilise l'implémentation d'énumération
package cn.hncu.bookstore.user.Common; public Enum userTypeenum {admin (1, "Super Administrator"), Book (2, "Librarian"), dans (3, "Achat Administrator"), Out (4, "Sales Administrator"), Stock (5, "Inventory Administrator"); type int privé int; Nom de la chaîne finale privée; UserTypeeNUM (int type, name de chaîne) {// par défaut privé this.name = name; this.type = type; } public int getType () {return type; } public String getName () {Nom de retour; } public static int getTypeByName (String name) {for (usertypeenum utm: usertypeenum.values ()) {if (utm.getName (). equals (name.trim ())) {return utM.GetType (); }} Jetez un nouveau IllégalArgumentException ("Aucun type d'utilisateur correspondant à ce /" "+ nom +" / "); // Exception de paramètre illégal} String statique public getNameByType (int IllégalArgumentException ("Aucun type d'utilisateur correspondant à ce /" "+ type +" / "); // Exception du paramètre illégal}}Package cn.hncu.bookstore.user.vo; import java.io.serializable; import cn.hncu.bookstore.user.common.userTypeenum; / ** * * @ auteur <a href = "Mailto: [email protected]"> xzm </a> * / Classe publique UserModel Implements Implancement {Private Final </a> * / public Class UserModel Implace Implaction {Private Final Final Final Long Class UserModel Implating Implatiles Implgel {Private Finder Finder Final Long Class UserModel Implace Implgel SerialVersionUID = 1L; chaîne privée UUID, nom, pwd; // numéro d'utilisateur, nom d'utilisateur, mot de passe utilisateur private int } public void setuuid (String UUID) {this.uuid = uuid; } public String getName () {Nom de retour; } 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 résultat = 1; result = prime * result + ((uuid == null)? 0: uUid.hashcode ()); Résultat de retour; } @Override public boolean equals (objet obj) {if (this == obj) return true; if (obj == null) return false; if (getClass ()! = obj.getClass ()) return false; Userodel Autre = (UserModel) obj; if (uUid == null) {if (autre.uuid! = null) return false; } else if (! uuid.equals (autre.uuid)) renvoie false; Retour Vrai; } @Override public String toString () {return uUid + "," + name + "," + usertypeenum.getNameByType (type); }}
package cn.hncu.bookstore.user.vo; classe publique UserQueryModel étend UserModel {privé statique final long serialversionuid = 1l;}Couche DAO:
Package cn.hncu.bookstore.user.dao.dao; Importer java.util.list; import Cn.hncu.bookstore.user.vo.usermodel; Importer cn.hncu.bookstore.user.vo.userQueryModel; Interface publique Useddao {/ ** * Enregistrer un nouvel utilisateur. Si l'utilisateur existe, il ne peut pas être créé * @param utilisateur * L'utilisateur à créer * @return * renvoie True si la création est réussie, sinon il renverra False * / public boolean create (UserModel User); / ** * Supprimer un utilisateur. Si l'utilisateur n'existe pas, il échouera * @param uuid * L'UUID de l'utilisateur à supprimer * @return * renvoie true si la suppression est réussie, sinon Faux * / public boolean delete (String UUID); / ** * Mettre à jour les informations de l'utilisateur. Si l'utilisateur n'existe pas, il ne peut pas être mis à jour * @Param User * User à mettre à jour * Si la mise à jour est réussie, alors FAUX * / PUBLIC BOOLEAN UPDATE (UserModel User); / ** * Interrogez les données d'un utilisateur * @param UUID * Numéro d'utilisateur des informations à interroger * @return * Si l'utilisateur existe, renvoyez l'objet utilisateur de l'UUID spécifié, sinon renvoyez NULL * / public UserModel getingle (String UUID); / ** * Selon les conditions de la contrainte d'objet de valeur de requête, renvoyez tous les objets utilisateur qui répondent à l'utilisateur * @param utilisateur * Objet de valeur de requête * @return * S'il y a un utilisateur qui remplit les conditions de la contrainte d'objet de valeur de requête, renvoie la collection d'objets utilisateur, sinon un ensemble vide * / publique List <SerModel> GetByCondition (utilisateur utilisateur utilisateur); / ** * Obtenez tous les objets utilisateur dans le fichier * @return * Renvoyez tous les objets utilisateur dans le fichier * / public List <SerModel> getall ();} Package cn.hncu.bookstore.user cn.hncu.bookstore.user.vo.userQueryModel; Importer cn.hncu.bookstore.utils.fileioutil; public class userdaofileIMPl implémente userdao {private final static file_name = "a.txt"; @Override public boolean create (userModel User) {if (user == null) {// Si les informations utilisateur à enregistrer sont nuls, elle ne peut pas être enregistrée et renvoie false return false; } List <userModel> list = getall (); // Obtenez tous les objets utilisateur qui existent déjà dans le fichier pour (userModel u: list) {// voyage if (u.getUuid (). Equals (user.getUuid ())) {// Si cet utilisateur existe déjà, il ne peut pas être enregistré return false; }} // Après la traversée ci-dessus, cela signifie que l'utilisateur n'existe pas, vous pouvez enregistrer list.add (utilisateur); return fileioutil.writeTofile (list, file_name); } @Override public boolean Delete (String UUID) {list <userModel> list = getall (); for (int i = 0; i <list.size (); i ++) {// transmecquility userModel u = list.get (i); if (u.getUuid (). equals (uUid)) {list.remove (i); // delete 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); // réinitialiser l'utilisateur numéroté à user.getUuid () return fileioutil.writeTofile (list, file_name); }} return false; } @Override public userModel getingled (String UUID) {list <userModel> list = getall (); for (userModel u: list) {if (u.getUuid (). equals (uuid)) {return u; }} return null; } @Override Public List <SerModel> GetByCondition (UserQueryModel User) {list <UserModel> list = getall (); List <userModel> reslist = new ArrayList <UserModel> (); pour (userModel u: list) {if (user.getUuid ()! = null && user.getUuid (). Trim (). Length ()> 0) {if (! user.getuuid (). Trim (). Equals (u.getUuid ())) {continu; }} 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 <SerModel> getall () {return fileioutil.readfromfile (file_name); }} Package CN.hncu.Bookstore.user getUserDao () {return new UserDaofileImpl (); }}Couche de logique commerciale:
Package cn.hncu.bookstore.user.business.ebi; import java.util.list; importer cn.hncu.bookstore.user.vo.usermodel; importer cn.hncu.bookstore.user.vo.userQueeryModel; interface publique Userebi {publique Boolean Create (usermodel user); Public Boolean Delete (String UUID); Public Boolean Update (UserModel User); public UserModel getingle (String UUID); Public List <SerModel> GetByCondition (utilisateur UserQueryModel); Liste publique <UserModel> getall (); Liste des abstraites publiques <UserModel> getAllin (); Liste publique <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; cn.hncu.bookstore.user.business.ebi.userebi; import Cn.hncu.bookstore.user.common.usertypeenum; import Cn.hncu.Bookstore.user.dao.dao.userdao; Importer Cn.hncu.bookstore.user.DaO.factory.userdaofactory; Importory; cn.hncu.bookstore.user.vo.usermodel; importer cn.hncu.bookstore.user.vo.userQueryModel; public class userebo implémente userebi {// inject userdao dao = userdaofactory.getUserDao (); @Override public boolean create (userModel User) {String uUid = uuiddaofactory.getuuiddao (). GetNextNum (uuidModelCistance.user); user.setuuid (UUID); return dao.create (utilisateur); } @Override public boolean Delete (String UUID) {return dao.delete (uuid); } @Override public boolean update (userModel User) {return dao.update (utilisateur); } @Override public userModel getingled (String UUID) {return dao.getSingle (uuid); } @Override Public List <SerModel> GetByCondition (UserQueryModel User) {return dao.getByCondition (utilisateur); } @Override Public List <UserModel> getall () {return dao.getall (); } @Override Public List <SerModel> getAllin () {UserQueryModel User = new UserQueryModel (); user.setType (userTypeEenum.in.getType ()); return dao.getByCondition (utilisateur); } public list <userModel> getAllout () {userQueryModel user = new UserQueryModel (); user.setType (userTypeEenum.out.getType ()); return dao.getByCondition (utilisateur); }}Package cn.hncu.bookstore.user.business.factory; Importer cn.hncu.bookstore.user.business.ebi.userebi; Importer Cn.hncu.BookStore.User.Business.ebo.USEREBOBO Userebo (); }}
Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.