Spring 4 MVC example with Maven - [Source Code Download]
2017-11-19 16:18
639 查看
In this tutorial, we show you a Spring 4 MVC example, using Maven build tool.
Technologies used :
Spring 4.3.0.RELEASE
Maven 3
JDK 1.8
Eclipse Mars.2 Release (4.5.2)
Boostrap 3
3. Controller & Mapping
The
4. JSP Views
A JSP page(show.jsp) to display the value, and include bootstrap css and js.
5. Spring XML Configuration
5.1. Enable component scanning, view resolver and resource mapping.
5.2. Declares a
In this example, Spring will look for the
6. Build Project
6.1 Build the project in eclipse with maven
6.2.Enter 'clean install' to build project.
6.3.Should see the 'BUILD SUCCESS' result.
7. Run Project on Tomcat Server
7.1.Select Servers tab and right click Tomcat v7.0 and select Add and Remove...
7.2.Add springmvc project to Tomcat.
7.3. Start Tomcat server.
Click 'Home' button to go show page.
springmvc.zip
Good Luck!
========================================================
More reading,and english is important.
I'm Hongten
E | hongtenzone@foxmail.com B | http://www.cnblogs.com/hongten
========================================================
Technologies used :
Spring 4.3.0.RELEASE
Maven 3
JDK 1.8
Eclipse Mars.2 Release (4.5.2)
Boostrap 3
1. Project Structure
Download the project source code and review the project folder structure :2. Maven
Apom.xmltemplate to quick start a Spring MVC project, it defines Spring 4 dependencies and Eclipse workspace configuration.
<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.b510.hongten</groupId> <artifactId>springmvc</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>springmvc Maven Webapp</name> <url>http://maven.apache.org</url> <properties> <project-name>springmvc</project-name> <project-version>0.0.1-SNAPSHOT</project-version> <java-version>1.8</java-version> <org.springframework-version>4.3.0.RELEASE</org.springframework-version> </properties> <dependencies> <!-- Spring MVC dependency --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${org.springframework-version}</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.0.1</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> <!-- log4j dependency--> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> </dependencies> <build> <finalName>${project-name}-${project-version}</finalName> <pluginManagement> <plugins> <plugin> <!-- Maven plugin --> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.3.2</version> <configuration> <source>${java-version}</source> <target>${java-version}</target> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.4</version> <configuration> <warSourceDirectory>src/main/webapp</warSourceDirectory> <warName>${project-name}</warName> <failOnMissingWebXml>false</failOnMissingWebXml> </configuration> </plugin> </plugins> </pluginManagement> </build> </project>
3. Controller & Mapping
The
@RequestMappinghas been available since 2.5, but now enhanced to support REST style URLs.
package com.b510.hongten.demo.web; import org.apache.log4j.Logger; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import com.b510.hongten.demo.entity.Demo; /** * @author Hongten * @date Nov 19, 2017 */ @Controller @RequestMapping("/demo") public class DemoController { private static final Logger logger = Logger.getLogger(DemoController.class); @RequestMapping(value = "/show/{name}", method = RequestMethod.GET) public String show(@PathVariable("name") String name, Model model) { logger.info("name is " + name); Demo demo = new Demo(); demo.setTitle("Spring MVC Demo"); demo.setName(name); model.addAttribute(demo); return "demo/show"; } @RequestMapping(value = "/show", method = RequestMethod.GET) public String show(Model model) { logger.info("show method..."); Demo demo = new Demo(); demo.setTitle("Spring MVC Demo"); demo.setName("Hongten"); model.addAttribute("demo", demo); return "demo/show"; } }
4. JSP Views
A JSP page(show.jsp) to display the value, and include bootstrap css and js.
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <!DOCTYPE html> <html lang="en"> <jsp:include page="/WEB-INF/views/common/common-libs.jsp" /> <head> <title>Spring MVC Demo</title> </head> <nav class="navbar navbar-inverse navbar-fixed-top"> <div class="container"> <div class="navbar-header"> <a class="navbar-brand" href="#">Spring MVC Demo</a> </div> </div> </nav> <div class="jumbotron"> <div class="container"> <h1>${demo.title}</h1> <p> <c:if test="${not empty demo.name}"> Hello <font color='red'>${demo.name}</font> </c:if> <c:if test="${empty demo.name}"> Welcome Welcome! </c:if> </p> <p> <a class="btn btn-primary btn-lg" href="./demo/show" role="button">Home</a> </p> </div> </div> <div class="container"> <div class="row"> <div class="col-md-4"> <h2>Heading</h2> <p>Totoro</p> <p> <a class="btn btn-default" href="./demo/show/Totoro" role="button">View details</a> </p> </div> <div class="col-md-4"> <h2>Heading</h2> <p>Tome James</p> <p> <a class="btn btn-default" href="./demo/show/Tome James" role="button">View details</a> </p> </div> <div class="col-md-4"> <h2>Heading</h2> <p>John Mohanmode</p> <p> <a class="btn btn-default" href="./demo/show/John Mohanmode" role="button">View details</a> </p> </div> </div> <hr> <footer> <p>© Hongten 2017</p> </footer> </div> </body> </html>
5. Spring XML Configuration
5.1. Enable component scanning, view resolver and resource mapping.
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd"> <!-- Enable component scanning --> <context:component-scan base-package="com.b510.hongten" /> <!-- Enable annotation --> <mvc:annotation-driven /> <!-- Enable view resolver --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix"> <value>/WEB-INF/views/</value> </property> <property name="suffix"> <value>.jsp</value> </property> </bean> <!-- Enable resource mapping --> <mvc:resources mapping="/resources/**" location="/resources/" /> </beans>
5.2. Declares a
DispatcherServletin
web.xml. If the Spring XML configuration file is NOT specified, Spring will look for the
{servlet-name}-servlet.xml.
In this example, Spring will look for the
spring-web-servlet.xmlfile.
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <servlet> <servlet-name>spring-web</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>spring-web</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>
6. Build Project
6.1 Build the project in eclipse with maven
Right click project -> Run As -> Maven build...
6.2.Enter 'clean install' to build project.
clean install
6.3.Should see the 'BUILD SUCCESS' result.
7. Run Project on Tomcat Server
7.1.Select Servers tab and right click Tomcat v7.0 and select Add and Remove...
7.2.Add springmvc project to Tomcat.
7.3. Start Tomcat server.
8. Demo
The result like this:http://localhost:8080/springmvc/
Click 'Home' button to go show page.
9. Source Code Download
The source code download below:springmvc.zip
Good Luck!
========================================================
More reading,and english is important.
I'm Hongten
E | hongtenzone@foxmail.com B | http://www.cnblogs.com/hongten
========================================================
相关文章推荐
- Download/Attach source-code/java-docs with maven dependencies
- Spring 3 MVC Framework Based Hello World Web Application Example Using Maven, Eclipse IDE And Tomcat
- Spring 3 MVC: Themes In Spring-Tutorial With Example---reference
- Maven repository combined with spring mvc
- Multiple Models in a View in ASP.NET MVC 4 / MVC 5 (with source code)
- Maven download javadoc or source code
- Spring MVC with ParameterizableViewController Tutorial and Example
- maven download source code and javadoc
- Spring Resource bundle with ResourceBundleMessageSource example
- Spring Data MongoDB example with Spring MVC 3.2
- Create Spring MVC dynamic web project with Maven and make it support Eclipse IDE
- Spring MVC + Mybatis+MySQL File Upload and Download Example
- maven springmvc Error creating bean with name 'org.springframework.web.servlet.mvc.annotation
- Spring MVC @RequestMapping Annotation Example with Controller, Methods, Headers, Params, @RequestParam, @PathVariable--转载
- Spring 3 mvc hello world application with maven and jstl
- http://crunchify.com/simplest-spring-mvc-hello-world-example-tutorial-spring-model-view-controller-tips/ 非常棒的spring入门,maven,以及eclipse
- maven 总结整理(二)——download source code
- idea+maven+ssm(spring+spring mvc+mybatis)初始化项目
- maven+mybatis+spring+springmvc整合
- 转载 Spring MVC Exception Handling Example