jsp+javabean+servlet学习中的一点疑惑,请路过的大虾们解惑.看到servlet 都是通过(html静态页面或者JSP页面)中的表单提交到servlet的再经过处理转向到JSP页面,疑惑点1:比如 网站的首页(index.jsp)不需要提交的是直接浏览的,显示首页是不是就不用经过servlet控制再转向
(index.jsp)了,是不是直接在index.jsp 调用javabean显示数据呀。疑惑2:servlet这样的控制功能(我个人理解的)是不是只有当提交表单了 get post 才用到servlet控制处理再转向JSP页面。疑惑3:比如 一个连接<a href="">连接</a>显示文章内容,,这个连接是直接连接到servlet吗?然后在servlet中的doGET()这个方法中进行处理 再转向到JSP页面。还是直接连接一个显示文章内容的JSP页面在里面直接调用javabean显示数据,不用再经过servlet了   还是其它什么方法挺不解了看了本教程说这是MVC2模式servlet是控制,列举的一些例子都是什么提交登陆了什么都是一些提交表单的一些操作用到的 servlet。。看完了就想到上的三种疑惑。
请路过的大虾们指点迷津呀~~~

解决方案 »

  1.   

    请楼主百度 java应用服务器。
    或直接百度tomcat。
    还需研究html协议。
      

  2.   

    请看圣思源javaweb开发的视频第8讲开始看
      

  3.   

    怎么才好点呢,javabean只是可以让结构更加清晰,其实没有javabean是完全可以的。javabean只是起到存储数据的作用,javabean在 jsp 和 servlet之间起到桥梁作用。楼主可以找北京尚学堂的视频来看,很不错的视频。
      

  4.   

    对于疑惑1:我的理解是:既然是直接访问index.jsp,没有经过服务器,那javabean数据就无法得到,所以index.jsp只能显示静态数据吧、
    疑惑2:超链接之类的也可以访问servlet啊,还有javascript的location也能访问,还有ajax请求也能访问
    疑惑3:对于超链接中是否经过servlet,你写一个超链接和一个servlet,然后配置servlet,测试下就可以看到是否访问了servlet。
    以上只是我个人看法。
      

  5.   

    servlet和javabean其实主要是提高执行效率,这些封装了一些方法和变量。超链接确实都可以访问servlet和jsp。一般情况下是提交表单之后进入servlet进行判断,分析,然后再跳转到其他jsp页面。
      

  6.   

    那一般做WEB  网站首页index.jsp 是不用访问SERVLET?  还是index.html跳转一下到sevlet然后现地转向到index.jsp还是直接在index.jsp中调用javabean中的方法从数据库中取数据经过循环显示?
    你们都是怎么做的.
      

  7.   

    对于第一个疑惑,应该这样理解,它是访问servlet了,只是采用的是异步传输数据,比如ajax,让你感觉好像没有访问你的后台程序。
      

  8.   

    lz应该考虑一下ajax这方面。。有时候并不是整个页面刷新
      

  9.   

    多谢楼上的几位的解答 虽然没有说出我心中的解惑的问题不过还是帮助到了我,经过我不停的用百度搜索找到了解惑的答案:JSP网站首页访问自动跳转到一个action经过调用数据库后再返回首页
    (2010-11-21 00:46:48)
    转载▼
    标签:
    杂谈

    JSP网站首页访问自动跳转到一个action经过调用数据库后再返回首页:
    一般我们访问一个网站首页是都是直接输入.../index.jsp,而我们平时都是经过一个action调用数据库后在跳转到目标页,而对于index.jsp我们通常又是习惯性的输入index.jsp这是我们做法是在index.jsp的<head></head>之间加入
    <%
      if(request.getAttribute("T_flag")==null)
      {
      response.sendRedirect("index.action");
       }
     
       %>
    这样就回跳转到一个Action类中,如果我们用excute()方法处理逻辑(访问数据库等)
    这是我们需要在excute()方法里加入
    HttpServletRequest request = ServletActionContext.getRequest();
    request.setAttribute("T_flag", "123");
    其中123为T_flag的值,我们做法是为了保证T_flag!=null了第二次在访问首页是它直接就可以到index.jsp而不需要再经过Action类处理再跳回index.jsp了。
    当然也可以通过
    <body onload="">调用body表签的onload(),通过一个JavaScript跳转到一个action或servlet处理后,再跳回原页面。
    ....
    还有一种方法就是配置 web.xml程序启动运行首先去运行servlet<load-on-startup>1</load-on-startup>
      

  10.   

    你所说的index.jsp是你一个web工程里默认的可以打开的jsp页面,它只是一个页面的打开与servlet和javabean无关。servlet是个控制器,当你有需求是通过请求路径到web.xml中的Servlet容器解析并传递给Servlet的Service()方法,Service通过request对象获取到请求的参数,通过ServletResponse对象来向客户端发送响应内容。jsp页面就显示表单内容。javabean只是负责业务逻辑和数据。
      

  11.   

    [Quote=引用 4 楼  的回复:]对于疑惑1:我的理解是:既然是直接访问index.jsp,没有经过服务器,那javabean数据就无法得到,所以index.jsp只能显示静态数据吧、
    疑惑2:超链接之类的也可以访问servlet啊,还有javascript的location也能访问,还有ajax请求也能访问
    疑惑3:对于超链接中是否经过servlet,你写一个超链接和一个servlet,然后配置servlet,测试下就可以……
    [/Quote现在补充下。index.jsp也可以有数据库的数据,因为可以借助javascript中的ajax在加载的时候发送请求,将在服务器中得到的数据显示在页面