暑假跟着老师做个关于struts2的项目,到目前(2012-08-17)也接近尾声了,是该静下心来写写这段时间来对struts2的感悟了,以便后续需要即时温故,开篇即时是初始struts2。
对于struts2的通常使用,个人只是简单的对struts.xml文件,action,类,以及结合三层架构(表现层,业务逻辑层,数据访问层)进行项目开发,只要清楚struts.xml与action类以及前台jsp请求之间的映射关系,就能很轻松自由的开发。
首先还是struts.xml开始了解吧,比较正规的解释是:struts.xml 为Struts 2的核心配置文件。struts.xml文件主要负责管理应用中的Action映射,以及该Action包含的Result定义等。个人角色这个struts.xml主要的作用就是给每一个action指明路径,然后根据这个action返回的字符串,指明跳转页面,举个例子;
在前台jsp页面的一个连接为:<a href = "<%=basePath%>Login/LoginAction!login.action">登录</a>
那么在struts.xml中应该有这样的一个配置<package name="loginPkg" namespace="/Login" extends="struts-default">
<action name = "LoginAction“ class = ”org.action.LoginAction“>
<result type="dispatcher" name="loginSuccess">/index.jsp</result>
</action>
</package>
当在前台点击登录连接时,就会触发这个连接对应的Login包下的名字为LoginAction的action类的login函数(!后面就是这个函数),在struts2的配置文件中就会定位到action name = "LoginAction” 的位置,class = ”org.action.LoginAction“ 进而去调用执行login 函数,来处理这个登录请求。接着就是表现层调用业务逻辑层接口,业务逻辑层调用数据访问层接口,然后又一层层的回传,最终通过login这个函数返回的loginSuccess,在struts.xml中接受,然后跳转到Index.jsp页面,通过struts2的标签提取需要的数据,我理解的整个业务处理流程大致就是这样的了。