Blog java và java web Tâm sự lập trình Hướng dẫn học java web Liên hệ Thanh toán

Hướng dẫn tạo project spring mvc cơ bản sử dụng XML configuration

Khóa học java web spring mvc cơ bản miễn phí: 

Các phần mềm và thư viện sử dụng:

  • Apache maven 3.6.0
  • Eclipse EE
  • JDK 1.8
  • Spring framework 4.3.13.RELEASE
  • Servlet api 3.1.0, jsp api 2.3.1, jstl 1.2, Tomcat 8.5

Download các phần mềm tại đây: LINK DOWNLOAD

Spring MVC flow:

Cấu trúc project:

 

Các bước tạo project spring mvc cơ bản:

1. Tạo 1 project java web sử dụng maven:

Mở Eclipse EE, sau đó File -> New -> other

Chú ý: Artifact Id là tên project mà các bạn đang làm, ví dụ cái chúng ta đang làm là spring mvc thì các bạn để là spring-mvc

2. Sau khi tạo xong project, update lại project:

3. Mở file POM.xml, add các thông tin như bên dưới:

Thông tin file POM.xml:

<properties>
   <servlet.api.version>3.1.0</servlet.api.version>
   <springframework.version>4.3.13.RELEASE</springframework.version>
   <jsp.api.version>2.3.1</jsp.api.version>
   <jstl.version>1.2</jstl.version>
   <maven.compiler.source>1.8</maven.compiler.source>
   <maven.compiler.target>1.8</maven.compiler.target>
</properties>

<dependencies>
   <!-- Spring -->
  
<dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-core</artifactId>
      <version>${springframework.version}</version>
   </dependency>
   <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-web</artifactId>
      <version>${springframework.version}</version>
   </dependency>
   <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>${springframework.version}</version>
   </dependency>
   <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-tx</artifactId>
      <version>${springframework.version}</version>
   </dependency>
   <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-orm</artifactId>
      <version>${springframework.version}</version>
   </dependency>
   <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
      <version>${springframework.version}</version>
   </dependency>
   <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context-support</artifactId>
      <version>${springframework.version}</version>
   </dependency>

   <!-- servlet api -->
  
<dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>${servlet.api.version}</version>
   </dependency>

   <!-- jsp api -->
  
<dependency>
      <groupId>javax.servlet.jsp</groupId>
      <artifactId>javax.servlet.jsp-api</artifactId>
      <version>${jsp.api.version}</version>
   </dependency>

   <!-- jstl -->
  
<dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>jstl</artifactId>
      <version>${jstl.version}</version>
   </dependency>
</dependencies>

<build>
   <plugins>
      <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-compiler-plugin</artifactId>
         <version>3.6.1</version>
         <configuration>
            <source>1.8</source>
            <target>1.8</target>
         </configuration>
      </plugin>
   </plugins>
</build>

4. Tiếp tục làm theo hình:

Bước 1: trong folder main, tạo 1 folder tên webapp

Bước 2: trong folder webapp tạo 1 folder tên WEB-INF

Bước 3: trong folder WEB-INF tạo 1 file web.xml, và add thông tin như bên dưới vào file web.xml:

Thông tin file web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        
xmlns="http://java.sun.com/xml/ns/javaee"
        
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
        
version="2.5"
>
    <display-name>spring-mvc</display-name>

    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
            /WEB-INF/context/applicationContext.xml
        </
param-value>
    </context-param>

    <!-- Spring MVC -->
   
<servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/context/dispatcher-servlet.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

    <session-config>
        <tracking-mode>COOKIE</tracking-mode>
    </session-config>

    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
   
</
web-app>

 

Bước 4: Trong folder webapp tạo 1 file index.jsp và add thông tin như bên dưới vào file index.jsp

Thông tin file index.jsp

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:redirect url="/trang-chu"/>

 

5. Tiếp tục làm theo như hình bên dưới:

 

Bước 1: tạo folder context trong WEB-INF

Bước 2: trong folder context tạo 2 file applicationContext.xml và dispatcher-servlet.xml và copy code vào 2 file này theo code bên dưới

applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<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"

      
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.xsd"
>

    <!-- Activates scanning of @Repository and @Service and @Component -->

   
<context:component-scan base-package="com.laptrinhjavaweb" />

</beans>

 

dispatcher-servlet.xml

<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.xsd

        http://www.springframework.org/schema/mvc

        http://www.springframework.org/schema/mvc/spring-mvc.xsd

        http://www.springframework.org/schema/context

              http://www.springframework.org/schema/context/spring-context.xsd"
>

   <context:component-scan
     
base-package="com.laptrinhjavaweb.controller"
/>

   <mvc:annotation-driven />

   <bean
     
class="org.springframework.web.servlet.view.InternalResourceViewResolver"
>

      <property name="prefix" value="/WEB-INF/views/" />

      <property name="suffix" value=".jsp" />

   </bean>
  
   <
mvc:interceptors>
        <bean class="com.laptrinhjavaweb.interceptor.MenuHandleInterceptor"></bean>
    </mvc:interceptors>
</beans>

 

Bước 3: trong WEB-INF tạo folder views

Bước 4: tạo file home.jsp và copy code như bên dưới vào file home.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Home Page</title>

</head>

<body>
<h1>Trang chủ</h1>
<h1>Menu</h1>

<%@ include file="menu.jsp" %>
</body>

</html>

 

6. Tiếp tục làm theo hình bên dưới:

Tạo 1 package có tên là: com.laptrinhjavaweb.controller

7. Trong package “com.laptrinhjavaweb.controller” tạo 1 file java HomeController.java và copy code bên dưới

package com.laptrinhjavaweb.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class HomeController {
  
  
@RequestMapping(value = "/trang-chu", method = RequestMethod.GET)
  
public ModelAndView homePage() {
      ModelAndView mav =
new ModelAndView("home");
     
return mav;
   }
  
  
@RequestMapping(value = "/springmvc", method = RequestMethod.GET)
  
public ModelAndView springMVCPage() {
      ModelAndView mav =
new ModelAndView("springmvc");
     
return mav;
   }
}

 

8. Sau khi hoàn thành các bước trên, bạn build lại project như sau:

Sử dụng câu lệnh trong maven: mvn clean install để build project

9. Cuối cùng thì chúng ra sẽ run project sử dụng tomcat

Thông tin liên hệ: