关闭

javaweb 复习小结

1243人阅读 评论(0) 收藏 举报
分类:

jsp主要内置对象有: application、exception、 pageContext  request session、response__out、config、page。

5、  application对象是 代表应用程序上下文,它允许JSP页面与包括在同一应用程序中的任何Web组件共享信息  ,而session对象则是每个客户专用的。

JDBC的主要任务是:与数据库建立连接 发送SQL语句处理结果

 

7、  一个Bean由三部分组成:   实现java.io.serializable接口  提供无参数的构造方法    提供getter()和setter()方法访问它的属性 

 

9、  Servlet的生命周期分三个时期:装载Servlet创建一个Servlet实例销毁

 

10、  JSP开发网站的两种模式分为_jsp+javabean_和jsp+javabean+servlet

 

1.  什么是request对象,它有哪些常用的方法。

1.  答:“request” 对象代表的是来自客户端的请求,例如我们在FORM表单中填写的信息等,是最常用的对象。关于它的方法使用较多的是getParameter、getParameterNames和getParameterValues,通过调用这几个方法来获取请求对象中所包含的参数的值。

3.什么是application对象,application对象与session对象的区别?

1)“application” 对象负责提供应用程序在服务器中运行时的一些全局信息,常用的方法有getMimeType和getRealPath等。

2)与session对象不同:服务器启动后,就产生application对象。当客户访问服务器上的Jsp时,Jsp引擎就为该客户分配这个application对象。所有的客户的application对象都是同一个。即所有的客户共享这个内置的application。

4、这些内置对象都代表什么意思?

答:request,请求对象:代表的是来自客户端的请求

response,响应对象:代表的是对客户端的响应

session,会话对象:代表服务器与客户端所建立的会话

application,应用程序对象:负责提供应用程序在服务器中运行时的一些全局信息

out,输出对象:代表了向客户端发送数据的对象

exception,异常对象:代表了JSP文件运行时所产生的异常对象

5、分页的步骤和关键代码?

    答:1)首先取得总的记录数m。

2)根据每页显示的n计算总的页数pageSize。

3)设定一个变量为要显示的页:showPage。

4)设定一个变量为记录显示记录的位置:positoion

如果要显示第showpage页则:

     int position=(showPage-1)*pageSize+1;

      rs.absolute(postion);//设置游标的位置

     …

  for(int I=1 ;I<pageSize;I++)

{

      out.print(“<tr>”);

         out.print(“<td>”+rs.getString(1)+”</td>”);

…     

out.print(“</tr>”);

        rs.next();

}

 

 

 

2.  什么是URL重写?Jsp中如何实现URL重写?

2.答:URL重写:当客户从一个页面重新连接到另一个页面时,通过向这个新的URL添加参数,把session对象的Id传带过去,这样可以保障客户在客户在该网站各个页面中的session对象是完全相同的。

实现URL重写的方法:使用response对象调用encodeURL()或encodeRedirectURL()实现URL重写。例如:从tom.jsp连接到jerry.jsp

1) String s=session.getId();

2) String str=response.endcodeURL(“jerry.jsp”);

3) <%=str %>//连接目标

 

 

3.  从表单中获得参数常用方法有哪些?

1)getParameter()   获取参数的值

2)getParameterNames()  获取参数的名称

3)getParameterValues()   获取多个值

 

1.简述servlet进行中文处理的方法。

res.setContentType(“text/html;charset=gb2312”);

 

5.JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么?

答:JSP是Servlet技术的扩展,本质上是Servlet的简易方式,更强调应用的外表表达。JSP编译后是"类servlet"。Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。JSP侧重于视图,Servlet主要用于控制逻辑。

3.简述Jsp的执行过程。

.答:    1)客户端发出Request(请求);

2)JspContainer将Jsp转译成Servlet源代码;(字节码)

3)将产生的Servlet的源代码经过编译后,并加载到内存执行;

把结果Response(响应)至客户端。

 

 

 

 

