8
votes

Comment choisir la bonne version du printemps, des jambes de force et de l'hibernate, quelle est la différence?

Je veux sélectionner les derniers cadres pour intégrer le printemps, les jambes de force et l'hibernate, mais il semble qu'il y ait tellement de versions là-bas et leur API est également différente, alors j'ai été confuse que comment puis-je sélectionner la bonne version à intégrer eux ? Et quelles sont les différences entre eux?

Par exemple, puis-je avoir l'intégration suivante: Cadre de printemps 3.0 Struts 2.0 Hibernate 3.2

Comme je suis nouveau dans ces cadres, veuillez me pointer la bonne direction, et laissez-moi savoir comment puis-je sélectionner la bonne version pour fonctionner?

Merci d'avance!


1 commentaires

+1: Question très hantée :-)


4 Réponses :


1
votes

Si vous utilisez éventuellement un système de construction comme Maven2, il peut résoudre toutes les dépendances pour vous. Si vous ne pouvez pas rechercher des fichiers de configuration Maven et copier simplement les numéros de version à partir de là. De plus, toutes les versions spécifiques peuvent être téléchargées manuellement à partir de l'un des référentiels Maven en ligne.

Les fichiers de configuration Maven sont généralement nommés pom.xml et contiennent entre autres toutes les dépendances d'un projet. Beaucoup de gens publient leurs fichiers POM en ligne pour aider les autres, mais il n'est pas difficile de vraiment écrire un vous-même.

Par exemple, vous avez un exemple de configuration. C'est probablement peu daté, mais pour juste jouer avec le cadre, il devrait faire:

http://www.mkyong.com/struts22 / Struts-2-Spring-Hibernate-Integration-Exemple /


0 commentaires

1
votes

printemps, jambes de force 2 et hibernez tous ensemble ensemble.

Si vous commencez sur un nouveau projet, vous devez utiliser le plus récent de chacun: printemps 3.0.5 , Struts 2.2.1.1 , hibernate 3.6.3


3 commentaires

Monsieur, pouvez-vous me donner une explication. Pourquoi a-t-il besoin des jambes lorsque le printemps fournit à la fois le printemps MVC?


Je suppose que MemoryLeak veut spécifiquement utiliser des jambes de force et non du printemps MVC, car c'était dans la question initiale.


Oui, tu as raison, merci. J'ai téléchargé un exemple de code, il semble que j'utilise les derniers cadres ne fonctionnent pas? Certaines classes sont manquantes?



1
votes

Si vous utilisez Maven 2 , alors vous n'avez vraiment pas besoin de vous inquiéter de ces choses.

Si vous commencez à partir de zéro, je vous recommanderais d'autres vous recommander de consulter des outils tels que R Spring Roo ou Appfuse . Ces outils font un excellent travail pour générer l'échafaudage d'applications de base pour vous et utilisez les versions correctes de printemps, de jambes de force et d'hibernate dans les coulisses.

Une autre suggestion que je aurais eu est de ne pas aller chercher beaucoup de cadres, si vous avez déjà décidé d'utiliser le printemps, passez avec le printemps MVC au lieu de putoirs à moins que vous n'ayez l'héritage nécessaire pour être pris en charge.

Vous pouvez également bénéficier de Cette pile débordement de débordement .

espère que cela aide.


0 commentaires

2
votes

Voici ce que j'espère que cela aide les autres (d'abord comment je me suis installé dans Netbeans, à la fin est un POM pour l'approche générale).

Note Quand je dis Ajouter un certain pot que je veux dire, dans NetBeans: P>

  • clic droit sur les dépendances, sélectionnez "Ajouter une dépendance ..." LI>
  • Dans le champ de requête Ender, la première partie Le pot ne comprenant pas la version, c'est-à-dire pour: Spring-orm-3.0.5.Release.jar Il suffit d'entrer Spring-orm, la recherche affichera plusieurs résultats différents, mais seulement "Org". Springframework: Spring-orm "Contient la version 3.0.5.Releasee, de sorte que c'est celui à utiliser ... Si cela semble trop founal, le POM de cette réponse fournit les coordonnées exactes alors n'hésitez pas à utiliser celles-ci. li> ul>

    Créer une nouvelle application Web Maven. Suivre: http://truts.apache.org/2.2.1.1/docs/create-struts-2-web-Application-utilisant-maven-a-manage-artifacts-and-to -build-the -apper.html p>

    Ajouter Stuts2-Spring-Plugin (V 2.2.1.1) - Cela ajoute ensuite un certain nombre de pots inutiles dans la série 2.5, cliquez avec le bouton droit de la souris sur ces fichiers et excluez-les. - Ajoutez maintenant ce qui suit: p>

    <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>com.aerose</groupId>
        <artifactId>PartGroupMaster</artifactId>
        <version>2011.04.12</version>
        <packaging>war</packaging>
    
        <name>PartGroupMaster Web App</name>
    
        <properties>
            <endorsed.dir>${project.build.directory}/endorsed</endorsed.dir>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
            <netbeans.hint.deploy.server>gfv3ee6</netbeans.hint.deploy.server>
        </properties>
    
        <repositories>
            <repository>
                <id>JBoss Repo</id>
                <url>http://repository.jboss.com/maven2</url>
                <name>JBoss Repo</name>
            </repository>
            <repository>
                <id>ibiblio mirror</id>
                <url>http://mirrors.ibiblio.org/pub/mirrors/maven2/</url>
            </repository>
            <repository>
                <id>jboss-public-repository-group</id>
                <name>JBoss Public Maven Repository Group</name>
                <url>https://repository.jboss.org/nexus/content/groups/public/</url>
                <layout>default</layout>
                <releases>
                    <enabled>true</enabled>
                    <updatePolicy>never</updatePolicy>
                </releases>
                <snapshots>
                    <enabled>true</enabled>
                    <updatePolicy>never</updatePolicy>
                </snapshots>
            </repository>
            <repository>
                <url>http://ftp.ing.umu.se/mirror/eclipse/rt/eclipselink/maven.repo</url>
                <id>eclipselink</id>
                <layout>default</layout>
                <name>Repository for library Library[eclipselink]</name>
            </repository>
        </repositories>
    
        <dependencies>
            <dependency>
                <groupId>org.apache.struts</groupId>
                <artifactId>struts2-core</artifactId>
                <version>2.2.1.1</version>
            </dependency>
            <dependency>
                <groupId>javassist</groupId>
                <artifactId>javassist</artifactId>
                <version>3.8.0.GA</version>
            </dependency>
            <dependency>
                <groupId>log4j</groupId>
                <artifactId>log4j</artifactId>
                <version>1.2.14</version>
            </dependency>
            <dependency>
                <groupId>org.apache.struts</groupId>
                <artifactId>struts2-convention-plugin</artifactId>
                <version>2.2.1.1</version>
            </dependency>
            <dependency>
                <groupId>org.apache.struts</groupId>
                <artifactId>struts2-spring-plugin</artifactId>
                <version>2.2.1.1</version>
                <exclusions>
                    <exclusion>
                        <artifactId>spring-beans</artifactId>
                        <groupId>org.springframework</groupId>
                    </exclusion>
                    <exclusion>
                        <artifactId>spring-context</artifactId>
                        <groupId>org.springframework</groupId>
                    </exclusion>
                    <exclusion>
                        <artifactId>spring-core</artifactId>
                        <groupId>org.springframework</groupId>
                    </exclusion>
                    <exclusion>
                        <artifactId>spring-web</artifactId>
                        <groupId>org.springframework</groupId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-tx</artifactId>
                <version>3.0.5.RELEASE</version>
            </dependency>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-orm</artifactId>
                <version>3.0.5.RELEASE</version>
            </dependency>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-web</artifactId>
                <version>3.0.5.RELEASE</version>
            </dependency>
            <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-validator</artifactId>
                <version>4.0.2.GA</version>
            </dependency>
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.15</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-log4j12</artifactId>
                <version>1.5.5</version>
            </dependency>
            <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-annotations</artifactId>
                <version>3.5.1-Final</version>
            </dependency>
            <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-entitymanager</artifactId>
                <version>3.5.1-Final</version>
            </dependency>
            <dependency>
                <groupId>org.apache.struts</groupId>
                <artifactId>struts2-config-browser-plugin</artifactId>
                <version>2.2.1.1</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.persistence</groupId>
                <artifactId>javax.persistence</artifactId>
                <version>2.0.3</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-jpamodelgen</artifactId>
                <version>1.1.1.Final</version>
            </dependency>
            <dependency>
                <groupId>javax</groupId>
                <artifactId>javaee-web-api</artifactId>
                <version>6.0</version>
                <scope>provided</scope>
            </dependency>
    
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.8.1</version>
                <scope>test</scope>
            </dependency>
        </dependencies>
    
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>2.3.2</version>
                    <configuration>
                        <source>1.6</source>
                        <target>1.6</target>
                        <compilerArguments>
                            <endorseddirs>${endorsed.dir}</endorseddirs>
                        </compilerArguments>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-war-plugin</artifactId>
                    <version>2.1</version>
                    <configuration>
                        <failOnMissingWebXml>false</failOnMissingWebXml>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-dependency-plugin</artifactId>
                    <version>2.1</version>
                    <executions>
                        <execution>
                            <phase>validate</phase>
                            <goals>
                                <goal>copy</goal>
                            </goals>
                            <configuration>
                                <outputDirectory>${endorsed.dir}</outputDirectory>
                                <silent>true</silent>
                                <artifactItems>
                                    <artifactItem>
                                        <groupId>javax</groupId>
                                        <artifactId>javaee-endorsed-api</artifactId>
                                        <version>6.0</version>
                                        <type>jar</type>
                                    </artifactItem>
                                </artifactItems>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
            <finalName>PartGroupMaster</finalName>
        </build>
    </project>
    


0 commentaires