Ò»¡¢¸ÅÊö
JSPÖÐÓÐÒ»¿éÖØÒªµÄ¼¼Êõ£º×Ô¶¨Òå±êÇ©£¨Custom Tag£©£¬×î½üÕ⼸ÌìÔÚѧϰStrutsµÄʱºò·¢ÏÖStrutsÖÐʹÓÃÁ˺ܶà×Ô¶¨Òå±êÇ©£¬Èçhtml¡¢beanµÈ¡£ËùÒÔÎÒ¾Í×öÁ˸ö¼òµ¥µÄÊÔÑ飬ѧϰһÏÂÕâÖÖ¼¼Êõ¡£
Ê×ÏȽéÉÜÒ»ÏÂÕâÖÖ¼¼Êõ°É£¡
1£®Óŵ㣺
È¡´úÁËJSPÖеÄJava³ÌÐò£¬²¢ÇÒ¿ÉÒÔÖØ¸´Ê¹Ó㬷½±ã²»ÊìϤJava±à³ÌµÄÍøÒ³Éè¼ÆÈËÔ±¡£
2£®¿ª·¢Á÷³Ì£º
£¨1£© ±àдJSP£¬ÔÚJSPÖÐʹÓÃ×Ô¶¨Òå±êÇ©¡£
£¨2£© ÔÚweb.xmlÖÐÖ¸¶¨JSPÖÐʹÓõıêÇ©µÄ.tld(±êÇ©¿âÃèÊöÎļþ)ÎļþµÄλÖá£
£¨3£© .tldÎļþÖÐÖ¸¶¨±êǩʹÓõÄÀà¡£
3. ×Ô¶¨Òå±êÇ©µÄ·ÖÀࣺ
£¨1£© ¼òµ¥±êÇ©£ºÈç< mytag£ºhelloworld/>
£¨2£© ´øÊôÐÔ±êÇ©£ºÈç<imytag£ºcheckinput dbname = “<myBean.getDBName()>”/>
£¨3£© ´ø±êÇ©ÌåµÄ±êÇ©£º
ÔÚ×Ô¶¨Òå±êÇ©µÄÆ ......
½ñÌìÖØÐÂÕûÀíµçÄÔ£¬ÕÒµ½Ò»¸öÎļþ£¬¿´ÁËÏÂÈÕÆÚ£¨2006.10.21£© £¬Å²»Ð¡ÐÄÔÙ¶ªÁË£¬´æµ½ÍøÉÏÀ´É¹É¹¡£
0»ò1¸öpackage É趨ÀàËùÔÚ°ü
0»ò¶à¸öimport µ¼Èë±ØÒªÀà
script ÊÖ¸å, ÊÖ¼£, ¾ç±¾, ¿¼ÉúµÄ±ÊÊÔ¾í, Ô±¾
alert v.Ìá·ÀµÄ, ¾¯ÌèµÄ n.¾¯Ìè, ¾¯±¨
document n. ¹«ÎÄ, Îļþ, Îĵµ, µµ°¸, ÎÄÏ×v.Ö¤Ã÷
align vi.ÅÅÁÐ vt.ʹ½áÃË, ʹ³ÉÒ»ÐÐ
resume n.ÕªÒª, ¸ÅÂÔ, <ÃÀ> ÂÄÀúvt.ÔÙ¼ÌÐø, ÖØÐ¿ªÊ¼, ÖØÐÂÕ¼ÓÃ, ÔÙÓÃ, »Ö¸´
multiple adj.¶àÑùµÄ, ¶àÖØµÄ n.±¶Êý, Èô¸É v.³É±¶Ôö¼Ó
parameter n.²ÎÊý, ²ÎÁ¿,
µÚ¶þÕ jsp ±à³Ì»ù´¡ÖªÊ¶
html Ò³Ãæ»ù±¾½á¹¹£º
<html>
<head> <title> </title> </head>
<body> </body>
</html>
±ê¼Ç£º
<a href="http:\\www.getjob.com.cn">ж«·½IT½ÌÓý</a> Á´½Ó±ê¼Ç
font ×ÖÌå±ê¼ ......
JSP×Ô¶¨Òå±êǩѧϰ(¸ß¼¶)
¹Ø¼ü×Ö: ×Ô¶¨Òå±êÇ©
BodyTag½Ó¿Ú
½Ó¿ÚBodyTagµÄʵÏÖÀà,ËüÊǸºÔð²Ù×÷Ö÷ÌåÄÚÈÝ(bodyContent).
¶¨Òå·½·¨:public void doInitBody();
public int doAtferBody();
Ìáʾ,ÄÇЩÔÚdoStartTag()·½·¨Ö®ºó±»µ÷Óõķ½·¨ÒÀÀµÓÚdoStartTag()·½·¨·µ»ØÖµ²¢ÇÒ¿´ÔÚJSPÒ³ÃæÉÏÊÇ·ñ×Ô¶¨ÒåActionÔªËØ,¶ø²»ÊÇÔõÑùÔÚTLDÎļþÖÐÈ¥ÉêÃ÷
ÔÚTLDÎļþÖÐ, Èô<body-content>empty</body-content>µÄ»°,doStartTag()·½·¨Ö»ÄÜ·µ»ØSKIP_BODY
body-contentÓÐÈý¸ö¿Éѡֵ£ºempty , JSP , tagdependent
ÈôûÓÐÉèÖõϰ,ÄÇôdoStartTag()¿ÉÒÔ·µ»ØSKIP_BODY, EVAL_BODY_INCLUDE, or EVAL_BODY_BUFFERED.
·µ»ØÖµµÄ˵Ã÷:
ÈôSKIP_BODY·µ»ØµÄÇé¿öÏÂ,body²»»á±»evaluated²¢ÇÒdoEndTag()±»µ÷ÓÃ;
ÈôEVAL_BODY_INCLUDE ·µ»Ø,²¢ÇÒ×Ô¶¨ÒåactionÔªËØ²»Îª¿ÕµÄʱºò,ÄÇôdoInitBody(),setBodyContent()²»»á±»µ÷ÓÃ,¶øbody evaluated²¢ÇÒ"ͨ¹ý"µ±Ç°µÄout¶ÔÏó,»¹Óе±actionÔªËØÎª¿ÕµÄʱºò,Ö»ÓÐdoStartTag(),doEndTag();
& ......
¿ª·¢ÖУ¬³£³£ÐèÒª¶ÔÖ¸¶¨µÄÇëÇó¸ñʽ½øÐйýÂË¡£
±ÈÈ磬Struts2µÄÓ¦ÓÃÖУ¬ÍùÍùÒª¹ýÂ˵ô *.jspµÄÇëÇó
¡ùhttp://127.0.0.1:8080/Sample/login.actionÕâÑùµÄÇëÇó±»ÔÊÐí¡£
¡ùhttp://127.0.0.1:8080/Sample/login.£ê£ó£ðÕâÑùµÄÇëÇóÓ¦¸Ã±»¹ýÂË£¬²¢Ö¸¶¨Ìø×ªµ½Ä³¸öÒ³Ãæ»òÖ´ÐÐij¸öActionµÈµÈ
Struts2ÖеĹýÂËÆ÷¸ºÔð¹ýÂËËùÓеÄ*.action£¬È»ºó½øÐд¦Àí¡£
ͬÑù¿ÉÒÔ×Ô¶¨ÒåÒ»¸öFilterÀ࣬À´µ¥¶À¸ºÔðijÖÖ¸ñʽÇëÇóµÄ´¦Àí¡£
ʵÏÖjavax.servlet.Filter½Ó¿Ú
FilterClass.java
1 import javax.servlet.*;
2 import javax.servlet.http.HttpServletResponse;
3
4 import java.io.*;
5 /**
6 * ¹ýÂËËùÓÐ ¡¸*.jsp¡¹µÄÇëÇó
7 * ͨ¹ýʵÏÖservletÖеÄFilter½Ó¿Ú
8 */
9 public class FilterClass implements Filter {
10
11 public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse,
12 FilterChain chain) throws IOException, ServletException {
13 ......
WEB¿ª·¢Öо³£Óõ½ÉÏ´«Í¼£¬ÔÚδÉÏ´«Ö®Ç°ÒªÏÔʾËùÑ¡ÔñµÄͼƬ
¿ÉÒÔÓüòµ¥µÄJS ʵÏÖ£º
<html>
<head>
<SCRIPT language=JavaScript>
function showimg(){
var imgpeoper=form1.imgs.value;
form1.img.src=imgpeoper;
}
</SCRIPT>
</head>
<body>
<form id="form1">
<div align="left">
<img border=0 src=“” id="img">
<input type="file" onchange="showimg();" id="imgs" name="imgs" />
</div>
</form>
</body>
</html> ......
<%@ page contentType="text/html; charset=GB2312" %>
<%@ page errorPage="jsp3_error.jsp" %>
<%@ page import="java.util.*,java.io.*" %>
<html>
<head>
<title>
jsp×ÛºÏÓ¦ÓÃ
</title>
</head>
<jsp:useBean id="jsp3BeanId" scope="session" class="panjun.pack1.Jsp3Bean" />
<jsp:setProperty name="jsp3BeanId" property="*" />
<body bgcolor="#ffffff">
<h1>
jsp example
</h1>
<%! int id=44; %>
<form method="post" action="jsp3.jsp">
±í´ïʽ£º
<%=new java.util.Date() %>
<br />
useBeanµÄÓ¦Óãº
<jsp:getProperty name="jsp3BeanId" property="sample" />
<br />
Accept:<%=request.getHeader("Accept") %><br />
Accept-Encoding<%=request.getHeader("Accept-Encoding") %><br />
connection:<%=request.getHeader("Connection") %><br />
content-Type:<%=request.getHeader("Content-Type") %><br />
cookie:<%=request.getHeader("Cookie")%> ......