JSP概述
JSP全称是Java Server Pages,它和servlet技术一样,都是SUN公司定义的一种用于开发动态web资源的技术。
JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比html而言,html只能为用户提供静态数据,而Jsp技术允许在页面中嵌套java代码,为用户提供动态数据。
JSP的源代码可以分为:模板代码+元素(元素是jsp中的java部分:jsp的指令和标签等)
JSP的基本原理
第一个jsp程序
Jsp会被翻译成servlet,在tomcatt的work\Catalina\localhost看到
不管是JSP还是Servlet,虽然都可以用于开发动态web资源。但由于这2门技术各自的特点,在长期的软件实践中,人们逐渐把Servlet作为web应用的控制器组件来使用,而把JSP技术作为数据显示模板来使用。
其原因为,程序的数据通常要美化再输出:
让JSP即用java代码产生动态数据,又做美化会导致页面难以维护。
让servlet即产生数据,又在里面嵌套html代码美化数据,同样也会导致程序可读性差,难以维护。
因此最好的办法就是根据这两门技术的特点,让他们各自负责各得,Servlet只负责响应请求产生数据,并把数据通过转发技术带给jsp,数据的显示jsp来做。
jsp编码修改
首选参数--》Web
jsp的基本语法
Jsp的模板元素:
就是jsp中的html的标记(负责页面的布局和美化,一般由美工负责)
Jsp中的表达式:
<%=%>:用于输出内容
注意:jsp中少用out.print()来输出
Jsp中的基本片段
<%%>:可以定义局部变量和语句等,是在service函数中(对照jsp的servlet的源代码就很清楚了)
通过以下案例介绍jsp 的工作原理
Ex:
<%
int age = 12;
String name = "haoren";
out.print(name+"有"+age+"岁");
%>
<%!%>:可以定义类、方法和全局变量(很少这样弄)
Jsp中的注释
显示注释:<!---->(客户端可见)
隐式注释://,/**/,<%-- --%>(jsp注释)
<%
for(int i=0;i<10;i++){
%>
<font color="red">中国人民万岁!</font>
<%
}
%>
If 和while一样写