mvc

作者: 简洁心飞 | 来源:发表于2019-02-21 11:46 被阅读0次

    参考文献

    com
     +- example
         +- myapplication
             +- Application.java
             |
             +- customer
             |   +- Customer.java
             |   +- CustomerController.java
             |   +- CustomerService.java
             |   +- CustomerRepository.java
             |
             +- order
                 +- Order.java
                 +- OrderController.java
                 +- OrderService.java
                 +- OrderRepository.java
    
    MVC框架是什么
    "模型-视图-控制器"
    模型负责封装应用程序数据在视图层展示
    视图仅仅只是展示这些数据,不包含任何业务逻辑
    控制器负责接收来自用户的请求,并调用后台服务(manager或者dao)来处理业务逻辑
    MVC模式的核心思想是将业务逻辑从界面中分离出来,允许它们单独改变而不会相互影响
    
    在Spring MVC应用程序中,
    模型通常由POJO对象组成,它在业务层中被处理,在持久层中被持久化。
    视图通常是用JSP标准标签库(JSTL)编写的JSP模板。
    控制器部分是由dispatcher servlet负责。
    一些开发人员认为业务层和DAO层类是MVC模型组件的一部分。我对此持有不同的意见。
    我不认为业务层及DAO层类为MVC框架的一部分。
    通常一个web应用是3层架构,即数据-业务-表示。MVC实际上是表示层的一部分。
    
    "Dispatcher Servlet(Spring控制器)"
    在最简单的Spring MVC应用程序中,控制器是唯一的你需要在Java web部署描述文件(即web.xml文件)中配置的Servlet。
    Spring MVC控制器 ——通常称作Dispatcher Servlet,实现了前端控制器设计模式。并且每个web请求必须通过它以便它能够管理整个请求的生命周期。
    
    当一个web请求发送到Spring MVC应用程序,dispatcher servlet首先接收请求。
    然后它组织那些在Spring web应用程序上下文配置的(例如实际请求处理控制器和视图解析器)或者使用注解配置的组件,所有的这些都需要处理该请求。
    
    MVC从逻辑上把应用分为模型组件,视图组件和控制器组件
    其中控制器组件又可以细分为:前端控制器组件和后端控制器组件。 
    前端控制器叫DispatcherServlet
    端控制器叫Controller
    处理请求URL和后端控制器映射的叫HandMapping
    负责业务逻辑处理的模型对象一般也是我们平常写的DAO/DTO组件
    Controller返回一个ModelAndView对象给DispatcherServlet,ModelAndView可以携带一个视图对象,也可以携带一个视图对象的逻辑名
    
    
    @Resource的作用相当于@Autowired,只不过@Autowired按byType自动注入,而@Resource默认按 byName自动注入罢了
    @Resource有两个属性是比较重要的,分是name和type,Spring将@Resource注解的name属性解析为bean的名字,而type属性则解析为bean的类型。
    

    相关文章

      网友评论

          本文标题:mvc

          本文链接:https://www.haomeiwen.com/subject/onkryqtx.html