struts2+spring+mybatis的工作流程和工作机制

比如先是请求然后做什么做什么的。
2024-11-23 16:46:15
推荐回答(1个)
回答1:

我没有使用过mybatis,但是作为ORM框架,它和hibernate差不多。struts2+spring+mybatis组合一般来说是struts2主要负责url的拦截、处理然后根据action的配置选择返回页面。对bean(这里姑且将model,dao,service等java类统称为bean)的管理一般是委托给spring来处理,这里主要是为了使用spring控制反转(ioc)。当然数据库事务处理等由mybatis来实现。
其流程我总结如下:当来一个页面请求(也就是一个url),由FilterDispatcher进行拦截,在urlmapping中(或者说是配置文件中)查找对这个url进行处理的action实例类,将请求交给找到的action实例类进行处理,处理以后(这里的处理包括对数据库的操作这时便用到了mybatis)根据处理后的返回值再次查找配置文件,找到返回页面展示给用户。
这里只是最粗略的工作流程,中间可能还有其他操作如:编码过滤,权限控制,自己定义的struts2的拦截器等等。