Struts是一个开源的web框架,框架提高了程序的规范的同时也约束了程序员的自由
为什么会有struts:
因为我们队mvc理解的不同,可能造成不同公司写程序的时候,规范不统一,这样不利于程序的维护和扩展,所以我们有必要用一个统一的规范来开发项目(struts)
Struts 的好处:
程序更加规范化,开发效率提高了,可读性增加了,程序的可维护性增加了
运行原理:
一个请求从浏览器发送给web服务器,http://localhost:8080/web应用/action,web服务器首先解析主机
然后解析web应用的名称
在解析出资源名
转发给总司令ActionServlet(该类由struts框架提供给我们的无需编写,只需配置)
ActionServlet有一个文件struts-config.xml,该文件配置了表单actionForm(军火库),还配置了action,以及他们之间的对应关系,当ActionServlet拿到命令后它会查询struts-config.xml文件去填充数据,把用户的数据填充到表单里边,
下个动作就是去调用指定的action(小队长),action去从表单中读取数据,
调用某个model(士兵,如service)完成任务,
完成任务把结果返回给ActionServlet总司令(返回一个执行的结果),
总司令又去查询struts-config.xml文件,决定跳转到哪个jsp页面,à返回一个执行结果(形成静态html文件)
直接返回给web服务器
服务器再把静态页面以http响应给浏览器