q三个方法是q接对象提供的用于事务处理的Ҏ。BeginTrans用于开始一个事物;RollbackTrans用于回滚事务QCommitTrans用于提交所有的事务处理l果Q即认事务的处理?
事务处理可以一l操作视Z个整体,只有全部语句都成功执行后Q事务处理才成功;若其中有一个语句执行失败,则整个处理就失败,q恢复到处里前的状态?
BeginTrans和CommitTrans用于标记事务的开始和l束Q在q两个之间的语句Q就是作Z务处理的语句。判断事务处理是否成功,可通过 q接对象的Error集合来实玎ͼ若Error集合的成员个C?Q则说明有错误发生,事务处理p|。Error集合中的每一个Error对象Q代表一 个错误信息?/p>
控制Q有一个XML文gStruts-config.xmlQ与之相兌的是ControllerQ?在Struts中,承担MVC中Controller角色的是一个ServletQ叫ActionServlet。ActionServlet是一个通用 的控制组件。这个控制组件提供了处理所有发送到Struts的HTTPh的入口点。它截取和分发这些请求到相应的动作类Q这些动作类都是Actionc?的子c)。另外控制组件也负责用相应的h参数填充 Action FromQ通常UC为FromBeanQ?q传l动作类Q通常UC为ActionBeanQ。动作类实现核心商业逻辑Q它可以讉Kjava bean 或调用EJB。最后动作类把控制权传给后箋的JSP 文gQ后者生成视图。所有这些控刉辑利用Struts-config.xml文g来配|?
视图Q主要由JSP生成面完成视图QStruts提供丰富的JSP 标签库: HtmlQBeanQLogicQTemplate{,q有利于分开表现逻辑和程序逻辑?
模型Q模型以一个或多个java bean的Ş式存在。这些bean分ؓ三类QAction Form、Action、JavaBean or EJB。Action Form通常UC为FormBeanQ封装了来自于Client的用戯求信息,如表单信息。Action通常UC为ActionBeanQ获取从 ActionSevlet传来的FormBeanQ取出FormBean中的相关信息Qƈ做出相关的处理,一般是调用Java Bean或EJB{?
程Q在Struts中,用户的请求一般以*.do作ؓh服务名,所有的*.doh均被指向 ActionSevletQActionSevletҎStruts-config.xml中的配置信息Q将用户h装成一个指定名U的 FormBeanQƈ此FormBean传至指定名称的ActionBeanQ由ActionBean完成相应的业务操作,如文件操作,数据库操作等?每一?.do均有对应的FormBean名称和ActionBean名称Q这些在Struts-config.xml中配|? 核心QStruts的核心是ActionSevletQActionSevlet的核心是Struts-config.xml?
FormBean的生是Z提供数据lActionBeanQ在ActionBean中可以取得FormBean中封装的数据Q经相应的逻辑处理后,调用业务Ҏ完成相应业务要求?
Servlet的演变:在常规的 JSPQServletQJavaBean三层l构中,JSP实现View的功能,Servlet实现Controller的功能,JavaBean实现Model的实现?
在Struts中,常规情况下的Servlet拆分与ActionServlet、FormBean、ActionBean三个部分。ActionServlet配合Struts-config.xmlQ专职完成页面导航,而不再负责具