2.请写出获取初始化参数的方法。

答:1)使用ServletConfig对象访问初始化参数:

     ServletConfigconfig=getServletConfig();

     Config.getInitParameter(“name”);

 

3. 简述使用Cookie进行会话跟踪的过程。(写出主要步骤,即存取数据的步骤)

答:保存到Cookie中:

Cookie=new Cookie(“userType”,user);

从Cookie中取数据:

Cookie[] cookie=req.getCookies();

if (cookies!=null){

for(int I=0;I<cookies.length;I++)

{

   if (cookies[I].getName().equals(“userType”));

String userType=cookie[I].getValue();

}

 

4.JavaBeans具有的特点有哪些?

答:1)可以实现代码的重复利用。

2)易编写、易维护、易使用。

3)可以在安装了Java运行环境的平台上使用,而不需要重新编译。

 

5、简述Jsp 的指令与JspAction 各包包含哪些内容(列举5个以上)

1)page 指令 2)include指令 3)taglib指令4)<jsp:include/>动作

5)<jsp:forward/>动作 6)〈jsp:useBean/>

 

6、编写两个过滤器FilterC和FilterD同时作用于一个ServletC。两个过滤器简单打印一句话。然后将两个过滤器的作用顺序发生改变,打印出执行结果,并写出web.xml的配置。

publicclass ServletC extends HttpServlet

{

       public void service(HttpServletRequestrequest,HttpServletResponse response)

         throws IOException,ServletException

         {

                response.setContentType("text/html;charset=gb2312");

                PrintWriter out=response.getWriter();

                out.println("This is ServletC!");              

         }

}

FilterC.java

importjava.io.*;

importjavax.servlet.*;

importjavax.servlet.http.*;

publicclass FilterC implements Filter

{

       public void init(FilterConfig config)

       {

}

       public void doFilter(ServletRequestrequest,ServletResponse response,FilterChain chain)

         throws IOException,ServletException

       {

         response.setContentType("text/html;charset=gb2312");

         PrintWriter out=response.getWriter();

         out.println("This is FilterC before doFilter");

        chain.doFilter(request,response);

        out.println("This is FilterC after doFilter");         

        }

      

      

       public void destroy()

       {

             

       }

      

}

 

FilterD.java

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

public class FilterD implements Filter

{

       public void init(FilterConfigconfig)

       {    

       }

       public voiddoFilter(ServletRequest request,ServletResponse response,FilterChain chain)

          throws IOException,ServletException

       {

         response.setContentType("text/html;charset=gb2312");

          PrintWriter out=response.getWriter();

          out.println("This is FilterD beforedoFilter");   

          chain.doFilter(request,response);

          out.println("This is FilterD afterdoFilter");       

       }

       public void destroy()

       {    

       }

}

web.xml配置为:

<filter>

       <filter-name>FilterC</filter-name>

              <filter-class>FilterC</filter-class>

       </filter>

 

       <filter-mapping>

           <filter-name>FilterC</filter-name>

              <url-pattern>/ServletC</url-pattern>

       </filter-mapping>

 

   <filter>

       <filter-name>FilterD</filter-name>

              <filter-class>FilterD</filter-class>

       </filter>

 

       <filter-mapping>

          <filter-name>FilterD</filter-name>

              <url-pattern>/ServletC</url-pattern>

       </filter-mapping>

 

1)按上面顺序配置web.xml打印出的结果为:

This is FilterC before doFilter
This is FilterD before doFilter
This is ServletC!
This is FilterD after doFilter

This is FilterC after doFilter

 

2)过滤器作用顺序发生改变时候的执行结果为:

This is FilterD before doFilter
This is FilterC before doFilter
This is ServletC!
This is FilterC after doFilter

This is FilterD after doFilter

 

 

 

 

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:106200次
    • 积分:2415
    • 等级:
    • 排名:第15909名
    • 原创:135篇
    • 转载:34篇
    • 译文:0篇
    • 评论:8条
    最新评论