Framework Spring/Création d'un projet simple

Un livre de Wikilivres.

Le but de cette section est de créer un projet simple à partir de STS sans pour l'instant faire appel à Spring.

Structure du projet[modifier | modifier le wikicode]

En créant un projet intitulé SimpleJavaProject de type Spring Legacy Project - Simple Java on doit obtenir l'arborescence suivante :

Arborescence Spring Legacy Project - Simple Java sous STS 3.7.3 et Java 7

Le S indiqué sur le projet signifie qu'il s'agit là d'un projet Spring. Le répertoire src contient les futurs fichiers sources. L'arborescence JRE, Java RunTime Environment, constitue les libraires permettant l’exécution du programme par la JVM, Java Virtual Machine. Plus d'informations ici

Le résultat de ce projet sous l'explorateur est le suivant :

Arborescence d'un projet Spring Legacy Project - Simple Java sous STS 3.7.3 et Java 7 vue sous l'explorateur Windows 7.

Le répertoire .settings est caché et sert de configuration pour Eclipse, il contient le fichier org.springframework.ide.eclipse.beans.core.prefs :

eclipse.preferences.version=1
org.springframework.ide.eclipse.beans.core.ignoreMissingNamespaceHandler=false

Ce fichier correspond à la configuration de Spring dans STS :

Fenêtre de propriétés de Spring

En autorisant des propriétés spécifiques pour le projet courant, un nouveau fichier org.springframework.ide.eclipse.core.prefs est créé dans .settings qui rassemble de nombreuses informations à propos de la configuration du projet.

Fichier .classpath[modifier | modifier le wikicode]

Par défaut le fichier .classpath contient les informations suivantes :

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
 <classpathentry kind="src" path="src"/>
 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 <classpathentry kind="output" path="bin"/>
</classpath>

Cela va permettre à STS de savoir ce qu'il faut compiler et vers où générer le résultat. La propriété kind="src" indique que pour récupérer un fichier de classpath, la valeur indiquée sera prise en compte comme chemin. Ainsi en utilisant ClassPathXmlApplicationContext("Beans.xml"), le fichier Beans.xml sera cherché dans le répertoire "src" à la racine du projet.

Un classpath peut être ajouté graphiquement, il suffit de sélectionner un répertoire créé :

Ajout d'un classpath

Fichier .project[modifier | modifier le wikicode]

Le fichier .project contient la description du projet, les outils utilisés pour le construire ainsi que le type de projet.

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
 <name>SimpleJavaProject</name>
 <comment></comment>
 <projects>
 </projects>
 <buildSpec>
  <buildCommand>
   <name>org.eclipse.jdt.core.javabuilder</name>
   <arguments>
   </arguments>
  </buildCommand>
  <buildCommand>
    <name>org.springframework.ide.eclipse.core.springbuilder</name>
    <arguments>
    </arguments>
   </buildCommand>
 </buildSpec>
 <natures>
  <nature>org.springframework.ide.eclipse.core.springnature</nature>
  <nature>org.eclipse.jdt.core.javanature</nature>
 </natures>
</projectDescription>

fichier .springBeans[modifier | modifier le wikicode]

Ce fichier contient la configuration des beans de Spring :

<?xml version="1.0" encoding="UTF-8"?>
<beansProjectDescription>
 <version>1</version>
 <pluginVersion><![CDATA[3.7.3.201602250914-RELEASE]]></pluginVersion>
 <configSuffixes>
  <configSuffix><![CDATA[xml]]></configSuffix>
 </configSuffixes>
 <enableImports><![CDATA[false]]></enableImports>
 <configs>
 </configs>
 <autoconfigs>
 </autoconfigs>
 <configSets>
 </configSets>
</beansProjectDescription>

Conversion en projet Maven[modifier | modifier le wikicode]

Afin d'obtenir plus facilement les librairies il est pertinent d'ajouter les fonctionnalités de Maven. Pour cela il est nécessaire de faire un clique droit sur le projet et d'aller dans le sous-menu Configure :

Conversion en projet Maven

On obtient alors une fenêtre de création du pom  :

Fenêtre de création du fichier pom

Fichier pom.xml[modifier | modifier le wikicode]

Lors de la conversion en projet maven, un fichier pom.xml est généré à la racine du projet :

<project xmlns="http://maven.apache.org/POM/4.0.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 <modelVersion>4.0.0</modelVersion>
 <groupId>SimpleJavaProject</groupId>
 <artifactId>SimpleJavaProject</artifactId>
 <version>0.0.1-SNAPSHOT</version>
 <build>
   <sourceDirectory>src</sourceDirectory>
   <plugins>
     <plugin>
       <artifactId>maven-compiler-plugin</artifactId>
       <version>3.3</version>
       <configuration>
         < source/>
         <target/>
       </configuration>
     </plugin>
   </plugins>
 </build>
</project>

Le fichier POM signifie Project Object Model, il va contenir l'ensemble des informations pour permettre la construction du projet. Tous les fichiers POM héritent d'un super POM. Il contient toujours une balise project avec les informations minimales.

Plus d'informations sur le site de maven.

Création d'un package[modifier | modifier le wikicode]

Avant de pouvoir écrire du code il est nécessaire de créer un package contenant les futures classes. En faisant un clique droit sur le répertoire sources on obtient ce menu :

Création d'un package

Création de la classe principale[modifier | modifier le wikicode]

En faisant un clique droit sur le package principal on peut ajouter des classes, on va créer la classe contenant le main qui est le point d'entrée d'un programme java. La génération de la méthode main peut être réalisée directement avec l'interface :

Création de la classe principale

Cela donne ainsi le code suivant :

package mainPackage;
public class MainClass 
{
 public static void main(String[] args) 
 {
  // TODO Auto-generated method stub
 }
}

Ceci constitue le programme Java fonctionnel le plus simple ne faisant pas ici encore appel à Spring.