

Table of Contents
1. Overview
This example of @PostRequest and @GetRequest in Spring 4.3 new feature.
Spring Framework 4.3 introduces the following method-level composed variants of the @RequestMapping
annotation that help to simplify mappings for common HTTP methods and better express the semantics of the annotated handler method. For example, a @GetMapping
can be read as a GET
@RequestMapping
.
@GetMapping
@PostMapping
@PutMapping
@DeleteMapping
@PatchMapping
Use @RequestMapping(method=GET)
or @GetMapping
to narrow the mapping.
Use @RequestMapping(method=POST)
or @PostMapping
to narrow the mapping.
Note:
To enable @GetRequest and @PostRequest must need to add <mvc:annotation-driven/> in -servlet.xml file.
@EnableWebMvc for java based configuration.
2. Example
2.1 pom.xml
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.springapp</groupId> <artifactId>spring-get-post-annotation</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>spring-get-post-annotation</name> <properties> <spring.version>4.3.0.RELEASE</spring.version> </properties> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> </dependency> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>2.1</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>${spring.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> </dependencies> <build> <finalName>spring-hello-work</finalName> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build> </project>
2.2 HelloController.java
package com.springdemo; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; @Controller @RequestMapping("demo") public class HelloController { @GetMapping(value = "getMapping") public String getMapping(ModelMap model) { model.addAttribute("message", "This is Get Method using @GetMapping annotation..!"); return "hello"; } @PostMapping(value = "postMapping") public String postMapping(ModelMap model) { model.addAttribute("message", "This is Post Method using @PostMapping annotation..!"); return "hello"; } }
2.3 hello.jsp
<html> <body> <h1>${message}</h1> </body> </html>
2.4 mvc-dispatcher-servlet.xml
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd "> <context:component-scan base-package="com.springdemo"/> <mvc:annotation-driven/> <!--Must require to use @GetMapping and @PostMapping annotation --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/pages/"/> <property name="suffix" value=".jsp"/> </bean> </beans>
2.5 web.xml
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name>Spring MVC Application</display-name> <servlet> <servlet-name>mvc-dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>mvc-dispatcher</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>
3. Source Code
Was this post helpful?
Let us know if you liked the post. That’s the only way we can improve.
2 comments. Leave new
I absolutely love your blog and find most of your post’s to be exactly I’m looking for.
Would you offer guest writers to write content to suit your needs?
I wouldn’t mind producing a post or elaborating on a lot of the subjects you
write with regards to here. Again, awesome site!
Hello Benjamin,
Thank you for your message. Yes we are offer guest writers to express ideas. You can submit article topics at [email protected].
Our guest post team review your topics and update you for the same.
Thanks,