- 框架是啥?
- 框架主要做了什么事? 它给我们带来了什么样的好处?
- 目前的主流框架是什么?
答:通俗的理解,如果你想做一件艺术品的话,那么框架就像是这件艺术品的半成品,也就是说,一些繁琐的事情,框架已经帮你做了,这样的话就很大程度上提升了开发的效率,当然给我们最直接的好处就是减少的代码的编写,对公司来说减少开发成本,所以目前开发一个项目都是依赖框架来开发的,目前一般使用的框架有:ssh,ssm,以及springboot,(前台easyui,bootstrap,ligerui等)
struts2背景:struts2是一个基于sprigmvc模式的web(表现层)的框架,它和struts1没有什么关系,它的核心是基于webwork的。struts2的本质是一个filter,而filter的本质是一个servlet,总而言之来说的话,总中还是归结到servlet,那么servlet是什么?它是干什么的?servlet是运行在服务器内部的java组件,当从浏览器发出请求到服务器,此时servlet内部的request接受请求,然后处理后,通过response响应给浏览器;所以回到struts2来说的话,当浏览器发送请求的时候,首先是会进入到web.xml中的配置文件中的过滤器filter,被过滤器拦截,也就是说再次回到servlet的那个流程,如果想确定确定一下具体的流程,可以看一下源码是具体如何实现的。
明确的东西:
struts2主要是针对的是web层的框架,它并没有涉及到业务逻辑,它只是起到接受参数,跳转页面,没有涉及到数据库。
struts2的核心组件:
1.action
2.strutsPrepareAndExcuteFilter
struts2的一些配置文件:
- web.xml: 配置filter
- struts.xml:配置访问的路径,方法,以及跳转的页面等
- struts_default.xml:可以查看struts2的执行流程,以及struts2的默认执行的一些配置信息(如:为啥会默认拦截.action结尾的请求等,为啥结果页面跳转的方式是转发,而不是重定向等),可以帮助我们更好的理解struts2。
反思:那么我们怎样学习一个新的框架,怎么更好的去理解要学习的框架,其实我们在下载某个框架的时候,这个压缩包中间都是有帮助文档的,它可以给我们很多的demo,那么我们就可以创建一个新的项目,然后导入demo的jar包,然后导入相应的配置文件,最后运行项目,然后在去分析,得出我们的经验。