sábado, 4 de noviembre de 2017

Spring Framework: Manejando el envio de una forma con IntelliJ


En esta práctica vemos el manejo del submit en una forma con el ide de IntelliJ y Maven como manejador de dependencias de librerias.

Esta guia se basa en las guias de Spring https://spring.io/guides/gs/handling-form-submission/

Se construirá un formato que estará disponible por medio de
http://localhost:8080/greeting 

Se crea un nuevo proyecto de cero y siguiendo la guia de Spring nos manda a utlilizar un arquetipo de maven el cual tiene problemas, así que se hace sin arquetipo, se proporciona GroupId
org.springframework
y artifactId gs-handling-form-submission

y nos crea un proyecto peloncito, el cual hay que crearle estructura de directorios. el POM.xml que nos crea es algo así

<?xml version="1.0" encoding="UTF-8"?><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>org.springframework</groupId>
    <artifactId>gs-handling-form-submission</artifactId>
    <version>1.0-SNAPSHOT</version>

</project>

Se completa el archivo POM.xml para agragarle dependencias y queda así

<?xml version="1.0" encoding="UTF-8"?><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>org.springframework</groupId>
    <artifactId>gs-handling-form-submission</artifactId>
    <version>1.0-SNAPSHOT</version>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.8.RELEASE</version>
    </parent>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.glassfish.main.common/glassfish-api -->        <dependency>
            <groupId>org.glassfish.main.common</groupId>
            <artifactId>glassfish-api</artifactId>
            <version>4.1.1</version>
        </dependency>
    </dependencies>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

    <repositories>
        <repository>
            <id>spring-releases</id>
            <url>https://repo.spring.io/libs-release</url>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>spring-releases</id>
            <url>https://repo.spring.io/libs-release</url>
        </pluginRepository>
    </pluginRepositories>
</project>

Se crea una estructura de directorios debajo de src como se muestra en la siguiente ventana, tambien se crea el POJO greeting y su controlador, un archivo greeting.html y result.html


Observemos la ventana de Maven, damos click en spring-boot:run y tendremos la forma disponible.
El spring-boot levantara un tomcat embebido.


mencionamos que hay varias versiones de Spring, tienen sutiles variaciones en la implementación, por ejemplo las anotaciones GetMapping y PostMapping aquí usadas no estan disponibles en versiones anteriores.

No hay comentarios:

Publicar un comentario