JUnitѧϰ±Ê¼Ç15 ¶ÔJSPºÍtaglib½øÐе¥Ôª²âÊÔ2
ʹÓÃCactus¶Ôtaglib½øÐе¥Ôª²âÊÔ ÏÂͼÃèÊöÁËʹÓÃCactus¶Ô±ê¼Ç¿âµÄÒ»¸ö±ê¼Ç½øÐе¥Ôª²âÊԵĹý³Ì¡£(ͼƬÁ´½Ó) 1.Cactus¶ÔÏó³õʼ»¯²âÊÔÀ࣬¸ÃÀà±ØÐëÅÉÉú×ÔJspTestCaseÀ࣬²âÊÔ±ê¼ÇʱËùÐèÒªµÄÈκÎHTTP²ÎÊý£¬¶¼ÐèÒªÔÚbeginXXX·½·¨ÖнøÐÐÅäÖá£ÀýÈ磬Èç¹ûij±ê¼Ç´ÓHttp²ÎÊýÌáÈ¡ÐÅÏ¢£¬ÄÇôÄãÐèÒªÔÚbeginXXX·½·¨Öж¨Òå¸Ã²ÎÊý¡£ 2.ÔÚÄÚ²¿£¬CactusµÄJspTestCaseÀàµ÷ÓÃCactus JSP Redirector£¨±¾ÉíÒ²ÊÇÒ»¸öJSP£©¡£JSP Redirector¸ºÔðÔÚ·þÎñÆ÷¶Ë³õʼ»¯JspTestCaseÀ࣬´«ËÍJSPÒþʽ¶ÔÏó£¨Ö÷ÒªÊÇPageContext¶ÔÏ󣩸øËü¡£È»ºó£¬ÔÙµ÷ÓÃtestXXX·½·¨¡£ 3.ÔÚtestXXX·½·¨ÖУ¬±àд´úÂë¶ÔJSP±ê¼Ç½øÐе¥Ôª²âÊÔ¡£²âÊÔÒ»¸ö±ê¼ÇµÄµäÐͲ½ÖèΪ£ºÓÃnew ¶ÔÏó³õʼ»¯¸Ã±ê¼Ç£¬µ÷ÓÃsetPageContext£¬À´ÉèÖÃPageContext£¬µ÷ÓòâÊÔ·½·¨½øÐвâÊÔ£¬È»ºóÖ´ÐзþÎñ¶ËµÄ¶ÏÑÔ¡£ÀýÈ磬Èç¹û¸Ã±ê¼ÇÔÚHTTP¶ÎÖÐÉèÖÃÁËһЩ¶ÔÏó£¬Äã¾Í¿ÉÒÔ¶ÏÑÔÔÚÄÇÀï¡£ 4.Cactus JSP Redirector½«±ê¼ÇµÄÊä³öͨ¹ýHTTPÏìÓ¦·µ»Øµ½¿Í»§¶Ë¡£È»ºóÔÚJspTestCaseÀà±àдһ¸öendXXX·½·¨À´¶ÏÑÔ±ê¼ÇµÄÊä³ö¡£CactusÌṩÁËͬHttpUnitµÄ½ôÃܼ¯³É£¬Ëü½«ÔÊÐíÄã¶Ô·µ»ØµÄ±ê¼ÇÄÚÈݶ¨Ò徫ȷµÄ¶ÏÑÔ¡£ ¶¨Òå×Ô¶¨Òå±ê¼Ç ÔÚ½á¹ûÊÓͼÖУ¬ÎÒÃÇʹÓõĵÚÒ»¸ö±ê¼ÇÀཫÊÇDynaPropertiesTag¡£Õâ¸ö±ê¼Ç´ÓDynaBean¶ÔÏóÖÐÈ¡³öËùÓõÄÊôÐԷŵ½Ò»¸öÊý×éÀï¡£ÕâЩÊôÐÔ¶¼ÊÇDynaPropertyµÄ¶ÔÏ󣬴æ·ÅÔÚPageContextÖеÄÒ»¸öÁ¬½Óµ½±ê¼ÇµÄĿ¼Ï¡£ÏÂÃæÊǸñê¼ÇµÄÓ÷¨£º
ÆäÖÐproperties±íʾDynaProperty¶ÔÏóÊý×éµÄ±äÁ¿Ãû£¬dynaBeanÊÇÓÃÀ´»ñÈ¡ÊôÐÔÐÅÏ¢µÄDynaBeanʵÀý¡£
DynaProoertiesTagÈçÏ£º
package junitbook.pages;
import org.apache.commons.beanutils.DynaBean;
import org.apache.taglibs.standard.lang.support.ExpressionEvaluatorManager;
import javax.servlet.jsp.tagext.TagSupport;
import javax.servlet.jsp.JspException;
public class DynaPropertiesTag extends TagSupport
{
private String varName;
private String item;
public void setVar(String varName)
{
this.varName = varName;
}
public String getVar()
{
return this.varName;
}
public void setItem(String item)
{
this.item = item;
}
public String getItem()
{
return this.item;
}
public int doStartTag() throws JspException
{
Ïà¹ØÎĵµ£º
setAttribute()ÊÇÓÃÓÚ·þÎñÆ÷¶ËÉèÖÃÊôÐÔÏò¿Í»§¶Ë·¢Ë͸ÃÊôÐÔ£¬ÔÚ¿Í»§¶Ëͨ¹ýgetAttribute£¨£©»ñµÃÊôÐÔ¡£setAttribute()Ò²ÄÜ´«µÝ¶ÔÏó¡£
setParameter()Êǿͻ§¶ËÏò·þÎñÆ÷¶Ë·¢ËÍÊôÐÔ£¬Ö»ÄÜ´«×Ö·û£¬ÓÃÓÚget/postµÄÊýÖµ´«µÝ£¬ÔÚ·þÎñ¶ËÓÃgetParameter£¨£©»ñÈ¡£¬Ò³ÃæÖÐÓÐforward´Ó¶¨ÏòÒ³ÃæµÄµØÖ·ÖеIJÎÊýÒ²ÄÜÓÃgetParameter£¨£©»ñÈ¡¡ ......
response.setContentType( "application/pdf" ); // MIME type for pdf doc
response.setHeader("Content-Disposition","attachment;filename=output.pdf;");
Sets the Content-Type header. Content-Type identifies the MIME type of the response document and the character set encoding.
To se ......
<%@ page contentType="image/jpeg" import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*" %>
<%!
Color getRandColor(int fc,int bc){//¸ø¶¨·¶Î§»ñµÃËæ»úÑÕÉ«
Random random = new Random();
if(fc>255) fc=255;
if(bc>255) bc=255;
int r=fc+random.nextInt(bc-fc);
int g=fc+ran ......
ÏÂÔØºóµ¼ÈëÏîÄ¿µ½ MyEclipse , È»ºóÐÞ¸ÄÊý¾Ý¿âÁ¬½Ó²ÎÊý¼´¿É²âÊÔ. ÎÒÕâÓõÄÊÇ MySQL Êý¾Ý¿â. Óà JSP ÊÇÒòΪ Hibernate ¿ÉÒÔÅäºÏ¸÷ÖÖ¿ò¼Ü, Òò´ËÔÚ´úÂëÀïÎÒÒѾ¾¡Á¿µÄ°ÑÒ³ÃæºÍºǫ́µÄÖ±½Ó±äÁ¿ñîºÏ·Ö¸ô¿ªÁË.
hibernate_page.zip 433KB
²¿·Ö´úÂëÏÔʾ:
Ïà¹Ø SQL:
CREATE TABLE `user` (
`id` int(11) NOT NULL,
`u ......