当前位置:首页 > jsp复习题
1、JSP页面的基本结构。
(1)普通的HTML标记符 符号:< > (2)JSP标记
指令标记:page、include
①page<%@ page 属性1=\属性1的值\%>
②include <%@ include file=\文件的URL\%>
动作标记:include、forward(跳转标记)、plugin、useBean、param子标记(用于传递参数)
① param子标记: (3)变量和方法的声明 <%! %> 在<%! %>声明的变量整个JSP页面有效,与书写位置无关,是成员变量 在<%! %>声明的方法整个JSP页面有效,但方法内的变量只在该方法内有效 (4)Java程序片 <% %> 在 <% %>中声明的变量为局部变量,有效范围与书写位置有关 (5)Java表达式 <%= %> 2、JSP的运行原理以及字节码文件的主要工作。 (1)运行原理 当服务器上的jsp页面被第一次请求时,该jsp会被服务器先转译成一个java文件,并编译这个文件生成字节码文件,然后执行字节码文件响应请求。 (2)字节码文件的主要工作 ① 把jsp页面中的html标记符号交给客户的浏览器负责显示 ② 负责处理jsp标记,并将有关的处理结果发送到客户的浏览器 ③ 执行“<%%>”之间的java程序片,并把执行结果交给客户的浏览器显示 ④ 对多个客户同时请求jsp时,将CPU在多个线程之间快速切换,以保证每个线程都有机会执行字节码文件 3、JSP有哪些内置对象?作用分别是什么? (1)Request:封装用户提交的信息,使用getParameter方法可以获取用户提交的信息 request常用方法: 1) getProtocol()获取用户向服务器提交信息所使用的通信协议。 2) getServletPath()获取用户请求的JSP页面文件的目录。 3) getContextPath()获取用户请求的当前的web服务目录。 4) getContentLength()获取用户提交的整个信息的长度。 5) getMethod()获取用户提交信息的方式,比如post或get。 6) getHeader(String s) 获取HTTP头文件中由参数s指定的头文件名字的值。 7) getHeaderNames()获取头名字的一个枚举。 8) getHeader(String s) 获取头文件中指定头名字的全部值得一个枚举。 9) getRemoteAddr()获取用户的IP地址。 10)getRemoteHost()获取用户机的名称。 11)getServerName()获取服务器的名称。 12)getServerPort()获取服务器的端口号。 13)getParameterNames()获取用户提交的信息体部分中name参数值的一个枚举。 (2)Response:对用户的请求做出动态响应,向用户端发送数据 (3)Session:由JSP引擎创建,可通过该对象保留链接的有关信息,判别是否为同一用户 Session的生存周期 ①是否关闭浏览器 ②调用invalidate()方法使得session无效 ③session达到了设置的最长发呆时间Tomcat为30分钟 Session对象存储数据 ① Public void setAttribute(String key,Object obj) ② Public Object getAttribute(String key) ③ Public Enumeration getAttributeNames() ④ Public void removeAttribute(String name) (4)Application:由服务器创建,该对象对访问该服务器的所有用户共享,不同的web服务目录下,application不同 (5)Out:用来向用户端输出数据 4、什么是Javabean?Javabean有哪些特征?在Javaweb开发中有什么作用? (1)JavaBean是一个可重复使用的软件组见,一种Java类,通过封装属性和方法成为某种功能或处理某个业务的对象 (2)特征: ① 可实现代码的重复利用 ② 易编写,易维护,易使用 ③ 可以在任何安装了Java运行环境的平台使用,而不需要重新编译。 (3)作用: 处理数据,储存数据,有效的分离静态部分和动态部分 5、保存bean的字节码 ①创建bean、 ②在web服务目录下建立子目录结构:\\WEB-INF\\classes、 ③根据类的包名在classes下建相应子目录,如tom.jiafei,则目录结构为tom\\jiafei 将bean的字节码文件复制到\\WEB-INF\\classes\\tom\\jiafei中 6、bean的加载原理 当JSP页面使用jsp动作标记useBean加载一个bean时,jsp引擎将首先根据jsp动作标记useBean给出的bean的id名字以及scope给出的使用范围,在下一个同步块中查找jsp引擎内置pageContent对象中是否含有这样的bean。如果这样的bean存在,jsp引擎就分配这样的bean给用户,如果在pageContent中没有查找到jsp动作标记要求的bean,就根据class制定的字节码创建一个useBean要求的bean,并将所创建的bean添加到pageContent内置对象中。 7、bean的有效范围 (1)scope取值page,只在当前页面有效,直到页面执行完毕 (2)scope取值session,只在用户的session(会话)期间 (3)scope取值request,只在当前页面有效,直到响应结束,略长于page (4)scope取值application,直到服务器关闭。共享,修改会影响 其他用户 8、获取或修改bean的属性 使用动作标记getProperty、setProperty获取或修改 9、如果表单提交的信息中有汉字,接收该信息的页面应该做怎样的处理? (1)Request设置编码 request.setCharacterEncoding(\; (2)对信息重新编码 String str=request.getParameter(“message”); Byte b[]=str.getBytes(“ISO-8859-1”); Str = new String(b); 10、include指令标记和include动作标记的不同。 (1)include指令标记: ①语法格式:<%@ include file=”文件的URL” %> ②作用:在JSP页面出现该指令的位置处,静态插入一个文件。(可重复使用) ③include指令标记是在编译阶段就处理所需要的文件,被处 理的文件在逻辑和语法上依赖于当前的JSP页面,其优点是页面的执行速度快; (2) include动作标记: ①语法格式: Param子标记 ②include动作标记是在JSP页面运行时才处理文件,被处理 的文件在逻辑和语法上 独立于当前JSP页面,其优点是可以使用param子标记更灵活的处理所需要的文件,缺点是执行速度要慢些。 11、MVC模式的工作原理,JSP技术中MVC模式的具体实现。 ①模型-视图-控制器 模型:用于储存数据的对象 视图:向控制器提交所需的数据、显示模型中的数据 控制器:负责具体的业务逻辑操作
共分享92篇相关文档