`
xiebh
  • 浏览: 612986 次
  • 性别: Icon_minigender_1
  • 来自: 太原
社区版块
存档分类
最新评论

JSP开发常见问题

阅读更多

1、JSP页面可以包含哪些元素?

  • HTML标签:<html></html>等等
  • JSP标记:包括指令标记、动作标记
  • 程序片段:<%  %>
  • JAVA表达式:<%= %>
  • JSP注释: <%--   --%>
  • Html注释: <!--   -->

2、JSP页面各种元素的语法

 表格;

序号 语法 对应元素
1 <html></html>  
2 <%@     %> JSP指令标记
3 <%!       %> 属性和方法声明
4 <%       %> 程序片段
5 <%=    %> JAVA表达式
6 <%--   --%> JSP注释
7 <!--    --> Html注释

 

3、JSP页面执行过程?

 

JSP页面执行时,经历3个阶段:翻译、编译、执行;

(1)翻译阶段:当浏览器首次访问一个JSP页面时候,Tomcat首先将该页面翻译为.java源文件,并保存在tomcat的work相应的目录下;该java文件其实为一个servlet;

(2)编译阶段:tomcat将该servlet编译为一个class文件;

(3)执行阶段:执行该servlet class文件,并将结果返回给浏览器;

 

  当浏览器第二次再访问同一个JSP页面时候,tomcat首先判断JSP页面是否发生了改变(通过jsp文件的日期判断),若没有改变,则直接跳转到第三个阶段,直接执行class文件,这样大大提高了JSP执行的速度;

 

  当有多个浏览器同时访问同一个JSP页面时,tomcat为每个请求分配一个线程处理该请求,这些线程之间共享同一个servlet对象中的属性和方法,但是独享servlet对象的service方法。

4、JSP页面中程序片对应servlet的什么?
    程序片(<%    %>)翻译成servlet后,对应于service方法中代码片段,该片段将来以多线程独享方式运行;

5、JSP页面中的属性和方法的声明对应servlet的什么?

 

    属性或方法的声明(<%!   %>)对应于servlet中的属性和方法,当多个请求同时访问时,以多线程共享方式运行;  

 

6、JSP页面中的page指令标记常见的属性及作用?

 

     page指令(<%@ page contentType="" %>)用于设置JSP页面的属性,常用的属性有:contentType, pageEncoding, import;

    (1)contentType 属性   

 <%@ page contentType="text/html; charset=GB2312"  %>
       该属性主要用于当Tomcat将响应返回给浏览器时,告诉浏览器返回的内容是什么(text/html),以及浏览器该以什么字符集对内容进行解码(decode)

 

    (2)pageEncoding属性  

<%@ page pageEncoding="UTF-8" %>
     该属性用于2个地方:
  • 指定JSP页面的编码方式,也就是当编辑器(Eclipse等)将JSP文件保存到磁盘时以该方式进行编码。
  • 当Tomcat将JSP翻译成.Java源文件时,j将按照该属性的值对JSP页面中文本进行解码,因为JSP就是以按pageEncoding进行编码的;

    (3)import属性 

<%@ page import="java.util.*,java.io.*" %>  <%-- 多个包用逗号分隔  --%>

     导入JSP页面需要的package;

 

7、<%@ include file="file url" %>与<jsp:include page="" %>的区别是什么?

 

     (1)语法不同:            

              <%@ include file=" " %>是JSP指令标记;而<jsp:include page="" %>是JSP 动作标记;

 

     (2)运行原理不同:

             <%@ include file="" %>是静态加载的,也就是当将JSP翻译成Servlet源文件时候,tomcat从磁盘读取文件,然后替换掉该指令,做了一个字符串替换;与C、C++中的#include <stdio.h>作用一样;

            <jsp:include page="" %>是动态加载的,也就是执行JSP页面时候,当遇到JSP:include动作,Tomcat会将该page指定的JSP运行的结果插入到当前页面中;

 

     (3)使用的场景不同:

              <%@ include file="" %>一般用于将一个复杂的页面分割成多个较小的文件,并且每个小文件都可以重复使用,比如一个完整的JSP页面通常包含top.jsp(菜单、banner等等)+body.jsp(主显示区)+bottom.jsp(版权信息等等)

             <jsp:include page="" %>一般用于项目中多个页面中出现了重复功能,为了提高这些代码的重用,可以用该指令;

 

8、<jsp:include page %>动作标记的优点?

 

     代码模块化;实现功能的重用;

 

9、<jsp:include page %>与<jsp:forward  %>的区别

   

   forward:是将控制权交给forward的页面,该动作后面的JSP代码不再执行,用于实现请求的转发;

    include:动态加载运行结果,类似函数执行;

 

10、什么是session?

 

11、常见的html标签

       head title body p form input div

 

12、form标签中的属性的意义

 

  •  action属性:用于指定处理该form表单的对象,可以是一个JSP、Servlet等等;如果action="",表示由当前JSP页面来处理form表单;
  • method属性:指定浏览器向服务器提交表单时使用的方法,可以是get或post方法;通常使用post方法
  • name属性:指定form表单的名字
  • id属性:指定form表单的编号,要求id在JSP是唯一的;

13、常见form包含的元素及语法

       text、checkbox radio select submit

 

14、如何给<jsp:include > <jsp:forward >传递参数?

       <jsp:param >

 

15、浏览器的主要功能是什么?

 

  •   向DNS服务器发出域名解析请求;
  •  根据域名解析后的IP地址,与服务器建立TCP连接;
  •  使用HTTP协议向服务器发生请求;
  •  接收服务器的响应,并解析和渲染响应;

 

16、HTTP协议常见的状态码的意义是什么?

  • 200
  • 404
  • 500

17、HTTP协议的get、post方法的区别是什么?

  

18、Tomcat的主要作用?

  • 接收请求

 

19、JSP中的指令(directives)都有哪些?

 

  • page
  • include
  • taglib所有的指令的执行都发生在翻译阶段,也就是将JSP页面翻译为Servlet源代码的时候

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    jsp问题处理集,解决大多数jsp的常见问题

    在Java服务器页面(JSP)开发中,遇到各种问题是很常见的。这个"jsp问题处理集"显然旨在为初学者提供一个宝贵的资源库,帮助...通过阅读和实践其中的内容,初学者可以逐步克服JSP开发中的障碍,成为更熟练的开发者。

    Jsp中常见异常解答

    本文将详细解析JSP开发中常见的异常及其解决方法。 #### 1. **Servlet 异常** 在JSP中,Servlet是其背后的主要技术之一。当Servlet执行时出现错误或异常时,通常会导致JSP页面无法正常渲染。例如: - **...

    jsp中常见200问题

    总之,“jsp中常见200问题”涵盖了JSP开发的各个方面,从基础到进阶,旨在帮助开发者解决实际工作中遇到的各种问题。通过深入学习和实践这些知识点,你将能够更熟练地驾驭JSP,创建出功能丰富的Web应用程序。

    JAVA,JSP,SERVLET课件及一些常见问题解决方法

    Java、JSP(JavaServer Pages...通过深入理解Java、JSP和Servlet,开发者可以更高效地开发和维护动态Web项目,解决实际开发中遇到的问题。这些课件和示例代码提供了丰富的实践材料,对于初学者和进阶者都是宝贵的资源。

    jsp开发工具

    这些工具类极大地简化了JSP开发中的常见任务,提高了代码的可读性和可维护性。 对于初学者而言,理解并使用这些jar包是学习JSP开发的关键步骤。例如,通过引入Apache Commons Lang的jar包,可以使用其提供的字符串...

    jsp开发应用指南

    综上所述,"JSP开发应用指南"涵盖了JSP的基本概念、语法结构、生命周期、与Servlet的关系以及在企业级开发中的应用。通过深入理解和熟练掌握这些知识点,开发者能够高效地利用JSP构建动态Web应用程序。

    JBuilder实战JSP开发

    在JSP开发中,数据库连接是常见的需求,用于存储和检索数据。JBuilder提供了多种方式来实现这一目标,如使用JDBC(Java Database Connectivity)API。JDBC是Java中用于与各种数据库进行交互的标准接口,通过驱动程序...

    jsp应用开发详解 jsp电子书

    14. **JSP性能优化**:探讨如何减少JSP的解析和编译时间,提高页面响应速度,以及避免常见的性能瓶颈。 15. **案例分析与实战**:通过实际的项目案例,学习如何将所学知识应用到实际开发中,提升解决实际问题的能力...

    JSP应用开发与实践

    在《JSP应用开发与实践》(第三版)中,刘乃琦博士深入浅出地讲解了JavaServer Pages(JSP)技术的应用和实践。这本书的第三章至第九章涵盖了JSP的基础到进阶知识,提供了丰富的实例源码,帮助读者理解和掌握JSP的...

    jsp开发的商业网站

    此外,MVC(Model-View-Controller)设计模式也是JSP开发中常见的架构选择。在"jsp电影院管理系统"中,模型层处理业务逻辑和数据,视图层负责渲染用户界面,控制器则协调两者之间的交互。通过分离关注点,MVC模式使...

    jsp开发中遇到的问题及解决方案.rar

    这份"jsp开发中遇到的问题及解决方案"的压缩包文件,旨在为J2EE项目的开发提供帮助,解决实践中可能遇到的常见难题。以下是针对JSP、Web开发以及J2EE开发的一些关键知识点和常见问题的解决方案: 1. **JSP基本语法...

    JSP数据库开发实例精粹 源码

    本书的附带光盘包含每个实例的源代码及典型的技术难点、相应案例的常见问题解答和亮点展示,并且还有针对初学者的视频教学短片。 本书适用于使用JSP开发Web应用程序的技术人员及对相关技术感兴趣的读者,同时也非常...

    JSP数据库开发实例

    总之,"JSP数据库开发实例"是一个宝贵的学习资源,它涵盖了JSP和JDBC的关键知识点,为Web开发者提供了一条从理论到实践的桥梁,有助于解决JSP数据库开发中的实际问题。通过深入研究这些实例,开发者可以更好地理解和...

    JSP开发实例-网上书店OnlineShop

    **网上书店OnlineShop JSP开发实例详解** 在Web开发领域,JavaServer Pages(JSP)是一种常见的技术,用于创建动态网页。本实例“OnlineShop”是基于JSP的网上书店项目,它展示了如何利用JSP进行功能丰富的电商网站...

    JSP开发指南.rar

    "JSP开发指南"这本书可能是针对JSP初学者的一本教程,涵盖JSP的基础知识、实战技巧和最佳实践。通过阅读,你可以深入了解JSP的工作原理,学会如何创建和管理动态网页,以及如何利用JSP与其他Java技术(如Servlet、...

    JSP应用开发-项目开发中常见问题处理.pptx

    首先,我们来讨论JSP开发中空指针错误的处理。空指针异常(NullPointerException)是Java编程中常见的运行时异常,当试图调用一个null对象的方法或者访问其属性时,就会抛出此异常。例如,尝试获取请求参数或会话...

    JSP网络开发实例自学手册

    另外,Model-View-Controller(MVC)设计模式也是JSP开发中常见的架构模式,它有助于保持代码组织清晰,提高可扩展性。 总之,《JSP网络开发实例自学手册》和提供的“环境搭建视频录像”资源将引导你进入JSP开发的...

    JSP开发工具

    **JSP开发工具详解** JavaServer Pages(JSP)是一种基于Java技术的动态网页开发工具,它允许开发者在HTML、XML或者其他标记语言中嵌入Java代码,以实现服务器端的程序逻辑。JSP的出现极大地简化了Web应用程序的...

    《JSP+Web应用开发案例教程》教学课件_JSP课件_

    学习JSP还需要理解如何在Web服务器(如Tomcat)上部署应用,包括配置web.xml文件,理解目录结构,以及处理部署过程中的常见问题。 通过《JSP+Web应用开发案例教程》教学课件,学生将深入理解JSP的工作原理,掌握...

Global site tag (gtag.js) - Google Analytics