1. 浏览器jsp,html之间的关系
》JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览
》在大多数Browser/Server结构的Web应用中,浏览器直接通过HTML或者JSP的形式与用户交互,响应用户的请求
》JSP在服务器上执行,并将执行结果输出到客户端浏览器,我们可以说基本上与浏览器无关
2. 自定义标签要继承哪个类
这个类可以继承TagSupport或者BodyTagSupport,两者的差别是前者适用于没有主体的标签,而后者适用于有主体的标签。如果选择继承TagSupport,可以实现doStartTag和doEndTag两个方法实现Tag的功能,如果选择继承BodyTagSupport,可以实现doAfterBody这个方法。
3. 过滤器Filter的作用及配置
过滤器是一个对象,可以传输请求或修改响应。它可以在请求到达Servlet/JSP之前对其进行预处理,而且能够在响应离开Servlet/JSP之后对其进行后处理。所以如果你有几个Servlet/JSP需要执行同样的数据转换或页面处理的话,你就可以写一个过滤器类,然后在部署描述文件(web.xml)中把该过滤器与对应的Servlet/JSP联系起来。你可以一个过滤器以作用于一个或一组servlet,零个或多个过滤器能过滤一个或多个servlet。一个过滤器实现java.servlet.Filter接口并定义它的三个方法:
》void init(FilterConfig config) throws ServletException:在过滤器执行service前被调用,以设置过滤器的配置对象。
》void destroy();在过滤器执行service后被调用。
》void doFilter(ServletRequest req,ServletResponse res,FilterChain chain) throws IOException,ServletException;
4. forward,与redirect 的区别?有哪些方式实现
forward是把另一个页面加载到本页面,不改变浏览器的路径,redirect是跳转到另一个页面,会改变浏览器的路径
重定向: response.sendRedirect(“重定向的路径”)
转发: request.getRequestDispatcher(“转发路径”).forward(request, response);
5. jsp内置对象和作用?
有九个内置对象:request、response、out、session、application、pageContext、config、page、exception
作用如下:
(1) HttpServletRequest类的Request对象
作用:代表请求对象,主要用于接受客户端通过HTTP协议连接传输到服务器端的数据。
(2) HttpServletResponse类的Respone对象
作用:代表响应对象,主要用于向客户端发送数据
(3) JspWriter类的out对象
作用:主要用于向客户端输出数据;
Out的基类是JspWriter
(4) HttpSession类的session对象
作用:主要用于来分别保存每个用户信息,与请求关联的会话;
会话状态维持是Web应用开发者必须面对的问题。
(5) ServletContex类的application对象
作用:主要用于保存用户信息,代码片段的运行环境;
它是一个共享的内置对象,即一个容器中的多个用户共享一个application对象,故其保存的信息被所有用户所共享.
(6) PageContext类的PageContext对象
作用:管理网页属性,为JSP页面包装页面的上下文,管理对属于JSP中特殊可见部分中已命名对象的访问,它的创建和初始化都是由容器来完成的。
(7) ServletConfig类的Config对象
作用:代码片段配置对象,表示Servlet的配置。
(8) Object类的Page(相当于this)对象
作用:处理JSP网页,是Object类的一个实例,指的是JSP实现类的实例,即它也是JSP本身,只有在JSP页面范围之内才是合法的。
(9)Exception
作用:处理JSP文件执行时发生的错误和异常
6. 如果用JSP开发一个聊天程序,不用数据库存储聊天纪录,请问聊天记录最好存储在()中。
Application
7. doPost,doGet的区别?
在使用表单提交数据到服务器的时候有两张方式可共选择,一个是post,一个是get。可在