本帖最后由 skyair2046 于 2009-10-13 20:59:21 编辑

解决方案 »

  1.   

    呵呵 又见面了 首先请求提交到ActionServlet中(我知道你用的是struts1),ActionServlet通过struts-config.xml文件反射加载对应path的Action,并调用相应的处理方法
    Action类之后要调用业务逻辑方法,这个过程中spring会为你的业务逻辑层开一个事务并注入sessionFactory,所以说业务逻辑层也可以操作数据库,但不建议这样做,一般都在Dao层去操作数据库
    Dao层就是管理持久化操作的,就没什么好说的了
    大概就是这个流程,还有不会的,我还会关注这个帖子的!
      

  2.   

    业务逻辑是service层的东西?
    能不能还详细点哦..你这里没有提及到hibernate
      

  3.   

    业务层命名为service或manager都行好的说一下hibernate Dao层,首先Dao层的类要继承Spring提供的HibernateDaoSupport(内部提供了对hibernate session的封装类,这样就不用面对hibernate api操作了),或者直接注入sessionFactory,用sessionFactory.getCurrentSession();来操作数据库
    session里有很多概念例如一级cache,还有hql查询,抓取策略,N+1问题等等
    这个概念买本书好好看看,英语好最好看影印的记住学Hibernate最难学的是映射!
      

  4.   

    hibernate就是处理数据库的,其实用jdbc也可以实现,hibernate有优点也有缺点!!!
      

  5.   


    是啊..关联关系实在是很复杂啊,,struts感觉容易,hibernate 和spring ioc aop有点难度.
      

  6.   

    你认为业务层一般都做些什么事呢?
    对数据库的处理是dao层吧action只做些form属性获取和跳转动作吧
      

  7.   

    我们继续讨论吧。。我明天去卖书 spring in action 和servlet jsp核心编程
    今天来聊聊
      

  8.   

    jsp视图层
    struts 控制层 
    spring模拟层
    hibernate数据层
      

  9.   

    因为电脑刚还原了,没什么画图软件.大概写一下             dto         dto         entity
    web客户端-------action------service---------dao-----databaseaction一般接收完数据就调用service
    service一般调用直接调用一个或多个dao完成,复杂的逻辑可以在中间加model层
    dao对数据的原始操作
      

  10.   

    既然lz是struts1.x,那我就按strust1.x讲讲我个人理解1.向服务器发送search.do
    2.服务器会到web.xml里看看有没有匹配search.do,一般你是配*.do
    3.这里服务器就会找到ActionServlet
    4.ActionServlet就会用ActionForm收集表单数据,然后交给查询的action,叫search.java吧
    5.search.java就会调用service层的search方法
    6.service拿到传过来的参数或对象(一般dto),在这个方法调用前spring就开启好事务
    7.service调用多个或一个dao完成操作,由dao查询数据库,如果逻辑复杂才加model层
    8.service中的search完好完成,spring就关闭事务,否则回滚
    9.search.java完成这个操作后就转向到你所配的url
    10.jsp里接收返回来的数据.这样够详细了没有?
      

  11.   

       楼主的问题可不太好回答呀  首先是用户提交请求通过jsp传递到ActionServlet上  ActionServlet(主要是struts-config.xml)根据用户填写的表单自动将数据填充到actionForm上 然后转到相应的action(具体的action是由spring来注入的)上进行处理 action调用actionForm中的数据和DAO层进行相应的处理 同时也会调用hibernate中的持久化类进行相应的操作 然后由action进行转发到相应的jsp上显示处理的内容 
      

  12.   

    首先呢,用户会提交一个请求,该请求回到核心控制器(ActionServlet),这个是Struts自己提供的,核心控制器根据用户的请求去调用业务逻辑控制器(用户自己写的Action),业务逻辑控制器根据请求再调用model(基本所有跟数据库有关的代码都在这里面),处理完用户请求后选择合适的view(即jsp)返回给用户。