快速业务通道

让Struts与Hibernate顺利协同工作 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-24
考一下,拷贝一个过来修改一下即可。只是这里的主要是在于设计 ,设计好有什么formbean,什么action,他们的关系,等等问题。一个好的设计绝对能为后期节省大量的返工可能性。struts有一本《struts on action》,绝对是学习struts的经典书籍,我手上有翻译的前8章,有需要的可以联系我。

我们这里不详细说明各个配置,只讲struts 和hibernate 合作的过程。

一个action 有一个 execute 方法,当然也可以用 perform方法,不过 perform 方法 在struts1.1已经不推荐使用了,而使用了更强大的execute()方法。 package net.seerlog.action;

//导入所有用的到的包 import java.util.List; import net.seerlog.po.*; import net.seerlog.vo.*; import net.seerlog.util.*; import net.sf.hibernate.*; import org.apache.struts.action.*; import javax.servlet.*; import javax.servlet.http.*; import java.io.IOException; import javax.servlet.ServletException; public class IndexAction extends Action{ //action的主体方法 execute ,注意要抛出异常 public ActionForward execute (ActionMapping mapping,ActionForm form,HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException{ try{ //开启会话 Session session = Hi.getSession(); Transaction tx= session.beginTransaction(); //查询 Query q = session.createQuery("from Topic as topic order by topic.id desc"); q.setFirstResult(0); q.setMaxResults(5); List newTopicList = q.list(); NewTopicList ntlBean=new NewTopicList(); ntlBean.setList(newTopicList); req.setAttribute("newtopiclist",ntlBean); //事务提交,关闭session tx.commit(); Hi.closeSession(); //捕获异常 }catch(HibernateException e){ Log.error(e.toString()); //日志记录 } //返回一个 actionForward 对象 return mapping.findForward("index"); } }

以上就是 struts hibernate协同工作的全部内容了,这篇文章只能让你了解整个过程,这里的例子不能作为实现的学习例子。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号