1、通过IndexAction处理请求,在IndexServiceImpl中查询好结果后,返回给JSP。觉得很烦,调整JSP也不灵活。2、单独做一个查询实现QueryServiceImpl,里面实现常用的查询。jsp直接使用这个实现,需要显示什么就自己查什么。觉得似乎缺点什么,担心有风险。3、JSP直接访问数据库,自由组织页面。感觉太不靠谱。4...各位过来人,是怎么处理首页的?

解决方案 »

  1.   

    目前的做法是:
    1\在applicationContext.xml中配置DAOImpl的bean
        <bean id="contentDAO" class="com.YoungMay.dao.impl.ContentDAOImpl">  
            <property name="sessionFactory" ref="sessionFactory"></property>  
        </bean>  
    2\在QueryImpl中使用contentDAO实现各种查询。
    3\index.jsp中完成查询和现实。
      <jsp:useBean id="queryService" class="com.YoungMay.service.impl.QueryImpl"/>
        <% 
        List<Content> contents =queryService.queryContentsByTypeId(reqestType);
        for(int i=0; contents !=null && i< contents.size();i++){
        %>
    。。
    不知道这样做是否有悖j2ee的思想?
      

  2.   

    首先在jsp页面直接写javacode本身就是不符合的,当然也可以时候;
    其次看你应该是ssh这方面的框架,为什么不时候标签呢;
    再者,正常是在Action里从数据库里提到数据封装在List中,然后从后台传到前台的
    至于查询条件这块是加在bean里加个属性如,queryname。封装在bean里
    在service层的sql where条件里直接判断时候就可以,整体这个List就使用这一条sql就可以了
      

  3.   

    的确是用SSH。
    那如何拦截对首页的请求呢?设置welcome-file 为index.action?然后在IndexAction里面用IndexServiceImpl来查询并返回数据给JSP?
    我这么土土的实现过,但是不知道怎么登录后返回主页。曾经用
    <action name="login" class="com.YoungMay.action.LoginAction">
    <result name="success">/indexForward.jsp</result>
    <result name="error">/login.jsp</result>
    </action>
    的方式在indexForward.jsp里重定向到index.action。
    我觉得我一定走弯路了。
      

  4.   

    没看懂lz在纠结什么 登陆后跳转到登陆后的页面  页面上要显示的数据  在action里面查询出来不就行了  为什么要重定向?
      

  5.   

    未登录游客没有经过登录这一步。所以我才搞不清楚该怎么做。
    按MVC的说法,所有的V都要由C来控制的话,那么所有链接是不是都应该是xxx.action,而不是xxxx.jsp?