SpringMVC原理的简单理解


springmvc 主要功能由核心控制器,也就是DispatcherServlet来完成。

核心控制器在服务器启动的时候便初始化,在初始化过程中,读取springmvc.xml文件。

在springmvc.xml中定义了<context:component-scan base-package="com.zhg"></context:component-scan>,这里定义了业务处理器所在的包。核心控制器会扫描包下所有的类,找到那些带有
@Controller注解的类。 然后会读取带有@Controller注解类中的带有@RequestMapping的方法,

这些都是通过反射来完成。

RequestMapping中定义了路径,核心控制器会通过一个hash结构,将路径当做键,值是某个类中的某个方法保存起来。

当有请求访问某一个业务处理器的时候,会首先通过核心控制器,在这里可以获得当前请求的路径,根据路径(键),去hash中寻找对应的方法。

如果根据键没有找到对应值则会返回404状态码,如果找到了值,就会通过反射执行值中的方法。

 

一切的框架都可以用反射来解释

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM