Search This Blog

Saturday, January 19, 2013

Spring MVC Hello World Example

The following example show how to write a simple web based Hello World application using Spring MVC framework. To start with it, let us have working Eclipse IDE in place and follow the following steps to develope a Dynamic Web Application using Spring Web Framework:
StepDescription
1Create a Dynamic Web Project with a name HelloWeb and create a package com.sachin under the src folder in the created project.
2Drag and drop below mentioned Spring and other libraries into the folder WebContent/WEB-INF/lib.
3Create a Java class HelloController under the com.sachin package.
4Create Spring configuration files Web.xml and HelloWeb-servlet.xml under theWebContent/WEB-INF folder.
5Create a sub-folder with a name jsp under the WebContent/WEB-INF folder. Create a view filehello.jsp under this sub-folder.
6The final step is to create the content of all the source and configuration files and export the application as explained below.

The content of HelloController.java file:
package com.sachin;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.ui.ModelMap;

@Controller
@RequestMapping("/hello")
public class HelloController{
 
   @RequestMapping(method = RequestMethod.GET)
   public String printHello(ModelMap model) {
      model.addAttribute("message", "Hello Spring MVC Framework!");

      return "hello";
   }

}
Following is the content of Spring Web configuration file web.xml
 id="WebApp_ID" 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">

   Spring MVC Application
HelloWeb org.springframework.web.servlet.DispatcherServlet 1 HelloWeb /
Following is the content of another Spring Web configuration file HelloWeb-servlet.xml
 xmlns="http://www.springframework.org/schema/beans"
   xmlns:context="http://www.springframework.org/schema/context"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="
   http://www.springframework.org/schema/beans     
   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
   http://www.springframework.org/schema/context 
   http://www.springframework.org/schema/context/spring-context-3.0.xsd">

    base-package="com.sachin" />

    class="org.springframework.web.servlet.view.InternalResourceViewResolver">
       name="prefix" value="/WEB-INF/jsp/" />
       name="suffix" value=".jsp" />
   
 
Following is the content of Spring view file hello.jsp
<%@ page contentType="text/html; charset=UTF-8" %>


</font><font class="pln" style="margin: 0px; padding: 0px;">Hello World</font><font class="tag" style="margin: 0px; padding: 0px;" color="#000088">

${message}
Finally, following is the list of Spring and other libraries to be included in your web application. You simply drag these files and drop them in WebContent/WEB-INF/lib folder.
  • commons-logging-x.y.z.jar
  • org.springframework.asm-x.y.z.jar
  • org.springframework.beans-x.y.z.jar
  • org.springframework.context-x.y.z.jar
  • org.springframework.core-x.y.z.jar
  • org.springframework.expression-x.y.z.jar
  • org.springframework.web.servlet-x.y.z.jar
  • org.springframework.web-x.y.z.jar
  • spring-web.jar
Once you are done with creating source and configuration files, export your application. Right click on your application and use Export > WAR File option and save your HelloWeb.war file in Tomcat'swebapps folder.
Now start your Tomcat server and make sure you are able to access other web pages from webapps folder using a standard browser. Now try to access the URL http://localhost:8080/HelloWeb/hello and if everything is fine with your Spring Web Application, you should see the following result:

No comments:

Post a Comment