Exception对象含有只能由指定的JSP“错误处理页面”访问的异常数据。 Out对象代表提供输出流的访问
Page对象代表JSP页面对应的Servlet类实例 PageContext对象是Jsp页面本身的上下文,它提供唯一一组方法来管理具有不同作用域的属性
Request对象提供对Http请求数据的访问,同时还提供用于加入特定请求数据的上下文
Response对象允许直接访问HttpServletResponse对象 Session对象可能是状态管理上下文中使用最多的对话
2.jsp有哪些动作?作用分别是什么?
3.JSP中动态INCLUDE与静态INCLUDE的区别?
如果文件仅仅是静态文件,那么这种包含仅仅是把包含文件的内容加到JSP文件中去,但这个被包含文件不会被JSP编译器执行。相反,如果这个被包含文件是动态的文件,那么他将被JSP编译器执行。如果是动态文件还可以用
4.两种跳转方式分别是什么?有什么区别?
4,jsp有哪些内置对象?作用分别是什么? JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应): request 用户端请求,此请求会包含来自GET/POST请求的参数 response 网页传回用户端的回应 pageContext 网页的属性是在这里管理 session 与请求有关的会话期 application servlet 正在执行的内容 out 用来传送回应的输出 config servlet的构架部件 page JSP网页本身 exception 针对错误网页,未捕捉的例外 5,jsp有哪些动作?作用分别是什么? JSP共有以下6种基本动作 jsp:include:在页面被请求的时候引入一个文件。 jsp:useBean:寻找或者实例化一个JavaBean。 jsp:setProperty:设置JavaBean的属性。 jsp:getProperty:输出某个JavaBean的属性。 jsp:forward:把请求转到一个新的页面。 jsp:plugin:根据浏览器类型为Java插件生成OBJECT或EMBED标记 6,JSP中INCLUDE两种实现方式的区别?(JSP中两种跳转方式是什么?区别是什么?) 动态、静态两种。 动态INCLUDE用jsp:include动作标识实现 静态INCLUDE用include指令标识实现 <%@ include file=\,在当前使用该指令的位置嵌入其他的文件,如果被包含的文件中有可执行的代码,则显示代码执行后的结果。它通过file属性来指定被包含的页面,不会检查所含文件的变化,适用于包含静态页面 11,Class.forName的作用?为什么要用? 返回一个指定名称的class对象。用它是为了load指定名称的class。 13,MVC是什么?各个部分分别为何?分别如何实现? MVC是Model-View-Controller的简写。Model 代表的是应用的业务逻辑(通过JavaBean,EJB组件实现), View 是应用的表示面(由JSP页面产生),Controller 是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。这些组件可以进行交互和重用。 15,html样式表作用,原理。 大量减少网页代码,原理就是在网页中自定义样式表的选择符,然后在网页中大量引用这些选择符。目前大部分网站都是使用class来引用的。 3.forward 和redirect的区别 答:forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。 redirect就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数 都可以获取。 简述在JSP中共享数据的方法。 大体上分为两种情况,第一种是在同一个用户的不同页面之间共享数据,另一种是在不同用户之间共享数据。 对于同一个用户会话,要想在不同的页面之间共享数据,可以分为以下几种: ? 把数据保存在Session中(这是非常常见的方式); ? 通过Cookie; ? 通过隐含的表单把数据提交到下一个页面; ? 通过ServletContext对象; ? 通过Application对象; ? 通过文件系统或者数据库; 在不同用户之间共享数据,通常的方法是: ? 通过ServletContext对象; ? 通过Application对象; ? 通过文件系统或者数据库; 可见,对于不用用户之间共享数据的实现方法在同一个用户的不同页面也能实现数据共享。 9.Request对象的主要方法 答: setAttribute(String name,Object):设置名字为name的request的参数值 getAttribute(String name):返回由name指定的属性值 getAttributeNames():返回request对象所有属性的名字集合,结果是一个枚举的实例 getCookies():返回客户端的所有Cookie对象,结果是一个Cookie数组 getCharacterEncoding():返回请求中的字符编码方式 getContentLength():返回请求的Body的长度 getHeader(String name):获得HTTP协议定义的文件头信息 getHeaders(String name):返回指定名字的request Header的所有值,结果是一个枚举的实例 getHeaderNames():返回所以request Header的名字,结果是一个枚举的实例 getInputStream():返回请求的输入流,用于获得请求中的数据 getMethod():获得客户端向服务器端传送数据的方法 getParameter(String name):获得客户端传送给服务器端的有name指定的参数值 getParameterNames():获得客户端传送给服务器端的所有参数的名字,结果是一个枚举的实例 getParameterValues(String name):获得有name指定的参数的所有值 getProtocol():获取客户端向服务器端传送数据所依据的协议名称 getQueryString():获得查询字符串 getRequestURI():获取发出请求字符串的客户端地址 getRemoteAddr():获取客户端的IP地址 getRemoteHost():获取客户端的名字 getSession([Boolean create]):返回和请求相关Session getServerName():获取服务器的名字 getServletPath():获取客户端所请求的脚本文件的路径 getServerPort():获取服务器的端口号 removeAttribute(String name):删除请求中的一个属性 12.说出数据连接池的工作机制是什么? 答:J2EE服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接。客户端程序需要连接时,池驱动程序会返回一个未使用的池连接并将其表记为忙。如果当前没有空闲连接,池驱动程序就新建一定数量的连接,新建连接的数量有配置参数决定。当使用的池连接调用完成后,池驱动程序将此连接表记为空闲,其他调用就可以使用这个连接。 13.Class.forName的作用?为什么要用? 答:调用该访问返回一个以字符串指定类名的类的对象。 3、JSP如何处理HTML FORM中的数据? 通过内置的request对象即可,如下: <% String item = request.getParameter(\ int howMany = new Integer(request.getParameter(\ %> 4、在JSP如何包含一个静态文件? 静态包含如下:<%@ include file=\ 动态包含如下: 3。/**与**/ 4。 6、在JSP中如何执行浏览重定向? 使用如下方式即可: response.sendRedirect(\ 也能物理地改变HTTP HEADER属性,如下: <% response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); String newLocn=\ response.setHeader(\ %> 选择题 1、下面哪一个不是JSP本身已加载的基本类?(b ) A、java.lang.* B、java.io.* C、javax.servlet.* D、javax.servlet.jsp.* 2、对于预定义<%!预定义%>的说法错误的是:(c) A、一次可声明多个变量和方法,只要以“;”结尾就行 B、一个声明仅在一个页面中有效 C、声明的变量将作为局部变量 D、在预定义中声明的变量将在JSP页面初始化时初始化 3、从 “员工” 表的“姓名”字段中找出名字包含“玛丽”的人,下面哪条select语句正确:( D ) A、 Select * from员工 where 姓名 =’_玛丽_’ B 、Select * from员工 where 姓名 =’%玛丽_’ C、 Select * from员工 where 姓名 like ‘_玛丽%’ D、 Select * from员工 where 姓名 like ‘%玛丽%’ 4、下述选项中不属于JDBC基本功能的是:( D ) A. 与数据库建立连接 B. 提交SQL语句 C. 处理查询结果 D. 数据库维护管理 5、在JSP中使用 A. name B. property C. value D. 以上皆不会出现 6、Page指令用于定义JSP文件中的全局属性,下列关于该指令用法的描述不正确的是:(D ) A. <%@ page %>作用于整个JSP页面。 B. 可以在一个页面中使用多个<%@ page %>指令。 C. 为增强程序的可读性,建议将<%@ page %>指令放在JSP文件的开头,但不是必须的。 D. <%@ page %>指令中的属性只能出现一次。 10、 不能在不同用户之间共享数据的方法是(A ) A、通过cookie B、利用文件系统 C、利用数据库 D、通过ServletContext对象 1、 下面哪一个不是JSP本身已加载的基本类?( ) A、java.lang.* B、java.io.* C、javax.servlet.* D、javax.servlet.jsp.* 2、 对于预定义<%!预定义%>的说法错误的是:( ) A、一次可声明多个变量和方法,只要以“;”结尾就行 B、一个声明仅在一个页面中有效 C、声明的变量将作为局部变量 D、在预定义中声明的变量将在JSP页面初始化时初始化 3、 从 “员工” 表的“姓名”字段中找出名字包含“玛丽”的人,下面哪条select语句正确:( ) A、 Select * from员工 where 姓名 =’_玛丽_’ B 、Select * from员工 where 姓名 =’%玛丽_’ C、 Select * from员工 where 姓名 like ‘_玛丽%’ D、 Select * from员工 where 姓名 like ‘%玛丽%’ 4、 下述选项中不属于JDBC基本功能的是:( ) A. 与数据库建立连接 B. 提交SQL语句 C. 处理查