zoukankan      html  css  js  c++  java
  • SpringMVC拓展——利用maven构建springMVC项目

    一、构建项目结构

    首先需要构建一个符合目录结构的maven项目

        file->new->maven project,勾选 create a simple project->next

      //打包方式请选择war

      默认的maven工程使用的是JDK1.5,如何一劳永逸的更换JDK版本呢:(一次性的可以自己进行配置包括JDK版本和编译版本)

        [1]打开settings.xml文件
        [2]找到profiles标签
        [3]加入如下配置

    View Code

      当然,由于版本问题,可能出现识别不了JDK8的问题,解决 方案可以是更换更高的maven版本,或者更换JDK版本

      但是呢,这个视图不是我们想要的web工程的视图,我们来对其进行调整

      右击项目->properties->project facts

      将动态web工程的勾暂时去掉->apply(骗eclipse说这是一个java工程)->重新勾选(目的是出现下面多出的一个链接!)

      点击该链接进行web工程的配置

    //将content directory改为图中的目录

      ok->apply->ok后完成了

    到这里呢,我们仍然发现index.jsp会报错:

    The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path

        原因就是缺少了servlet的api (当然,我们可以通过eclipse的方式:add library->server runtime的方式)

        但我们这里合理的方式应该是maven的方式:(回顾前一天provided范围的使用

        在pom.xml中加入如下配置:

    View Code

      //马上就不报错了 (报错时可以查看problems视图,查看具体信息)

      当然,我们这里再导入一下JSP的API,让JSP有良好的提示功能

         在pom.xml中添加如下依赖信息:

    View Code

      //范围必须是probided范围,compile范围将报错!(产生了jar包冲突)

    二、引入相关依赖

      在pom.xml中进行配置,加上servlet的api,springMVC的helloWorld的依赖如下:

    <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>cn.jiangbei</groupId>
        <artifactId>SpringMVC-Test</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <packaging>war</packaging>
        <properties>
            <spring.version>4.3.8.RELEASE</spring.version>
        </properties>
        <dependencies>
            <!-- junit依赖 -->
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.0</version>
                <scope>test</scope>
            </dependency>
            <!-- spring的依赖 -->
            <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <!-- servlet-api -->
        <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>servlet-api</artifactId>
                <version>2.5</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>javax.servlet.jsp</groupId>
                <artifactId>jsp-api</artifactId>
                <version>2.1.3-b06</version>
                <scope>provided</scope>
            </dependency>
        </dependencies>
    </project>

    三、配置文件编写

      1.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" id="WebApp_ID" version="2.5">
      <servlet>
        <servlet-name>springDispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
          <param-name>contextConfigLocation</param-name>
          <param-value>classpath:springContext.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
      </servlet>
      <servlet-mapping>
        <servlet-name>springDispatcherServlet</servlet-name>
        <url-pattern>/</url-pattern>
      </servlet-mapping>
    </web-app>

      //注意param-value(目录结构见文末)和url-pattern的配置

      2.springMVC配置文件:SpringContext.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/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd
            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">
    
        <!-- 配置包扫描,扫描controller -->
        <context:component-scan base-package="cn.test"></context:component-scan>
        <!-- 注解驱动,配置映射器和适配器 -->
        <mvc:annotation-driven></mvc:annotation-driven>
        <!-- 视图页面配置 -->
        <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
            <property name="prefix" value="/WEB-INF/jsp/" />
            <property name="suffix" value=".jsp" />
        </bean>
    </beans>

      //这里需要配置的是三大组件(映射器、适配器、视图解析器)

      测试类就不再编写了,比较简单

      部署到tomcat上即可~!

    四、目录结构

  • 相关阅读:
    >动态规划 4.26
    树链剖分+线段树求路径交
    PTA团体程序设计天梯赛-练习集 L2 网红点打卡攻略(模拟)
    PTA团体程序设计天梯赛-练习集 L2完全二叉树的层序遍历(递归)
    PTA团体程序设计天梯赛-练习集 L3-020 至多删三个字符 (dp)
    codeforces1509 D. Binary Literature (构造+指针)
    函数内容小结
    关于vim复制剪贴粘贴命令的总结-转
    GCC编译命令常用选项
    Ubuntu 和 windows1下文件夹共享的指令
  • 原文地址:https://www.cnblogs.com/jiangbei/p/6993977.html
Copyright © 2011-2022 走看看