Java8 + Servlet + JSP + MySQL8.0.17 + C3P0 + DBUTILS + XADMIN Implémentez le système de gestion des bibliothèques
Spring Boot Version: https://github.com/ifwlzs/library_springboot
SQL est stocké dans src/main/resources/ Directory
Le contexte d'application déployé de tomcat est /

Le code de ce projet d'idée est UTF8, veuillez changer vous-même la configuration pertinente
Configuration de l'idée: fichier-> Paramètres-> Encodages de fichiers-> Encodage du projet
La valeur par défaut est l'interface de configuration GBK et Tomcat: Ajoutez des paramètres de démarrage de la machine virtuelle: -dfile.encoding = utf-8
La console a brouillé le code pour modifier les paramètres de machine virtuelle dans l'idée d'ajouter une information de configuration: -dfile.encoding = utf-8
Tomcat est défini sur UTF8
Le système doit implémenter les fonctions de gestion de base suivantes:
(1) Les utilisateurs sont divisés en deux catégories: les administrateurs et les utilisateurs généraux.
(2) fournir des fonctions d'enregistrement de l'utilisateur et de connexion de l'utilisateur; L'une des informations des utilisateurs de connexion est: le nom d'utilisateur de connexion et le mot de passe de connexion.
(3) Les administrateurs peuvent mettre en œuvre la gestion des utilisateurs enregistrés (requête, suppression, modification du mot de passe), détermination et retour des applications de prêt de livre des utilisateurs, et mettre en œuvre les opérations liées à la création de livres, à la requête, à la modification et à la suppression des livres, etc.
(4) Généralement, les utilisateurs ne peuvent interroger que des livres et emprunter des livres (postuler pour emprunter des livres). Chaque utilisateur peut emprunter jusqu'à 8 livres. Autrement dit, lorsque les 8 livres actuels sont déjà empruntés, ils ne peuvent plus emprunter des livres. Ce n'est qu'après avoir renvoyé les livres qu'ils peuvent emprunter.
Impossible d'utiliser des cadres
Public pour tout le monde: 1-4
lecteur, administrateur: 5-7
Lecteur uniquement: 8-9
Admin uniquement: 10-28
| Numéro de série | chemin | illustrer | Page 1 | Page 2 | Page 3 | Accessible |
|---|---|---|---|---|---|---|
| 1 | / toindexservlet | Connexion automatique, pas de connexion pour passer à la page d'accueil | /Index.jsp | Tous | ||
| 2 | / RegistreRederservlet | Sauter pour s'inscrire | /gister.jsp | Tous | ||
| 3 | / LoginServlet | Se connecter | /login.jsp | Tous | ||
| 4 | / TORORRORSERVLET | Sauter la page d'erreur | * | Tous | ||
| 5 | / UpdateRederservlet | Modification et implémentation des informations de l'utilisateur, Administrateur Modifier les informations utilisateur | /reader/edit.jsp | /admin/editreader.jsp | Admin, lecteur | |
| 6 | / ToediterRederservlet | Sauter la page de modification de l'utilisateur, administrateur modifier l'utilisateur | / lecteur / modifier | /admin/readerlist.jsp | Admin, lecteur | |
| 7 | / Déconnexion | Déconnecter | /reader/index.jsp | /Admin/index.jsp | Admin, lecteur | |
| 8 | / lecteur / ToBookShelfServlet | Sautez l'utilisateur pour afficher le livre, l'utilisateur trouve les détails d'un livre | /reader/index.jsp | /reader/browerlist.jsp | Lecteur | |
| 9 | / lecteur / toreaderBorrowServlet | Sauter les enregistrements d'emprunt de l'utilisateur | /reader/index.jsp | Lecteur | ||
| 10 | / admin / toadDrederservlet | L'administrateur ajoute des utilisateurs | /admin/readerlist.jsp | administrer | ||
| 11 | / admin / tobrowerListServlet | Informations d'emprunt de requête administratrice | /admin/readerlist.jsp | /Admin/index.jsp | /admin/booklist.jsp | administrer |
| 12 | / admin / DeteleRederservlet | Supprimer les utilisateurs | /admin/readerlist.jsp | administrer | ||
| 13 | / admin / toeditadminervlet | Sautez sur la page d'édition de l'administrateur, modifiez les informations personnelles de l'administrateur | /Admin/index.jsp | /admin/adminlist.jsp | administrer | |
| 14 | / admin / toadminlistservlet | Afficher la liste des administrateurs | /Admin/index.jsp | administrer | ||
| 15 | / admin / toreaderListServlet | Afficher la liste des utilisateurs et afficher les informations de l'emprunteur | /Admin/index.jsp | /admin/browerlist.jsp | administrer | |
| 16 | / admin / tobookListServlet | Allez afficher la liste des livres | /Admin/index.jsp | /admin/browerlist.jsp | administrer | |
| 17 | / admin / updateBookServlet | L'administrateur modifie les informations du livre | /admin/editbook.jsp | administrer | ||
| 18 | / admin / updateadminerservlet | Administrateur Modifier les informations de l'administrateur | /admin/editadmin.jsp | administrer | ||
| 19 | / admin / toaddborrowservlet | Administrateur pour ajouter des informations d'emprunt | /admin/browerlist.jsp | administrer | ||
| 20 | / admin / toreturnbookservlet | Sauter pour retourner l'application du livre | /admin/browerlist.jsp | administrer | ||
| vingt-et-un | / admin / ToaddBookServlet | Administrateur pour ajouter des livres | /admin/booklist.jsp | administrer | ||
| vingt-deux | / admin / toeditbookservlet | L'administrateur modifie les livres | /admin/booklist.jsp | administrer | ||
| vingt-trois | / admin / DeleteBookServlet | Supprimer les livres | /admin/booklist.jsp | administrer | ||
| vingt-quatre | / admin / toaddadminservlet | Sauter pour ajouter une page administratrice | /admin/adminlist.jsp | administrer | ||
| 25 | / admin / DeleteAdminservlet | Supprimer les informations de l'administrateur | /admin/adminlist.jsp | administrer | ||
| 26 | / admin / addBorrowservlet | L'administrateur emprunte des livres | /admin/addborrow.jsp | administrer | ||
| 27 | / admin / addbookservlet | L'administrateur ajoute des livres | /admin/addbook.jsp | administrer | ||
| 28 | / Admin / RegisterAdminservlet | Administrateur Registre Administrateur | /admin/addadmin.jsp | administrer |
Le module système est le suivant:
Module de saut de page d'erreur: lorsque l'utilisateur accède à une page qui n'existe pas, il passera à la page 404 par défaut de ce système. Lorsque l'opération d'erreur provoque l'erreur du serveur 500, elle passera également à la page 500 qui est fournie par ce système.
Gestion de l'autorisation: Utilisez Interceptor pour atteindre l'objectif des utilisateurs qui ne peuvent pas accéder aux pages et envoyer des demandes.
Module de vérification de connexion: correspond à l'utilisateur présent dans la base de données, et s'il n'existe pas, un message d'erreur est renvoyé. Après avoir enregistré avec succès, vous sauterez sur la page d'accueil correspondante
Module administrateur: modification des informations personnelles; ajouts, suppression, modification et recherche des lecteurs; Ajouts, suppression, modification et recherche des livres; Les ajouts, la suppression, la modification et la recherche de l'administrateur, ainsi que les opérations d'emprunt et de retour de livres.
Module du lecteur: modification des informations personnelles, requête d'inventaire de bibliothèque, requête d'enregistrement d'emprunt personnel.
Le modèle ER est illustré sur la figure:
La conception de la base de données est représentée sur la figure:
La connexion comprend les sections d'enregistrement et de connexion. Lorsque l'utilisateur n'a pas été entré, il ne peut cliquer que pour s'inscrire. Cliquer sur la connexion apparaîtra la fenêtre et "les éléments requis non entrés et l'authentification du curseur n'est pas terminée".

