Coder Social home page Coder Social logo

papeterie's Introduction

Papeterie

A propos de ce projet

Cursus

ENI | Le développement en couches et la persistance des données avec Java SE

Énoncés (par l'ENI)

Partie 1
  • Créer le projet papeterie avec Eclipse.
  • Créer le package fr.eni.papeterie.bo.
  • Créer les classes Article, Ramette, Stylo, Ligne et Panier en s'aidant du diagramme de classe fourni.
  • Vérifier le fonctionnement des classes avec le composant AppliTestBO fourni.
Partie 2
  • Sous SQL Server, créer une base de données et la nommer PAPETERIE_DB.
  • Créer la table Articles à l’aide du fichier script.sql fourni.
  • Dans le projet papeterie, implémenter la classe fr.eni.papeterie.dal.jdbc.ArticleDaoJdbcImpl pour que les méthodes suivantes soient fonctionnelles :
    • selectById : sélectionne un article par son identifiant
    • selectAll : sélectionne tous les articles de la table Articles
    • update : modifie les attributs d’un article
    • insert : ajoute un article en base de données et affecte à l'article l’identifiant créé par la base de données
    • delete : supprime un article en base de données
  • Vérifier votre solution avec la classe fr.eni.papeterie.dal.AppliTestDAL fournie.
Partie 3
  • Créer l’interface ArticleDAO et définir les méthodes :
    • selectById
    • selectAll
    • update
    • insert
    • delete
  • Utiliser l’interface ArticleDAO dans ArticleDAOJdbcImpl.
  • Externaliser la configuration de l’accès aux données en implémentant les classes :
    • Settings
    • JdbcTools
  • Implémenter la classe DAOFactory.
  • Vérifier votre solution avec la classe fr.eni.papeterie.dal.AppliTestDAL fournie.
Partie 4
  • À l’aide du diagramme de classes fourni, implémenter la couche BLL pour que les exigences suivantes soient respectées :
    • Les attributs des articles sont obligatoires.
    • Le grammage pour une ramette et la quantité en stock attendent des valeurs positives.
    • Un catalogue est une liste d’articles gérée en mémoire et extraite à partir d’une source de données.
Partie 5

Réaliser l’écran article ci-dessous :

Plus de détails au sein du fichier PDF correspondant.

L’écran doit permettre :

  • De naviguer vers l’article précédent dans le catalogue :
    • La sélection du type est inactive dans le cadre de la navigation entre articles.
    • La sélection du grammage est inactive pour un stylo.
    • La sélection de la couleur est inactive pour une ramette.
  • De créer un nouvel article :
    • La sélection du type Stylo ou Ramette se fait via des boutons radio.
    • Selon le type, rendre actif ou inactif la saisie du grammage et de la couleur.Le développement en couches et la persistance des données avec Java SE
  • D’enregistrer les modifications d’un article existant ou d’un nouvel article.
    • De supprimer l’article courant.
    • De naviguer vers l’article suivant dans le catalogue
Partie 6

Réaliser l’écran catalogue ci-dessous :

Plus de détails au sein du fichier PDF correspondant.

L’écran doit respecter les exigences suivantes :

  • Lister tous les articles enregistrés dans le catalogue.
  • Permettre l’utilisation d’un ascenseur vertical si la taille de l’écran n’est pas suffisante pour afficher tous les articles.
  • Interdire la modification des articles dans le tableau.
  • La première colonne affiche l’image d’un stylo ou l’image d’une ramette selon le type de l’article
Partie 7
  • Créer un composant barre de boutons réutilisable.
  • Utiliser ce composant dans l’écran détail article.
Partie 8

Étape 1

Créer une interface générique et la nommer DAO. Utiliser cette interface en lieu et place de ArticleDAO dans le composant ArticleDAOJdbcImpl. Les méthodes suivantes devront être fonctionnelles :

  • selectById
  • selectAll
  • update
  • insert
  • delete

Étape 2

Modifier la couche DAL de l’application pour que les méthodes suivantes, spécifiques à la gestion des articles, soient fonctionnelles :

  • selectByMarque
  • selectByMotCle

Plus de détails sont disponibles dans les fichiers au format PDF correspondant à chaque énoncé.

Technologie principale

  • Java

Détails | Commentaires

Ce projet a été construit à partir de zéro en suivant des instructions spécifiques.

Partie 1

Le fichier AppliTestBo.java a été fourni avec l'énoncé.
En plus des instructions de base, la gestion des variations de stock pour chaque article et du montant du panier ont été ajoutés.

Partie 2

Les fichiers DALException.java et AppliTestDAL.java ont été fournis avec l'énoncé ainsi que la requête SQL permettant de générer la table Articles.

Partie 3

Le fichier AppliTestDAL.java a été fourni avec l'énoncé.

Partie 4

Le fichier AppliTestDLL.java a été fourni avec l'énoncé.
En plus des instructions de base, une gestion des exceptions a été ajoutée au sein du package BO.

Partie 5

Les ressources (icônes) ont été fournies avec l'énoncé.

Partie 6

Les ressources (icônes) ont été fournies avec l'énoncé.

Partie 7

Les différents classe présentes dans le diagramme de classes ont été implémentées, mais des noms différents (en anglais) ont été utilisées.

Statut

Partie 1 - Terminée
Partie 2 - Terminée
Partie 3 - Terminée
Partie 4 - Terminée
Partie 5 - Terminée
Partie 6 - Terminée
Partie 7 - Terminée
Partie 8 - Terminée

Dernière mise à jour

14/07/2020
(README | 18f/07/2020)

papeterie's People

Contributors

dyrits avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.