JUnitѧϰ±Ê¼Ç14 ¶ÔJSPºÍtaglib½øÐе¥Ôª²âÊÔ1
A test that can¡¯t be repeated is worthless.---Brian Marick ±¾ÕÂÄÚÈÝ£º ·Ö±ðʹÓÃCactusºÍmock objects¶ÔJSP½øÐе¥Ôª²âÊÔ ÓÃMavenÔËÐÐCactus¶ÔJSPµÄ²âÊÔ ÓÃCactus¶ÔTaglib½øÐе¥Ôª²âÊÔ ÓÃmock objectsºÍMockMaker¶ÔTaglib½øÐе¥Ôª²âÊÔ ±¾Õ½«¼ÌÐøÌÖÂÛÇ°ÃæµÄ¹ÜÀíÓ¦ÓóÌÐò£¬ÔÚÉÏÁ½ÆªµÄ±Ê¼ÇÖУ¬ÎÒÃǹØÐĵÄÊǸÃÓ¦ÓóÌÐòµÄservlet×é¼þ½øÐе¥Ôª²âÊÔ¡£±¾Õ½«¼¯ÖÐ×¢ÒâÁ¦ÓÚÊÇͼ×é¼þ——JSPºÍ×Ô¶¨Òå±ê¼Ç¿âtaglib¡£ »Ø¹Ë¹ÜÀíÓ¦ÓÃÈí¼þ£º(¿´²»µ½Í¼µãÕâÀï) ä¯ÀÀÆ÷½«·¢ËÍ»ØÒ»¸öHTTPÇëÇóµ½AdminServlet¡£·¢³öÒ»¸öSQL²éѯ×÷Ϊһ¸öHTTP²ÎÊý£¬AdminServlet»á»ñÈ¡¸Ã²ÎÊý¡£SecurityFilter½âÊ͸ÃHTTPÇëÇó²¢È·±£¸ÃSQLÊÇÎÞº¦µÄ£¨¼´ÊÇÒ»¸öSQL²éѯ£©¡£È»ºó£¬servletÔÚ¸ÃÊý¾Ý¿âÉÏÖ´Ðд˲éѯ£¬½«½á¹û´æ·ÅÓÚHTTP requestÖУ¬²¢µ÷Óýá¹ûÊÓͼ¡£JSP´ÓRequestÖÐÈ¡³ö½á¹û²¢Ê¹ÓÃÀ´×Ô±ê¼Ç¿âÖÐ×Ô¶¨ÒåµÄJSP±ê¼Ç½«Æä¸ñʽ»¯ºó£¬ÏÔʾ³öÀ´¡£ ʲôÊÇJSPµ¥Ôª²âÊÔ£¿ JSPµ¥Ôª²âÊÔ²¢²»ÊǹØÓÚ¶ÔÓɱàÒëJSPʱËù²úÉúµÄservlet½øÐе¥Ôª²âÊÔ¡£ÎÒÃǼÙÉèJSPÒѱ»Éè¼ÆºÃ£¬¼´ËüÀïÃæ²»°üº¬java´úÂ룬ÈκÎÒª´¦ÀíµÄ±íʾÂß¼¶¼±»·â×°ÔÚÒ»¸öjavabean»òtaglibÖС£¿ÉÒÔÓÃÁ½ÖÖ²»Í¬µÄ·½·¨À´½øÐе¥Ôª²âÊÔÒ»¸öjsp£º²âÊÔjsp±¾Éí»òÊDzâÊÔjsp±ê¼Ç¿â¡£ Äã¿ÉÒÔ½«jsp´Óºó¶Ë¹ÂÁ¢³öÀ´£¬·½·¨ÊÇͨ¹ýÄ£ÄâjspʹÓÃjavabean£¬È»ºó֤ʵ·µ»ØµÄÒ³°üº¬ÁËÔ¤ÆÚµÄÊý¾Ý¡£ÎÒÃǽ«Ê¹ÓÃCactusÀ´ÑÝʾÕâ¸ö²âÊÔÀà¡£ÒòΪmock objectsÖ»ÄÜ´¦Àíjava´úÂ룬ËùÒÔÄã²»ÄÜÓô¿mock objectsµÄ·½·¨µ¥¶ÀµÄ¶Ôjsp½øÐе¥Ôª²âÊÔ¡£ ÄãÒ²¿ÉÒÔÓÃÖîÈçHttpUnitÕâÑùµÄ¿ò¼ÜΪJSP±àд¹¦ÄܲâÊÔ¡£È»¶ø£¬ÕâÑùÔòÒâζ×űØÐëͬӦÓóÌÐòµÄºó¶Ë±£³ÖÍêȫһÖ£¬ÕâÓпÉÄÜ»áÊÇÊý¾Ý¿â¡£¶øÊ¹ÓÃCactusºÍmock objectsÏà½áºÏµÄ·½·¨£¬¾Í¿ÉÒÔ²»±Øµ÷Óúó¶Ë¶ø°ÑÄãµÄ×¢ÒâÁ¦¼¯ÖÐÔÚ¶ÔJSP½øÐе¥Ôª²âÊÔÉÏÁË¡£ ÄãÒ²¿ÉÒÔ¶ÔJSPÖÐʹÓõÄ×Ô¶¨Òå±ê¼Ç½øÐе¥Ôª²âÊÔ¡£ÕâÐèҪʹÓÃCactusºÍmockÁ½ÖÖ·½·¨¡£Á½ÖÖ·
Ïà¹ØÎĵµ£º
Ê×ÏÈ£¬±ØÐë˵Ã÷ÕâЩ²»ÊÇÎÒ×Ô¼ºÐ´µÄ£¬µ«ÊǸøÁËÎҺܴó°ïÖú£¬Ï£Íû¶ÔÄãÒ²ÄÜÓÐËù°ïÖú£¡
×£Äã³É¹¦£¡
Ò»¡¢¿ª·¢»·¾³ÅäÖÃ
µÚÒ»²½£ºÏÂÔØj2sdkºÍtomcat£ºµ½sun¹Ù·½Õ¾£¨http://java.sun.com/j2se/1.5.0/download.jsp£©ÏÂÔØj2sdk£¬×¢ÒâÏÂÔØ°æ±¾ÎªWindows Offline InstallationµÄSDK£¬Í¬Ê±×îºÃÏÂÔØJ2SE 1.5.0 Documentation£¬È»ºóµ½ ......
°ÑÄÇЩÏÞÖÆ·ÃÎʵÄ×ÊÔ´£¨±ÈÈç˵jspÔ´´úÂ룩·Åµ½WebÓ¦ÓõÄWEB-INFĿ¼Ï£¬¶ÔÓÚ/web-INF/¼°Æä×ÓĿ¼£¬²»ÔÊÐíÖ±½ÓµÄ¹«¹²·ÃÎÊ£¬ËùÒԾͿÉÒÔÆðµ½±£»¤ÕâЩ´úÂëδ¾ÊÚȨµÄ·ÃÎʺͿúÊÓ£¬¸üºÃµÄ±£»¤ÁËÔ´´úÂë¡£
ͨ³£JSP¿ª·¢ÈËÔ±»á°ÑËûÃǵÄÒ³ÃæÎļþ´æ·ÅÔÚWebÓ¦ÓÃÏàÓ¦µÄ×ÓĿ¼Ï¡£ÕâÖÖ·½·¨µÄÎÊÌâÊÇ ......
Ò»£º¹¤³§Ä£Ê½³öÏÖµÄÔÒò
Ò»°ãÉè¼ÆÄ£Ê½£º
view plaincopy to clipboardprint?
interface Fruit{
public void eat();
}
class Apple implements Fruit{
&n ......
JSPÔʼ´úÂëÖаüº¬ÁËJSPÔªËØºÍTemplate(Ä£°å) dataÁ½Àà
Template dataÖ¸µÄÊÇJSPÒýÇæ²»´¦ÀíµÄ²¿·Ö£¬¼´±ê¼Ç<%……%>ÒÔÍâµÄ²¿·Ö£¬
ÀýÈç´úÂëÖеÄHTMLµÄÄÚÈÝµÈ £¬ÕâЩÊý¾Ý»áÖ±½Ó´«Ë͵½¿Í»§¶ËµÄä¯ÀÀÆ÷
JSPÔªËØÔòÊÇÖ¸½«ÓÉJSPÒýÇæÖ±½Ó´¦ÀíµÄ²¿·Ö£¬ÕâÒ»²¿·Ö±ØÐë·ûºÏJSPÓï·¨£¬
·ñÔò»áµ¼Ö±àÒë´íÎó¡£
¶ ......