springmvc是否是线程安全?

1.springmvc是单例模式的框架,但它是线程安全的,因为springmvc没有成员变量,所有参数的封装都是基于方法的,属于当前线程的私有变量. 因此是线程安全的框架。

 

SpringMVC工作流程:

  1. 用户向服务端发起一次请求,请求会首先到达前端控制器DispatcherServlet(中央控制器);
  2. DispatcherServlet接收到请求后调用HandlerMapping处理器映射器。由此得知该请求由哪个Controller处理;
  3. DispatcherServlet调用HandlerAdapter处理器适配器,告诉处理器适配器去执行哪一个Controller;
  4. HandlerAdapter处理器适配器执行对应的Controller并将处理结果封装到ModelAndView(数据和视图)中,并返回给DispatcherServlet;
  5. DispatcherServlet将ModelAndView交给ViewReslover视图解析器处理返回真正的视图;
  6. DispatcherServlet将模型数据填充到视图中,最终将结果返回给用户。

SpringMvc常用注解:

1、@Controller

springmvc中,Controller负责处理由前端控制器DispatcherServlet (中央控制器)分发的请求,将用户请求的数据经业务处理层处理后封装成Model,然后将Model返回给对应的View进行展示。无需继承和实现特定的类,只需@Controller标记一个类是Controller,然后通过@RequestMapping和@RequestParam等注解用以定义URL请求和Controler方法之间的映射,就能使Controller被外界访问到,不依赖HttpServletRequest和HttpServletResponse等HttpServlet对象。

2、RequestMapping

RequestMapping用来处理请求地址的映射,可用在类或方法上。用在类上面作为父路径。

RequestMapping属性:value 、method 、consumes、produces、params、headers

  • value:指请求的实际路径,指定的地址可以是URI Template
  • method:执行请求类型(GET、POST、PUT、DELETE)
  • consumes:指处理请求的提交内容类型(Content-Type)例:application/json 、text/html
  • produces:指定返回的内容类型,仅当request请求头中(Accept)类型中包含指定类型才返回。
  • params:指定request中必须包含某些参数值时才处理方法。
  • headers:指定request中必须包含某些header值时才处理该请求。

3、@Resource和@Autowired

 

 

 

未完待续~

 

 

 

 

 

 

 

 

 

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

benboerdong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值