栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SpringMvc框架

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringMvc框架

目录

1.什么是MVC?

2.什么是SpringMVC

3.为什么要使用SpringMVC框架

4.如何使用SpringMVC

4.1创建一个maven-web工程

4.2引入springmvc依赖

4.3注册DispatcherServlet到web.xml文件上

4.4 创建我们的springmvc配置文件

4.5创建一个controller类

5.springmvc的运行流程

 6.如何在controller接受请求的参数

 6.1接受少量的参数

6.2接受大量的参数

 6.3接收的参数含有日期类型

 7.处理静态资源


1.什么是MVC?

MVC就是一个分层架构模式:

 

2.什么是SpringMVC

springMVC它是spring框架的一个分支,该springMVC框架主要完成的功能是:==接收浏览器的请求响应,对数据进行处理,然后返回页面进行显示== 可以把它理解为和Servlet干的工作是一样的。

3.为什么要使用SpringMVC框架

4.如何使用SpringMVC

4.1创建一个maven-web工程

 注意: ==用原来的web.xml文件替换现在的web.xml文件==



4.2引入springmvc依赖
 
    
      org.springframework
      spring-webmvc
      5.2.15.RELEASE
    
  

4.3注册DispatcherServlet到web.xml文件上



    
    
        DispatcherServlet
        org.springframework.web.servlet.DispatcherServlet
        
            contextConfigLocation
            classpath:springmva.xml
        
    
    
        DispatcherServlet
        /
    

4.4 创建我们的springmvc配置文件

 



    

    

    

4.5创建一个controller类
@Controller //该注解标记该类为处理层类---类似@WebServlet
public class HelloController {
    @RequestMapping(value = "/hello01")//把请求路径映射到该方法上。
    public String hello01(){
        System.out.println("你好");
        return "hello.jsp";
    }

5.springmvc的运行流程

 1. 客户端发生请求http://localhost:8080/qy151_springmvc01/abc
 *     2. 来到tomcat服务器。
 *     3. springmvc的前端控制器DipatcherServlet接受所有的请求。
 *     4. 查看你的请求地址和哪个@RequestMaping匹配。
 *     5. 执行对应的方法。方法会返回一个字符串。springmvc把该字符串解析为要转发的网页。
 *     6. 把该字符串经过视图解析器拼接。
 *     7. 拿到拼接的地址,找到对应的网页。
 *     8. 渲染该网页给客

 6.如何在controller接受请求的参数

request.getParamter("name")----这种接受参数的问题,麻烦。类型都是String.需要手动转型。

 6.1接受少量的参数

只需要给定方法的参数,参数必须要求和请求的参数名称一致。

 

 常见错误:

参数有误

6.2接受大量的参数

 

发现接受的参数值乱码:---只能添加过滤器

(1)自己创建编码过滤器. jdk1.8一定要重写init和destory方法 1.9以后可以不写

@WebFilter(filterName = "sp",urlPatterns = "/*")
public class MyEncodingFilter implements Filter {
    public void init(FilterConfig filterConfig) throws ServletException {

    }

    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
        servletRequest.setCharacterEncoding("utf-8");
        servletResponse.setCharacterEncoding("utf-8");
        filterChain.doFilter(servletRequest,servletResponse);
    }
    public void destroy() {

    }
}

(2)springmvc提供了一个编码过滤器.

 

 6.3接收的参数含有日期类型

解决办法:

在时间类型的属性上添加一个注解:@DateTimeFormat(pattern = "yyyy-MM-dd")

 //yyyy年  MM:月 dd日  24小时制  

 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date birthday;//出生日期

 在springmvc配置文件上开启注解驱动

 
   

 7.处理静态资源

 无法加载图片: 原因:springmvc的前端控制器DispatcherSerlvet也把静态资源拦截器。放行静态资源

 
    

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/959575.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号