初识SpringMVC(SpringMVC学习笔记一)

2024-04-14 1871阅读

1 、还是熟悉的配方,先创建一个父Maven项目(忘记怎么创建项目了就去前面翻笔记),导入通用的配置依赖

  4.0.0
  org.example
  SprinMVC_Father
  war
  1.0-SNAPSHOT
  SprinMVC_Father Maven Webapp
  http://maven.apache.org
  
    
    
      junit
      junit
      4.12
    
    
    
      org.springframework
      spring-webmvc
      5.1.9.RELEASE
    
    
    
      javax.servlet
      servlet-api
      2.5
    
    
    
      javax.servlet.jsp
      jsp-api
      2.2
    
    
    
      javax.servlet
      jstl
      1.2
    
  
  
    SprinMVC_Father
  

2、创建子项目,并确定子项目支持web项目

初识SpringMVC(SpringMVC学习笔记一)

给子项目也导入servlet和jsp的依赖(双重导入确保不会出错,正常的话父项目导入了子项目不导入也可以,这里我们导入两次确保不会出问题)

 
    
      javax.servlet
      servlet-api
      2.5
    
    
    
      javax.servlet.jsp
      jsp-api
      2.2
    

3、创建一个helleservlet类继承httpservlet用来处理用户的请求,实现父类的doGet和doPost方法

package com.li.myservlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class HellServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //1、获取前段参数
        String method = req.getParameter("method");
        if(method.equals("add")){
            req.getSession().setAttribute("msg","执行了add方法");
        }
        if(method.equals("delete")){
            req.getSession().setAttribute("msg","执行了delete方法");
        }
        //2、调用业务层 暂时没有业务成
        //3、视图转发或重定向
        req.getRequestDispatcher("/WEB-INF/jsp/test.jsp").forward(req,resp);
    }
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doGet(req, resp);
    }
}

顺便在web里写个测试页面

 Date: 2024/4/6
  Time: 16:45
  To change this template use File | Settings | File Templates.
--%>



    Title


${msg}

再写个表单测试




    表单




    



 3、写完servlet的第一件事情就是给它去web.xml中注册上

web.xml的头文件


  

注册完后的web.xml


      
        
          hello
          com.li.myservlet.HellServlet
        
        
          hello
          /hello
        
        
        



        




 最后目录如下:

初识SpringMVC(SpringMVC学习笔记一)

3、一切都写完了就配置tomcat

初识SpringMVC(SpringMVC学习笔记一)

初识SpringMVC(SpringMVC学习笔记一)

初识SpringMVC(SpringMVC学习笔记一)

初识SpringMVC(SpringMVC学习笔记一) 初识SpringMVC(SpringMVC学习笔记一)初识SpringMVC(SpringMVC学习笔记一)

3、初识SpringMVC

初识SpringMVC(SpringMVC学习笔记一)

SpringMVC的原理如下

初识SpringMVC(SpringMVC学习笔记一) 初识SpringMVC(SpringMVC学习笔记一)

初识SpringMVC(SpringMVC学习笔记一) 初识SpringMVC(SpringMVC学习笔记一)

初识SpringMVC(SpringMVC学习笔记一)

4、对 SpringMVC有初步了解之后我们再来创建一次项目

第一步创建视图

初识SpringMVC(SpringMVC学习笔记一)

 第二步:确保最后发布的项目中导入了SpringMVC的依赖

初识SpringMVC(SpringMVC学习笔记一)

第三步:在web.xml配置文件中配置我们的DispatchServlet


        
            springmvc
            org.springframework.web.servlet.DispatcherServlet
            
            
                contextConfigLocation
                
                classpath:springmvc-servlet.xml
            
        
            1
        

        
            springmvc
            /
        
    
第四步:编写springmvc的配置文件,其实就是spring的配置文件


    

    

    
        

        

        
    
    
第五步:编写Controller
package com.li.controller;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class HelloController implements Controller {
    @Override
    public ModelAndView handleRequest(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception {
        ModelAndView modelAndView = new ModelAndView();
//       假设一个业务代码
        String result = "HelloSpringmvc";
        modelAndView.addObject("msg",result);
//        视图跳转
        modelAndView.setViewName("test");
        return modelAndView;
    }
}

4、真实的开发:(一般不会像上面这样用)

第一步:配置web.xml配置文件

  Archetype Created Web Application
  
  
    springmvc
    org.springframework.web.servlet.DispatcherServlet
    
    
      contextConfigLocation
      
      classpath:springmvc-servlet.xml
    
    
    1
  
  
  
    springmvc
    /
  

第二步:创建并配置springmvct配置文件 

    
    
    
    
    
    
    
    
        
        
        
        
    
第三步:创建controlle类
package com.li.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
//@Controller是为了让Spring IOC容器初始化时自动扫描到;
//@RequestMapping是为了映射请求路径,这里因为类与方法上都有映射所以访问时应该是/HelloController/hello;
    @Controller
    @RequestMapping("/HelloController")
    public class HelloController {
        //真实访问地址 : 项目名/HelloController/hello
        @RequestMapping("/hello")
//        方法中声明Model类型的参数是为了把Action中的数据带到视图中;
        public String sayHello(Model model){
            //向模型中添加属性msg与值,可以在JSP页面中取出并渲染
            model.addAttribute("msg","hello,SpringMVC");
//            方法返回的结果是视图的名称hello,加上配置文件中的前后缀变成WEB-INF/jsp/hello.jsp。
            return "hello";
        }
    }
第四步:常见视图层(注意要在springmvct配置文件中配置的路径下创建视图层)

这里的路径是:/WEB-INF/jsp/




    Title


${msg}


总结:

实现步骤其实非常的简单:

  1. 新建一个web项目
  2. 导入相关jar包
  3. 编写web.xml , 注册DispatcherServlet
  4. 编写springmvc配置文件
  5. 接下来就是去创建对应的控制类 , controller
  6. 最后完善前端视图和controller之间的对应
  7. 测试运行调试.

使用springMVC必须配置的三大件:

处理器映射器、处理器适配器、视图解析器

通常,我们只需要手动配置视图解析器,而处理器映射器和处理器适配器只需要开启注解驱动即可,而省去了大段的xml配置

VPS购买请点击我

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

目录[+]