1. 程式人生 > >springmvc學習筆記(一) -- 從零搭建,基礎入門

springmvc學習筆記(一) -- 從零搭建,基礎入門

out hand char webapp core localhost list ges del

1、新建maven項目

參考mybatis學習筆記(五) -- maven+spring+mybatis從零開始搭建整合詳細過程(上)第一部分,修改配置

技術分享

2、修改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/xsd/maven-4.0.0.xsd">
    <
modelVersion>4.0.0</modelVersion> <groupId>com.lmei.springmvc</groupId> <artifactId>springmvc01</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <properties> <project.build.sourceEncoding
>UTF-8</project.build.sourceEncoding> <spring.version>4.3.0.RELEASE</spring.version> </properties> <dependencies> <!-- 添加Spring-core包 --> <dependency> <groupId>org.springframework</groupId> <
artifactId>spring-core</artifactId> <version>4.1.4.RELEASE</version> </dependency> <!-- 添加spring-context包 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>4.1.4.RELEASE</version> </dependency> <!-- 添加spring-jdbc包 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>4.1.4.RELEASE</version> </dependency> <!-- 添加spring-test包 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>4.1.4.RELEASE</version> </dependency> <!-- 添加spring-web包 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>4.1.4.RELEASE</version> </dependency> <!--添加spring-webmvc包 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>4.1.4.RELEASE</version> </dependency> <!-- JSTL --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> </dependencies> </project>

在加載包的過程中,出現下載失敗的情況,找到存放位置,將下載jar失敗的文件夾刪掉,重新保存pom.xml讓其重新下載。

出現重復多次操作,依然下載失敗的情況,網上找了一些解決方法,比如直接使用maven install還是失敗,最後重新開了一個工作空間,在另外一個工作空間建了個新的maven項目,然後把加載失敗的包的配置復制到那邊的pom.xml,可以下載成功。然後原項目的pom.xml重新保存後,項目不再報錯。所以如果遇到同樣的情況,可以試下用這種方法。

3、新建包,創建一個controller類

技術分享

package com.lmei.springmvc01.controller;

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

//@Controller是為了讓Spring IOC容器初始化時自動掃描到;
//@RequestMapping是為了映射請求路徑
@Controller
@RequestMapping("/Hello")
public class HelloWorld {
    @RequestMapping("/SayHello")
    public String SayHi(Model model) {
        model.addAttribute("message", "Hello Spring MVC!");
        return "hello";  //返回視圖
    }
}

4、在WEB-INFO下創建一個文件夾view,然後在裏面創建一個jsp文件,命名為hello.jsp

技術分享

hello.jsp的代碼如下:(webapp/WEB-INFO/view/hello.jsp)

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Hello Spring MVC!</title>
</head>
<body>
    <h2>${message}</h2>
</body>
</html>

index.jsp代碼如下: (webapp/index.jsp)

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
hello
</body>
</html>

5、添加springmvc-servlet.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"
    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-4.3.xsd
        http://www.springframework.org/schema/mvc 
        http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd">

    <!-- 自動掃描包,實現支持註解的IOC -->
    <context:component-scan base-package="com.lmei.springmvc01" />
    

    <!-- spring mvc不處理靜態資源 -->
    <mvc:default-servlet-handler />

    <!-- 支持mvc註解驅動 -->
    <mvc:annotation-driven />

    <!-- 視圖解析器 -->
    <bean
        class="org.springframework.web.servlet.view.InternalResourceViewResolver"
        id="internalResourceViewResolver">
        <!-- 前綴 -->
        <property name="prefix" value="/WEB-INF/view/" />
        <!-- 後綴 -->
        <property name="suffix" value=".jsp" />
    </bean>
</beans>

6、修改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" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  <servlet>
    <servlet-name>springmvc</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath*:springmvc-servlet.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>springmvc</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>
</web-app>

7、測試

項目右鍵->Run As->Run On Server->Tomcat...

啟動時間可能比較長,默認的“start-timeout=45”,修改下時間長度

工作空間下的 metadata/.plugins/org.eclipse.wst.server.core/servers.xml 文件,修改時間,比如改成450

start-timeout="450"

保存後,重新啟動,成功運行,默認跳到index.jsp頁面

技術分享

在瀏覽器輸入:http://localhost:8888/springmvc01/Hello/SayHello

技術分享

springmvc學習筆記(一) -- 從零搭建,基礎入門