- 浏览: 2478 次
- 性别:
- 来自: 北京
最新评论
文章列表
1、客户端发送请求至服务器,服务器接受,将HttpServletRequest传进来。
2、请求经过一系列过滤器(如:ActionContextCleanUp、SimeMesh等)。
3、FilterDispatcher被调用。FilterDispatcher调用ActionMapper来决定这个请求是否要调用某个Action。
4、ActionMapper决定调用某个ActionFilterDisPatcher把请求交给ActionProxy。
5、ActionProxy通过Configuration Manager查看struts.xml,从而找到相应的Action类。
...
struts1是第一个流行度比较高的MVC框架,使用极其广泛。但是,随着技术的更新,尤其是JSF、ajax等技术的兴起,struts1有点力不从心,以及其本身设计上的一些缺陷,阻碍了它的发展。
同时,大量的MVC框架大步发展,如webwork。它是opensymphony组织开发的。webwork实现了优美的设计,增加更加强大而易用的功能。
随后,struts和webwork两大社区合并了这两个项目,即后来的struts2,struts2是以webwork为核心开发的,从各个方面来讲,都与struts1相去甚远。
多对多的实体关系模型也很常见,如学生与课程的关系,一个学生可以选修多门课程,一门课程也可以被多名同学选修,在关系型数据库中对于处理这种多对多关联一般采用中间表的形式,将多对多的关系转化成两个一对多的关系。
部分示例代码如下:
课程实体:
import java.util.HashSet;
import java.util.Set;
public class Course {
private Integer id;
private String cname;
private Set<Student> students=new HashSet< ...