jsp简介

晨曦之光 发布于 2012/05/16 17:05
阅读 248
收藏 1

Jsp简介

JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与Java Servlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。

  JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。 JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。 自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。

JSP的编译器指引与指令组件

编译器指示 <%@编译器指示 %>

声明 <%!声明 %>

表达式<%= 表达式 %>

程序代码段/小型指令 <% 程序代码片段 %>

注释 <%--注释 --%>

下面我给出几个用jsp写的经典小例子

乘法口诀

<%

for(int i=1;i<=9;i++){%><%

for(int j=1;j<=i;j++){%>

<%=j%>*<%=i%>=<%=i*j%>

<%} %>

<br/>

<% } %>

输出三角形

<% for(inti=0;i<9;i++){%><%

for(int j=9;j>i;j--){%>

<%="&nbsp" %>

<% }%>

<% for(int j=0;j<i;j++){%>

<%="*&nbsp" %>

<% }%>

<br/>

<% }%>

一千以内的水仙花数

<%

for (int i = 100; i < 999; i++) {

int b, s, g;

b = i / 100;

s = (i - b * 100) / 10;

g = i - b * 100 - s * 10;

if (i == g * g * g + s * s * s + b *b * b) {

%>

<%=i%>&nbsp;

<%

}

%>

<%

}

%>

 

 

JSP指令(directive)是为JSP引擎而设计的,它们并不直接产生任何可见输出,而只是告诉引擎如何处理JSP页面中的其余部分。在JSP 2.0规范中共定义了三个指令:

page指令

Include指令

taglib指令

JSP指令简介

JSP指令的基本语法格式:

<%@ 指令 属性名="值" %>

举例:<%@page contentType="text/html;charset=UTF-8"%>

如果一个指令有多个属性,这多个属性可以写在一个指令中,也可以分开写。

例如:

<%@ pagecontentType="text/html;charset=gb2312"%>

<%@ pageimport="java.util.Date"%>

也可以写作:

<%@pagecontentType="text/html;charset=gb2312"import="java.util.Date"%>

page指令用于定义JSP页面的各种属性,无论page指令出现在JSP页面中的什么地方,它作用的都是整个JSP页面,为了保持程序的可读性和遵循良好的编程习惯,page指令最好是放在整个JSP页面的起始位置。

使用page指令解决JSP中文乱码

JSP程序存在有与Servlet程序完全相同的中文乱码问题

输出响应正文时出现的中文乱码问题

读取浏览器传递的参数信息时出现的中文乱码问题

JSP引擎将JSP页面翻译成Servlet源文件时也可能导致中文乱码问题

JSP引擎将JSP源文件翻译成的Servlet源文件默认采用UTF-8编码,而JSP开发人员可以采用各种字符集编码来编写JSP源文件,因此,JSP引擎将JSP源文件翻译成Servlet源文件时,需要进行字符编码转换。

如果JSP文件中没有说明它采用的字符集编码,JSP引擎将把它当作默认的ISO8859-1字符集编码处理。

如何解决JSP引擎翻译JSP页面时的中文乱码问题

通过page指令的contentType属性说明JSP源文件的字符集编码

page指令的pageEncoding属性说明JSP源文件的字符集编码

 



原文链接:http://blog.csdn.net/xy849288321/article/details/6944552
加载中
返回顶部
顶部