jsp文件是以 .jsp 为后缀的文件。当你写了一个jsp文件(filename.jsp),在浏览器上访问的时候(注意是访问的时候,不是启动tomcat服务器的时候),web服务器识别到这是一个jsp网页的请求,然后从硬盘加载jsp文件后将它转换成servlet:name_jsp.java 文件,并编译成servlet可执行类,web服务器调用servlet引擎,将数据传送到浏览器。(这里还有细节,比如 jsp 引擎与servlet引擎以及服务器之间是如何配合的,为什么修改jsp后不需要重启服务器?)
1). HTML注释: <!-- 这里是注释的内容 -->
这种注释会被编译成java.lang.String类型,写到浏览器中成为html;
2). 普通注释: <%// 我是注释,不可换行! %>, <%/* 我是注释,可以换行 */%>, <%/**我是注释,可以换行 */%>
这种注释会写到Java文件中,<% %> 这个符号用来在jsp文件中嵌入Java代码用的,百分号中间可以书写Java代码,所以java代码中的注释方式
和原则都可以在百分号之间来用。
3). 隐藏注释: <%-- 我是注释,想换行就换吧! --%>
这个注释仅仅存在于当前的jsp文件,当jsp文件被转换成java文件的时候,这个注释就会被丢弃。
request : HttpServletRequest类的实例
response : HttpServletResponse类的实例
out : PrintWriter类的实例,用于把结果输出至网页上
session : HttpSession类的实例
application : ServletContext类的实例,与应用上下文有关
config : ServletConfig类的实例
pageContext : PageContext类的实例,提供对JSP页面所有对象以及命名空间的访问
page : 类似于Java类中的this关键字
Exception : Exception类的对象,代表发生错误的JSP页面中对应的异常对象
jsp文件的结构解析
jsp 实际上就是servlet, 在jsp页面中的所有元素,除了jsp标签,指令以及jsp语法定义插入的代码,还有上面提到的普通注释和隐藏注释,其他内容都被编译转换成String类型,通过out.println();写到了浏览器。