该用户从未签到
|
java server page(java服务器端页面技术)。) j; n k7 A! j* }$ g) @1 P
是sun公司制订的一种服务器端动态页面生成技术的& |0 n. Z2 k! F6 m3 o
规范。
, x' @7 X) o4 Q4 ?+ k( y8 I+ j 因为直接使用servlet生成页面,如果页面比较复杂,
8 Y2 Y1 c! a& X7 g4 r则代码过于繁琐,并且难以维护。所以,对于比较复杂. W. P( O& C' K0 x9 H: K
的页面,使用jsp来编写,更容易编写和维护。+ Y) V+ ]2 F; o3 m% X1 d
2)如何写一个jsp文件。# V% ?: g1 e- X% o
写一个以.jsp为后缀的文件,然后,在该文件当中, Z' g2 N# a$ m0 d
添加html和java代码。编写完成之后,不需要编译,当. m9 N4 ~! d" B( N7 K
客户端请求访问某个.jsp文件,则服务器会自动将
- T: w6 b) J* a.jsp文件转换成一个.java文件(该.java文件其实是一个
7 J+ y- W0 g* s. c/ @# b7 oservlet)。
, ]0 ~. W3 O c( M 3)jsp文件的组成( o+ G1 p- {$ `6 U: d
a,html(包括css,javascript):
2 X2 x* f/ R0 a! S 直接写在.jsp文件里即可。9 S9 w( r/ o# J3 z
b,java代码:
/ a. O; |( x! m5 u+ f" F9 Y 第一种形式 java代码片断 b; a A4 \; E4 A9 V2 }
语法:- \& Y: C) k+ |& P2 K" O
<% java代码 %>
3 J5 e: E7 h5 F4 C: U 第二种形式 jsp表达式
. M3 h6 f- U) ^4 F \ 语法:5 p2 d9 {; \+ _( U
<%= java表达式%>+ F, ?- _# q: N5 E3 X2 ^
c,指令:
& P* n1 N( m k' {' O% r 所谓指令,就是告诉jsp引擎(容器当中,负责
1 V: [1 b' G) h1 V! T 将.jsp文件转换成.java文件,并在运行时,, |2 p' ^# I! C- W7 D! o2 `- E9 ?
为jsp提供一些 辅助支持的模块),在将.jsp8 S) j, [8 N% k, _: ?) [0 @" y
文件转换成.java文件时,做一些额外的处理。) i. S, f, H; E7 h4 z' G6 k0 x
语法:8 g+ Q; E: u& s$ c6 w
<%@ 指令名 属性名=属性值%>
' c P- {7 W3 w6 M/ T) Y/ {8 s- ^ page指令
$ D8 ]. s9 `' l1 a import属性:用于导包。+ `+ ?- Y2 ]6 [; P4 g5 W7 x
比如
8 f9 A) N5 M6 l4 Q <%@page import="java.util.*,java.text.*"%>
1 q, i5 O( Q4 ?2 e& X( Z3 ` contentType属性:等价于
+ M; N" d/ f- I) ?, F response.setContentType();
7 B2 Q7 V3 v$ q; }$ B pageEncoding属性:告诉jsp引擎,.jsp文件( C) S; ?2 L* H
保存时的编码。7 P6 w+ @. k0 I
include指令
% L: Q5 b/ ?$ ] file属性
4 ]3 l0 f) X; w1 Z 告诉jsp引擎,在将.jsp文件转换成! k6 Q. l6 \8 [1 g& Q
.java文件时,在指令所在的位置,插入# U4 e* R( Z5 p( G
file属性所指定的文件中的内容。
+ r5 ^0 S" q3 y1 t p. g d,隐含对象9 P: n7 E# e! Z0 o
所谓隐含对象,指的是在.jsp文件当中,不用
* n$ Q2 @# d9 F; t 声明和创建该对象,就可以直接使用的对象。原
) \+ J! h0 t3 M: G( { 因是,.jsp文件对应的.java文件当中,已经自动
. Y8 \( h) N8 _; z 生成了该对象的代码。$ T+ E3 M& d. J* l
out
' d% ^. ?8 p: M: T( q' h request# ?9 z6 d3 {: ?. K8 [4 v$ W
response6 |2 U' q( g2 s! ^; g
4).jsp文件如何转换成.java文件' t& n# Z7 E" r9 \
a,html ----> 放到service()方法里,使用5 d5 e1 I" G/ t8 _
out.write()输出。# S |1 P& T0 ]2 ~7 l" ?. ]
b,java代码片断 -> 放到service()方法里,照搬。5 ?4 j2 w9 N7 p
c,jsp表达式 ----> 放到service()方法里,使用* K* n1 a# K$ E9 W& N* e7 i
out.print()输出。 |
|