springMVC的学习记录(1)第一个Springmvc程序---扩展的配置方式

springmvc并不是一个前后端分离的框架,它是javaweb的升级版,但是对它的学习可以为springboot打下基础,我认为还是很有必要的。

首先是在idea中创建第一个springmvc程序,并且导入需要的包。

//springmvc主要jar包   
<dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>5.3.24</version>
    </dependency>
//日志记录
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
      <version>1.2.11</version>
    </dependency>
//servlet  Javaweb项目后端必须的,通过servlet处理前端请求    
<dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>4.0.1</version>
      <scope>provided</scope>
    </dependency>
//一个写网页的jar包
    <dependency>
      <groupId>org.thymeleaf</groupId>
      <artifactId>thymeleaf-spring5</artifactId>
      <version>3.1.1.RELEASE</version>
    </dependency>
//测试使用
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

然后我们要编写Web.xml配置。对于javaweb有所学习的同学,就会明白,在webapp---webinf---web.xml,对于servlet配置,然后可以获取前端的数据,进行处理。

servlet的配置方式如下

<!--这是一个普通的servlet的配置方式,前端通过网址找到  </url-pattern>,然后通过name找到对应的类-->
        <servlet>
          <servlet-name>springmvc</servlet-name>
<!-- 为什么要导入这个类呢?我们也没有在java包中实现,回想一下之前的javaweb,我们是通过继承httpservlet方法实现的Servlet,而这类,也就是springmvc的核心组成部分,作用是
  拦截前端发送过来的请求,调用不同的servlet,处理业务         -->
          <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

        </servlet>
         <servlet-mapping>
           <servlet-name>springmvc</servlet-name>
<!-- 因为要拦截前端发送过来的请求,但是为了方便,我们不能在如同在、Javaweb中的对于每一个清秀都进行一个配置,我们可以写一个路径,不管前端发送的请求是什么,我们都接收写来,然后通过
      DispatcherServlet,找到对应的处理方法      -->
           <url-pattern>/</url-pattern>
<!--   可以接收到除了 jsp的所有html js  css文件          -->
         </servlet-mapping>

但是

<!--    但是这是servlet的配置文件,maven工程需要将配置文件全部放到resources中,那么我们就需要升级配置方式-->

 扩展的配置方式如下

        <servlet>
          <servlet-name>springmvc</servlet-name>
<!-- 为什么要导入这个类呢?我们也没有在java包中实现,回想一下之前的javaweb,我们是通过继承httpservlet方法实现的Servlet,而这类,也就是springmvc的核心组成部分,作用是
  拦截前端发送过来的请求,调用不同的servlet,处理业务         -->
          <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <init-param>
                <param-name>contextConfigLocation</param-name>
                <param-value>classpath:springmvc.xml</param-value>
            </init-param>
        </servlet>

servlet-mapping没有发生改变,但是在Class下面添加了 init-param,  在 param-name中填写了一个上下文加载器,然后填写了springmvc.xml的路径,然后我们就可以在resources中建立SpringMVC的配置文件了

完整的配置方式如下
  <display-name>Archetype Created Web Application</display-name>
<!--这是一个普通的servlet的配置方式,前端通过网址找到  </url-pattern>,然后通过name找到对应的类-->
        <servlet>
          <servlet-name>springmvc</servlet-name>
<!-- 为什么要导入这个类呢?我们也没有在java包中实现,回想一下之前的javaweb,我们是通过继承httpservlet方法实现的Servlet,而这类,也就是springmvc的核心组成部分,作用是
  拦截前端发送过来的请求,调用不同的servlet,处理业务         -->
          <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <init-param>
                <param-name>contextConfigLocation</param-name>
                <param-value>classpath:springmvc.xml</param-value>
            </init-param>
<!--   servlet的初始是第一次访问的时候,但是在加上   DispatcherServlet,初始化的东西太多,有了下面的标签,就可以在tomcat初始化的时候初始化内容,减少第一次访问时间      -->
            <load-on-startup>1</load-on-startup>
        </servlet>
         <servlet-mapping>
           <servlet-name>springmvc</servlet-name>
<!-- 因为要拦截前端发送过来的请求,但是为了方便,我们不能在如同在、Javaweb中的对于每一个清秀都进行一个配置,我们可以写一个路径,不管前端发送的请求是什么,我们都接收写来,然后通过
      DispatcherServlet,找到对应的处理方法      -->
           <url-pattern>/</url-pattern>
<!--   可以接收到除了 jsp的所有html js  css文件          -->
         </servlet-mapping>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值