Cliquez pour s'inscrire. Vous pouvez voir la page d'inscription. Dans l'interface de réinscription, le jugement de valeurs clés tels que les valeurs vides, l'ID utilisateur, le courrier électronique et le téléphone sont ajoutés. Assurez-vous que les caractères saisis par l'utilisateur répondent aux exigences d'enregistrement et envoyez une demande d'enregistrement au backend.
Après la connexion, le système déterminera automatiquement la catégorie utilisateur en fonction de l'ID utilisateur. Si cela commence par R, il se connectera aux lecteurs, et s'il commence par M, ce sera un administrateur. Si une erreur de connexion se produit, un message d'erreur sera renvoyé
Le module de lecteur est divisé en trois petits morceaux. La barre de navigation à droite comprend deux fonctions, à savoir interroger la collection de livres de la bibliothèque et interroger vos propres enregistrements d'emprunt. À droite, la fonction de rafraîchir, de se déconnecter et de modifier des informations personnelles.
Cette page a une fonction de vérification du mot de passe et ne peut pas être modifiée si le mot de passe est incorrectement entré.
Cette page affiche des informations de base sur le livre. Vous pouvez également une requête floue basée sur le titre du livre. Mais un traitement spécial est effectué. Si les conditions d'emprunt ne remplissent pas les conditions d'emprunt, le bouton "Ne pas emprunter" ne sera pas affiché.
Si l'utilisateur actuel emprunte 8 livres, il invitera "chaque utilisateur peut emprunter jusqu'à 8 livres, veuillez vous rendre à la bibliothèque dès que possible pour le retourner!"
Dans Query, vous pouvez interroger sur la base de tous les enregistrements et des enregistrements non retournés comme conditions.
Vous pouvez également consulter les détails du livre en fonction de l'ID du livre dans le formulaire.
Cliquez sur le bouton "Retour" invitera l'heure d'ouverture de la bibliothèque.
Il existe de nombreuses fonctions de l'arrière-plan de l'administrateur. En plus des changements d'informations personnelles, il comprend également trois modules majeurs: la gestion des utilisateurs, la gestion du livre et la gestion des emprunts.
La gestion des utilisateurs est divisée en modules administratrice et de lecture. Les administrateurs incluent l'ajout, la suppression, la modification des opérations de requête floues et floues.
La gestion des lecteurs comprend des requêtes floues, y compris l'ajout, la suppression et la modification des requêtes floues et l'interrogation de tous les enregistrements. Ce qui suit montre les enregistrements non retournés de la requête.
La gestion des livres comprend généralement l'ajout, la suppression et la modification des livres, ainsi que l'interrogation des enregistrements d'emprunt et de retour d'un livre.
Dans l'interface d'édition, l'inventaire total est jugé en toute sécurité, de sorte que l'inventaire est toujours supérieur ou égal à la quantité prêtée. Et le montant du prêt a été fixé, de sorte que le retour du livre a été effectué dans la direction d'emprunt.
Dans le dossier d'emprunt, vous pouvez interroger l'emprunteur, les détails du livre et les livres non retournés; Les opérations de retour des livres et les informations d'emprunt peuvent être effectuées. Au cours de l'opération de retour, le rendement peut réussir si l'inventaire du livre est supérieur ou égal au montant du prêt et que le montant du prêt n'est pas 0.
Lors de l'ajout d'informations d'emprunt. Si le lecteur sélectionné atteint le nombre maximum de livres, il est invité à ce que l'emprunt du livre échoue.
En termes de sécurité, l'accès à différents rôles est principalement restreint.
Les utilisateurs qui ne sont pas connectés ne peuvent accéder qu'aux pages de connexion et d'enregistrement. Si vous visitez les pages d'autres rôles, ils seront redirigés vers la page d'accueil de connexion.
Les administrateurs ne peuvent pas accéder aux méthodes et pages dans le répertoire des lecteurs. Après avoir accédé, il sera automatiquement redirigé vers la page d'accueil de l'administrateur.
Les lecteurs ne peuvent pas accéder aux méthodes et pages dans le répertoire administratif. Après avoir accédé, il sera automatiquement redirigé vers la page d'accueil du lecteur.
Lors de la saisie d'une page qui n'existe pas et lorsqu'une erreur se produit sur le serveur, la page sautera à la page d'erreur correspondante.
Bien que les fonctions de base aient été remplies dans cette conception, par rapport au système mature et à l'expérience d'emprunt personnel, il y a toujours un manque de conception humanisée. Par exemple, il devrait y avoir une liste secondaire dans la gestion des livres. Chaque livre avec le même titre dans cette liste doit être numéroté. La gestion des livres doit inclure des champs tels que la bibliothèque, le nombre de couches, etc. où se trouvent les livres. Dans l'opération d'emprunt du livre, vous devez utiliser les périphériques pour entrer l'ID de livre et l'ID utilisateur. En plus des raisons de temps, les opérations de pagination et de suppression par lots n'ont pas été ajoutées à ce projet.
Il existe un grand nombre de façons de sauter des pages JSP dans les servlets. Parce que certains impliquent une requête et des opérations de jugement spécial. Impossible de dessiner une méthode abstraite unifiée.
Le schéma Springboot + SSM + MVC + VUE n'a pas été utilisé, ce qui rend les fichiers du projet relativement désordonnés