【SpringMVC】1 使用IDEA創建SpringMVC項目

創建項目

選擇Spring MVC

在這裏插入圖片描述

設置項目名稱

在這裏插入圖片描述

這樣創建後,會自動的下載SpringMVC需要使用到的jar包

在這裏插入圖片描述

結束後會提示要不要創建WEB-INF及xml文件

在這裏插入圖片描述

創建完成的樣子

在這裏插入圖片描述

接下來開始玩吧 HelloWorld

在這裏插入圖片描述

WEB-INF/springmvc.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.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">

  <!-- 配置自動掃描的包 -->
  <context:component-scan base-package="com.test.springmvc.bandlers"></context:component-scan>

  <!-- 配置視圖解析器:如何把 handler 方法返回值解析爲實際的物理視圖 -->
  <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/views/"></property>
    <property name="suffix" value=".jsp"></property>
  </bean>
</beans>
HelloWorld.java(com.test.springmvc.bandlers.HelloWorld)
package com.test.springmvc.bandlers;

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

@Controller
public class HelloWorld {

    /**
     * @ClassName HelloWorld
     * @Description //TODO
     * @Author Zhong Yanghao
     * @Date 20:04 2019/4/18
     * @Param []
     * @return java.lang.String 
     * @Version 1.0
     * 1.使用 @RequestMapping 註解來映射請求的URL
     * 2.返回值會通過視圖解析器解析爲實際的物理視圖,
     * 對於 InternalResourceViewResolver 視圖解析器,會做出如下的解析:
     * 通過 prefix + returnVal + 後綴 這樣的方式得到實際的物理視圖,然後做轉發操作
     *
     * /WEB-INF/views/success.jsp
     */
    @RequestMapping("/helloworld")
    public String hello(){
        System.out.println("hello world");
        return "success";
    }
}
index.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
  <head>
    <title>$Title$</title>
  </head>
  <body>
    <a href="helloworld">Hello World</a>
  </body>
</html>
WEB-INF/views/success.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
  <title>Title</title>
</head>
<body>
  <h4>Sucess Page</h4>
</body>
</html>
WEB-INF/web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/applicationContext.xml</param-value>
  </context-param>
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <servlet>
    <servlet-name>dispatcher</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <!-- 配置 DispatcherServlet -->
  <servlet>
    <servlet-name>dispatcherServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <!-- 配置配置 DispatcherServlet 的一個初始化參數:配置 SpringMVC 配置文件的位置和名稱 -->
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>springmvc.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>dispatcher</servlet-name>
    <url-pattern>*.form</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>dispatcherServlet</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>
</web-app>
實際上也可以不通過 contextConfigLocation 來配置 SpringMVC 的配置文件,而使用默認的。

默認的配置文件爲:/WEB-INF/< servlet-name>-servlet.xml
把配置信息註釋或者刪除,然後把springmvc.xml重新按照默認命名規則命名即可

    <!-- 配置 DispatcherServlet 的一個初始化參數:配置 SpringMVC 配置文件的位置和名稱 -->
<!--    <init-param>-->
<!--      <param-name>contextConfigLocation</param-name>-->
<!--      <param-value>springmvc.xml</param-value>-->
<!--    </init-param>-->

tomcat啓動

在這裏插入圖片描述
在這裏插入圖片描述

效果

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

出現的問題

缺少jar 包

錯誤信息

Error configuring application listener of class org.springframework.web.context.ContextLoaderListener

在這裏插入圖片描述

解決辦法

/WEB-INF/下創建lib文件夾,添加一下包
在這裏插入圖片描述

重新運行就好了

找不到dispatcherServlet-servlet.xml
IOException parsing XML document from ServletContext resource [/WEB-INF/dispatcherServlet-servlet.xml]; nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/dispatcherServlet-servlet.xml]

在這裏插入圖片描述

解決辦法

我把xml放在了src下,移動到web/WEB-INF/下就好了

發佈了102 篇原創文章 · 獲贊 18 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章