锘??xml version="1.0" encoding="utf-8" standalone="yes"?> 銆銆浼犵粺涓婏紝Hibernate鐨勯厤緗緷璧栦簬澶栭儴 XML 鏂囦歡錛氭暟鎹簱鏄犲皠琚畾涔変負涓緇?XML 鏄犲皠鏂囦歡錛屽茍涓斿湪鍚姩鏃惰繘琛屽姞杞姐傚垱寤鴻繖浜涙槧灝勬湁寰堝鏂規硶錛屽彲浠ヤ粠宸叉湁鏁版嵁搴撴ā寮忔垨Java綾繪ā鍨嬩腑鑷姩鍒涘緩錛屼篃鍙互鎵嬪伐鍒涘緩銆傛棤璁哄浣曪紝鎮ㄦ渶緇堝皢鑾峰緱澶ч噺鐨?Hibernate 鏄犲皠鏂囦歡銆傛澶栵紝榪樺彲浠ヤ嬌鐢ㄥ伐鍏鳳紝閫氳繃javadoc鏍峰紡鐨勬敞閲婄敓鎴愭槧灝勬枃浠訛紝灝界榪欐牱浼氱粰鎮ㄧ殑鏋勫緩榪囩▼澧炲姞涓涓楠ゃ?/p>
銆銆鍦ㄦ渶榪戝彂甯冪殑鍑犱釜Hibernate鐗堟湰涓紝鍑虹幇浜嗕竴縐嶅熀浜?Java 5 娉ㄩ噴鐨勬洿涓哄閥濡欑殑鏂版柟娉曘傚熷姪鏂扮殑 Hibernate Annotation 搴擄紝鍗沖彲涓嬈℃у湴鍒嗛厤鎵鏈夋棫鏄犲皠鏂囦歡鈥斺斾竴鍒囬兘浼氭寜鐓ф偍鐨勬兂娉曟潵瀹氫箟鈥斺旀敞閲婄洿鎺ュ祵鍏ュ埌鎮ㄧ殑 Java 綾諱腑錛屽茍鎻愪緵涓縐嶅己澶у強鐏墊椿鐨勬柟娉曟潵澹版槑鎸佷箙鎬ф槧灝勩傜睄鐢辮嚜鍔ㄤ唬鐮佸畬鎴愬拰璇硶紿佸嚭鏄劇ず鍔熻兘錛屾渶榪戝彂甯冪殑Java IDE涔熶負鍏舵彁渚涗簡鏈夊姏鐨勬敮鎸併?/p>
銆銆Hibernate Annotation榪樻敮鎸佹柊鐨?EJB 3 鎸佷箙鎬ц鑼冦傝繖浜涜鑼冩棬鍦ㄦ彁渚涗竴縐嶆爣鍑嗗寲鐨?Java 鎸佷箙鎬ф満鍒躲傜敱浜?Hibernate 3 榪樻彁渚涗簡涓浜涙墿灞曪紝鍥犳鎮ㄥ彲浠ュ崄鍒嗚交鏉懼湴閬典粠榪欎簺鏍囧噯錛屽茍浣跨敤 EJB 3 緙栫▼妯″瀷鏉ュ Hibernate 鎸佷箙灞傝繘琛岀紪鐮併?/p>
銆銆鐜板湪錛岃鎴戜滑鏉ュ姩鎵嬩嬌鐢℉ibernate Annotation銆?/p>
銆銆瑕佷嬌鐢?Hibernate Annotation錛屾偍鑷沖皯闇瑕佸叿澶?Hibernate 3.2鍜孞ava 5銆傚彲浠ヤ粠 Hibernate 绔欑偣 涓嬭澆 Hibernate 3.2 鍜?Hibernate Annotation搴撱傞櫎浜嗘爣鍑嗙殑 Hibernate JAR 鍜屼緷璧栭」涔嬪錛屾偍榪橀渶瑕?Hibernate Annotations .jar 鏂囦歡錛?em>hibernate-annotations.jar錛夈丣ava 鎸佷箙鎬?API 錛?em>lib/ejb3-persistence.jar錛夈傚鏋滄偍姝e湪浣跨敤 Maven錛屽彧闇瑕佸悜 POM 鏂囦歡娣誨姞鐩稿簲鐨勪緷璧栭」鍗沖彲錛屽涓嬫墍紺猴細 銆銆涓嬩竴姝ュ氨鏄幏鍙?Hibernate 浼氳瘽宸ュ巶銆傚敖綆℃棤闇鎯婂ぉ鐨勪慨鏀癸紝浣嗚繖涓宸ヤ綔涓庝嬌鐢?Hibernate Annotations鏈夋墍涓嶅悓銆傛偍闇瑕佷嬌鐢?AnnotationConfiguration 綾繪潵寤虹珛浼氳瘽宸ュ巶錛?/p>
銆銆灝界閫氬父浣跨敤 銆銆榪戞湡鐨勮澶?Java 欏圭洰閮戒嬌鐢ㄤ簡杞婚噺綰х殑搴旂敤妗嗘灦錛屼緥濡?Spring銆傚鏋滄偍姝e湪浣跨敤 Spring 妗嗘灦錛屽彲浠ヤ嬌鐢?AnnotationSessionFactoryBean 綾昏交鏉懼緩绔嬩竴涓熀浜庢敞閲婄殑 Hibernate 浼氳瘽宸ュ巶錛屽涓嬫墍紺猴細 銆銆鏃㈢劧宸茬粡鐭ラ亾浜嗗浣曡幏寰楁敞閲婃墍鏀寔鐨?Hibernate 浼氳瘽錛屼笅闈㈣鎴戜滑鏉ヤ簡瑙d竴涓嬪甫娉ㄩ噴鐨勬寔涔呮х被鐨勬儏鍐碉細 銆銆鍍忓湪鍏朵粬浠諱綍 Hibernate搴旂敤紼嬪簭涓竴鏍鳳紝甯︽敞閲婄殑鎸佷箙鎬х被涔熸槸鏅?POJO銆傚樊涓嶅鍙互璇存槸銆傛偍闇瑕佸悜 Java 鎸佷箙鎬?API 錛?em>javax.persistence.*錛夋坊鍔犱緷璧栭」錛屽鏋滄偍姝e湪浣跨敤浠諱綍鐗瑰畾浜?Hibernate鐨勬墿灞曪紝閭e緢鍙兘灝辨槸 Hibernate Annotation 紼嬪簭鍖咃紙org.hibernate.annotations.*錛夛紝浣嗛櫎姝や箣澶栵紝瀹冧滑鍙槸鍏峰浜嗘寔涔呮ф敞閲婄殑鏅?POJO 銆備笅闈㈡槸涓涓畝鍗曠殑渚嬪瓙錛?/p>
銆銆姝e儚鎴戜滑鎵鎻愬埌鐨勶紝榪欓潪甯哥畝鍗曘侤Entity 娉ㄩ噴澹版槑璇ョ被涓烘寔涔呯被銆侤Id 娉ㄩ噴鍙互琛ㄦ槑鍝灞炴ф槸璇ョ被涓殑鐙壒鏍囪瘑絎︺備簨瀹炰笂錛屾偍鏃㈠彲浠ヤ繚鎸佸瓧孌碉紙娉ㄩ噴鎴愬憳鍙橀噺錛夛紝涔熷彲浠ヤ繚鎸佸睘鎬э紙娉ㄩ噴getter鏂規硶錛夌殑鎸佷箙鎬с傚悗鏂囦腑灝嗕嬌鐢ㄥ熀浜庡睘鎬х殑娉ㄩ噴銆傚熀浜庢敞閲婄殑鎸佷箙鎬х殑浼樼偣涔嬩竴鍦ㄤ簬澶ч噺浣跨敤浜嗛粯璁ゅ鹼紙鏈澶х殑浼樼偣灝辨槸 “鎯緥浼樺厛鍘熷垯錛坈onvention over configuration錛?#8221;錛夈備緥濡傦紝鎮ㄦ棤闇璇存槑姣忎釜灞炴х殑鎸佷箙鎬р斺斾換浣曞睘鎬ч兘琚亣瀹氫負鎸佷箙鐨勶紝闄ら潪鎮ㄤ嬌鐢?@Transient 娉ㄩ噴鏉ヨ鏄庡叾浠栨儏鍐點傝繖綆鍖栦簡浠g爜錛岀浉瀵逛嬌鐢ㄨ佺殑 XML 鏄犲皠鏂囦歡鑰岃█涔熷ぇ騫呭湴鍑忓皯浜嗚緭鍏ュ伐浣滈噺銆?/p>
銆銆Hibernate 鑳藉鍑鴻壊鍦拌嚜鍔ㄧ敓鎴愪富閿侶ibernate/EBJ 3 娉ㄩ噴涔熷彲浠ヤ負涓婚敭鐨勮嚜鍔ㄧ敓鎴愭彁渚涗赴瀵岀殑鏀寔錛屽厑璁稿疄鐜板悇縐嶇瓥鐣ャ備笅闈㈢殑紺轟緥璇存槑浜嗕竴縐嶅父鐢ㄧ殑鏂規硶錛屽叾涓?Hibernate 灝嗕細鏍規嵁搴曞眰鏁版嵁搴撴潵紜畾涓縐嶆伆褰撶殑閿敓鎴愮瓥鐣ワ細 銆銆榛樿鎯呭喌涓嬶紝Hibernate 浼氬皢鎸佷箙綾諱互鍖歸厤鐨勫悕縐版槧灝勫埌琛ㄥ拰瀛楁涓備緥濡傦紝鍓嶄竴涓被鍙互涓庢槧灝勫埌浠ュ涓嬩唬鐮佸垱寤虹殑琛ㄤ腑錛?/p>
銆銆濡傛灉鎮ㄦ槸鑷繁鐢熸垚騫剁淮鎶ゆ暟鎹簱錛岄偅涔堣繖縐嶆柟娉曞緢鏈夋晥錛岄氳繃鐪佺暐浠g爜鍙互澶уぇ綆鍖栦唬鐮佺淮鎶ゃ傜劧鑰岋紝榪欏茍涓嶈兘婊¤凍鎵鏈変漢鐨勯渶姹傘傛湁浜涘簲鐢ㄧ▼搴忛渶瑕佽闂閮ㄦ暟鎹簱錛岃屽彟涓浜涘彲鑳介渶瑕侀伒浠庡叕鍙哥殑鏁版嵁搴撳懡鍚嶆儻渚嬨傚鏋滄湁蹇呰錛屾偍鍙互浣跨敤 @Table 鍜?@Column 娉ㄩ噴鏉ュ畾鍒舵偍鑷繁鐨勬寔涔呮ф槧灝勶紝濡備笅鎵紺猴細 銆銆璇ュ唴瀹瑰皢鏄犲皠鍒頒笅琛ㄤ腑錛?/p>
銆銆涔熷彲浠ヤ嬌鐢ㄥ叾浠栧浘鍜屽垪鐨勫睘鎬ф潵瀹氬埗鏄犲皠銆傝繖浣挎偍鍙互鎸囧畾璇稿鍒楅暱搴︺侀潪絀虹害鏉熺瓑璇︾粏鍐呭銆侶ibernate鏀寔澶ч噺閽堝榪欎簺娉ㄩ噴鐨勫睘鎬с備笅渚嬩腑灝卞寘鍚簡鍑犵灞炴э細 銆銆Java 鎸佷箙鎬ф槧灝勮繃紼嬩腑鏈閲嶈鍜屾渶澶嶆潅鐨勪竴鐜氨鏄‘瀹氬浣曟槧灝勮〃闂寸殑鍏崇郴銆傚儚鍏朵粬浜у搧涓鏍鳳紝 Hibernate 鍦ㄨ棰嗗煙涓彁渚涗簡楂樺害鐨勭伒媧繪э紝浣嗗嵈鏄互澶嶆潅搴︾殑澧炲姞涓轟唬浠楓傛垜浠皢閫氳繃鐮旂┒鍑犱釜甯歌妗堜緥鏉ヤ簡瑙e浣曚嬌鐢ㄦ敞閲婃潵澶勭悊榪欎竴闂銆?/p>
銆銆鍏朵腑涓縐嶆渶甯哥敤鐨勫叧緋誨氨鏄瀵逛竴鐨勫叧緋匯傚亣瀹氬湪浠ヤ笂紺轟緥涓瘡涓?ModelPlane 閫氳繃澶氬涓鐨勫叧緋伙紙涔熷氨鏄錛屾瘡涓鏈烘ā鍨嬪彧涓庝竴縐嶉鏈虹被鍨嬪緩绔嬭仈緋伙紝灝界鎸囧畾鐨勯鏈虹被鍨嬪彲浠ヤ笌涓冪椋炴満妯″瀷寤虹珛鑱旂郴錛夋潵涓?PlaneType 寤虹珛鑱旂郴銆傚彲濡備笅榪涜鏄犲皠錛?/p>
銆銆CascadeType 鍊艱〃鏄?Hibernate 搴斿浣曞鐞嗙駭鑱旀搷浣溿?/p>
銆銆鍙︿竴縐嶅父鐢ㄧ殑鍏崇郴涓庝笂榪板叧緋葷浉鍙嶏細涓瀵瑰鍐嶅涓鍏崇郴錛屼篃縐頒負闆嗗悎銆傚湪鑰佸紡鐨?Hibernate 鐗堟湰涓繘琛屾槧灝勬垨浣跨敤娉ㄩ噴鏃訛紝闆嗗悎浠や漢澶寸柤錛岃繖閲屾垜浠皢綆瑕佸姞浠ユ帰璁紝浠ヤ嬌鎮ㄤ簡瑙e浣曞鐞嗛泦鍚堬紝渚嬪錛屽湪浠ヤ笂紺轟緥涓瘡涓?PlaneType 瀵硅薄閮藉彲鑳戒細鍖呭惈涓涓?ModelPlanes 闆嗗悎銆傚彲鏄犲皠濡備笅錛?/p>
銆銆Hibernate 鏈浼樼鐨勫姛鑳戒箣涓灝卞湪浜庡畠鑳藉鍦ㄦ偍鐨勬槧灝勬枃浠朵腑澹版槑鍛藉悕鏌ヨ銆傞殢鍚庡嵆鍙氳繃浠g爜涓殑鍚嶇О璋冪敤姝ょ被鏌ヨ錛岃繖浣挎偍鍙互涓撴敞浜庢煡璇紝鑰岄伩鍏嶄簡 SQL 鎴栬?HQL 浠g爜鍒嗘暎浜庢暣涓簲鐢ㄧ▼搴忎腑鐨勬儏鍐點?/p>
銆銆涔熷彲浠ヤ嬌鐢ㄦ敞閲婃潵瀹炵幇鍛藉悕鏌ヨ錛屽彲浠ヤ嬌鐢?@NamedQueries 鍜?@NamedQuery 娉ㄩ噴錛屽涓嬫墍紺猴細 銆銆涓鏃﹀畬鎴愪簡瀹氫箟錛屾偍灝卞彲浠ュ儚璋冪敤鍏朵粬浠諱綍鍏朵粬鍛藉悕鏌ヨ涓鏍鋒潵璋冪敤瀹冧滑銆?/p>
銆銆Hibernate 3 娉ㄩ噴鎻愪緵浜嗗己澶ц岀簿鑷寸殑 API錛岀畝鍖栦簡 Java 鏁版嵁搴撲腑鐨勬寔涔呮т唬鐮侊紝鏈枃涓彧榪涜浜嗙畝鍗曠殑璁ㄨ銆傛偍鍙互閫夋嫨閬典粠鏍囧噯騫朵嬌鐢?Java 鎸佷箙鎬?API錛屼篃鍙互鍒╃敤鐗瑰畾浜?Hibernate鐨勬墿灞曪紝榪欎簺鍔熻兘浠ユ崯澶卞彲縐繪鎬т負浠d環鎻愪緵浜嗘洿涓哄己澶х殑鍔熻兘鍜屾洿楂樼殑鐏墊椿鎬с傛棤璁哄浣曪紝閫氳繃娑堥櫎瀵?XML 鏄犲皠鏂囦歡鐨勯渶姹傦紝Hibernate 娉ㄩ噴灝嗙畝鍖栧簲鐢ㄧ▼搴忕殑緇存姢錛屽悓鏃朵篃鍙互浣挎偍瀵笶JB 3 鏈夊垵姝ヨ璇嗐傛潵璇曡瘯鍚э紒 JSON鐨勭粨鏋勫熀浜庝笅闈袱鐐?br />
榪欓噷鍋囪鎴戜滑闇瑕佸垱寤轟竴涓猆ser瀵硅薄錛屽茍鍏鋒湁浠ヤ笅灞炴?/p>
鎮ㄥ彲浠ヤ嬌鐢ㄤ互涓婮SON褰㈠紡鏉ヨ〃紺篣ser瀵硅薄錛?/p>
鐒跺悗濡傛灉鎶婅繖涓瀛楃涓茶祴浜堜竴涓狫avaScript鍙橀噺錛岄偅涔堝氨鍙互鐩存帴浣跨敤瀵硅薄鐨勪換涓灞炴т簡銆?/p>
瀹屾暣浠g爜: 瀹為檯浣跨敤鏃跺彲鑳芥洿澶嶆潅涓鐐癸紝姣斿鎴戜滑涓篘ame瀹氫箟鏇磋緇嗙殑緇撴瀯錛屼嬌瀹冨叿鏈塅irstName鍜孡astName錛?/p>
瀹屾暣浠g爜: 鐜板湪鎴戜滑澧炲姞涓涓柊鐨勯渶姹傦紝鎴戜滑鏌愪釜欏甸潰闇瑕佷竴涓敤鎴峰垪琛紝鑰屼笉浠呬粎鏄竴涓崟涓鐨勭敤鎴蜂俊鎭紝閭d箞榪欓噷灝遍渶瑕佸垱寤轟竴涓敤鎴峰垪琛ㄦ暟緇勩?br />
涓嬮潰浠g爜婕旂ず浜嗕嬌鐢↗SON褰㈠紡瀹氫箟榪欎釜鐢ㄦ埛鍒楄〃錛?
浜嬪疄涓婇櫎浜嗕嬌鐢?."寮曠敤灞炴у錛屾垜浠繕鍙互浣跨敤涓嬮潰璇彞錛?/p>
鐜板湪璇昏呭簲璇ュJSON鐨勪嬌鐢ㄦ湁鐐硅璇嗕簡錛屽綊綰充負浠ヤ笅鍑犵偣錛?/p>
灝忚妭錛?br />
鍓嶆彁 OS: WIN2000 2.鍑嗗web寮鍙戠洰褰?br />
姣斿鎴戠殑web鐩綍涓篽:\webapp\myweb\(褰撶劧鍙互鎶婁綘鐨剋eb搴旂敤鏀懼湪%tomcat_home%\webapps\)錛岀О涓哄伐浣滅洰褰昗orking folder,鍦ㄥ伐浣滅洰褰昲:\webapp\myweb\涓嬪緩绔媁EB-INF\lib,WEB-INF\classes 3.鎷瘋礉.jar鏂囦歡 4.鎷瘋礉.tld鏂囦歡 5.鍦╘WEB-INF\涓嬪緩绔媤eb.xml鏂囦歡錛?br />
<?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" <taglib> <taglib> <taglib> <taglib> <taglib> <taglib> <taglib> 7.寮鍚痶omcat,榪涜璋冭瘯錛屾垜鐨勮緭鍑虹粨鏋滄槸 嬈㈣繋嫻嬭瘯浣犵殑絎竴涓嬌鐢ㄥ埌JSTL 鐨勭綉欏? 鍦╦s涓璻eturn false鐨勪綔鐢ㄤ竴鑸槸鐢ㄦ潵鍙栨秷榛樿鍔ㄤ綔鐨勩傛瘮濡備綘鍗曞嚮涓涓摼鎺ラ櫎浜嗚Е鍙戜綘鐨? <script> </head> <body> <a href="xxxx.do?....." target=dolink>榪炴帴abcd </a> 鏈榪戝仛鐨勯」鐩紝閫氳繃緇戝畾鍦?button 鐨?onclick 浜嬩歡鐨勫嚱鏁版彁浜よ〃鍗曘傚彂鐜?return false 涔熸槸寰堥噸瑕佺殑銆傛瘮濡傦細 <input type="submit" onclick="submitAction(); return false;" /> submitAction 鏂規硶閲岄潰鏈夋彁浜よ〃鍗曠殑鍔ㄤ綔銆傚鏋滀笉鍔?return false錛屽湪鎵ц瀹?submitAction 涔嬪悗錛宻ubmit 鎸夐挳榪樹細緇х畫鎵ц瀹冪殑榛樿浜嬩歡錛屽氨浼氬啀嬈℃彁浜よ〃鍗曘傝繖鍙兘灝辨槸寰堝閿欒鐨勬牴婧愩?/p>
鐨勭‘錛宺eturn false鐨勫惈涔変笉鏄樆姝簨浠剁戶緇悜欏跺眰鍏冪礌浼犳挱錛岃屾槸闃繪嫻忚鍣ㄥ浜嬩歡鐨勯粯璁ゅ鐞嗐備綘鍙互榪欐牱璇曢獙錛氶鍏堝皢鎵鏈夌殑js鑴氭湰娉ㄩ噴鎺夛紝鍦↖E嫻忚鍣ㄤ腑灝濊瘯鎷栧姩涓涓嬪浘鐗囷紝浣犱細鍙戠幇榧犳爣浼氭垚涓虹姝㈡搷浣滅殑鏍峰紡錛屽浘鐗囨槸琚姝㈡嫋鍔ㄧ殑錛屽畠鏄祻瑙堝櫒閽堝mousemove浜嬩歡鎵鎻愪緵鐨勯粯璁よ涓恒俽eturn false灝辨槸涓轟簡鍘繪帀榪欑琛屼負錛屽惁鍒欏氨浼氬嚭鐜頒綘鎻忚堪鐨勪腑鏂簨浠惰繛緇墽琛屻?/p>
鍙﹀錛屽拰return false絳夋晥鐨勮鍙ヤ負錛歸indow.event.returnValue = false錛屼綘鍙互鎶妑eturn false鏇挎崲涓烘璇彞騫惰繘琛岄獙璇併?/p>
鏈鍚庤鏄庝竴涓嬶紝姝ょ鏂瑰紡鍙傜敤浜嶪E嫻忚鍣ㄣ?/p>
<html> if(ass[0].value.length>15){ 娼滄按鐪嬩簡浼楀ぇ铏劇殑綺懼僵甯栧瓙錛屼粖涔熻礎鐚竴鐐瑰績寰椼傚叾闂誨叡嬈h祻錛岀枒涔夌浉涓庢瀽銆傛湁涓嶅涔嬪璇蜂笉鍚濇媿鐮栥? 浼楁墍鍛ㄧ煡錛屽湪琛ㄥ崟涓姞涓妎nsubmit="return false;"鍙互闃繪琛ㄥ崟鎻愪氦銆? view plaincopy to clipboardprint? <form action="index.jsp" method="post" onsubmit="submitTest();;"> <SCRIPT LANGUAGE="JavaScript"> 鑻ョ瓟妗堜負鏄紝灝變笉鐢ㄥ線涓嬬湅浜嗐? 鑻ョ瓟妗堜負鍚︼紝閿欎簡銆傚疄闄呮儏鍐墊槸琛ㄥ崟姝e父鎻愪氦錛岃嫢鎯沖畠涓嶆彁浜わ紝搴旇灝?/p>
view plaincopy to clipboardprint? <form action="index.jsp" method="post" onsubmit="submitTest();;">鏀逛負 view plaincopy to clipboardprint? <form action="index.jsp" method="post" onsubmit="return submitTest();;"> 涓轟綍錛? 鍘熸潵onsubmit灞炴у氨鍍忔槸<form>榪欎釜html瀵硅薄鐨勪竴涓柟娉曞悕錛屽叾鍊鹼紙涓瀛楃涓詫級灝辨槸鍏舵柟娉曚綋錛岄粯璁よ繑鍥瀟rue錛? 鍜孞ava涓鏍鳳紝鍦ㄨ鏂規硶浣撲腑浣犲彲浠ュ啓浠繪剰澶氫釜璇彞錛屽寘鎷唴緗嚱鏁板拰鑷畾涔夊嚱鏁幫紝濡?/p>
view plaincopy to clipboardprint? onsubmit=" view plaincopy to clipboardprint? Form.prototype.onsubmit = function(); { 緇忚繃榪欐牱鐨勫垎鏋愬悗錛屼互涓婃儏鍐靛氨涓嶉毦鐞嗚В浜嗭細 view plaincopy to clipboardprint? <form action="index.jsp" method="post" onsubmit="submitTest();;">榪欐牱鍐欙紝override鏂規硶鐨勬晥鏋滀負錛?/p>
view plaincopy to clipboardprint? Form.prototype.onsubmit = function(); { view plaincopy to clipboardprint? <form action="index.jsp" method="post" onsubmit="return submitTest();;"> view plaincopy to clipboardprint? Form.prototype.onsubmit = function(); { 緇撹錛? view plaincopy to clipboardprint? Form.prototype.onsubmit = function(); {
Adapter,鎸夊悜瀵兼彁紺轟笅涓姝ュ氨琛屼簡銆傚畬鎴愪互鍚庢墦寮浣犵殑緗戜笂閭誨眳鐪嬬湅鏄笉鏄浜嗕竴涓綉涓婅繛鎺ワ紙2錛夛紝鐒跺悗璁劇疆瀹冪殑IP鍦板潃濡傘?92.168.1.1.闅忎究灝辮浜嗭紝榪欐牱鍦ㄥ畨瑁卭racle鐨勬椂鍊欏氨鍙互鐢ㄨ繖涓涓亣鐨勭綉緇滄潵榪炴帴錛岃挋楠椾竴涓?oracle浜嗐備竴瀹氬彲浠ラ獙璇佽繃鍘?img src ="http://www.tkk7.com/jiafang83/aggbug/385724.html" width = "1" height = "1" />
]]>
鍦ㄨ繃鍘誨嚑騫撮噷錛孒ibernate涓嶆柇鍙戝睍錛屽嚑涔庢垚涓篔ava鏁版嵁搴撴寔涔呮х殑浜嬪疄鏍囧噯銆傚畠闈炲父寮哄ぇ銆佺伒媧伙紝鑰屼笖鍏峰浜嗕紭寮傜殑鎬ц兘銆傚湪鏈枃涓紝鎴戜滑灝嗕簡瑙e浣曚嬌鐢↗ava 5 娉ㄩ噴鏉ョ畝鍖朒ibernate浠g爜錛屽茍浣挎寔涔呭眰鐨勭紪鐮佽繃紼嬪彉寰楁洿涓鴻交鏉俱?
瀹夎 Hibernate Annotation
...
sessionFactory = new
AnnotationConfiguration().buildSessionFactory();
絎竴涓寔涔呮х被
@Entity
public class ModelPlane {
private Long id;
private String name;
@Id
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
鐢熸垚涓婚敭
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
public Long getId() {
return id;
}
瀹氬埗琛ㄥ拰瀛楁鏄犲皠
CREATE TABLE MODELPLANE
(
ID long,
NAME varchar
)
@Entity
@Table(name="T_MODEL_PLANE")
public class ModelPlane {
private Long id;
private String name;
@Id
@Column(name="PLANE_ID")
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
@Column(name="PLANE_NAME")
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
CREATE TABLE T_MODEL_PLANE
(
PLANE_ID long,
PLANE_NAME varchar
)
...
@Column(name="PLANE_ID", length=80, nullable=true)
public String getName() {
return name;
}
...
鏄犲皠鍏崇郴
@ManyToOne( cascade = {CascadeType.PERSIST, CascadeType.MERGE} )
public PlaneType getPlaneType() {
return planeType;
}
@OneToMany(mappedBy="planeType",
cascade=CascadeType.ALL,
fetch=FetchType.EAGER)
@OrderBy("name")
public List
鍛藉悕鏌ヨ
@NamedQueries(
{
@NamedQuery(
name="planeType.findById",
query="select p from PlaneType p left join fetch p.modelPlanes where id=:id"
),
@NamedQuery(
name="planeType.findAll",
query="select p from PlaneType p"
),
@NamedQuery(
name="planeType.delete",
query="delete from PlaneType where id=:id"
)
}
)
緇撴潫璇?/h3>
]]>
school鍜寀serMember鏄竴瀵瑰鍏崇郴錛?br />
SchoolInfo.java
import javax.persistence.CascadeType;
2import javax.persistence.Column;
3import javax.persistence.Entity;
4import javax.persistence.FetchType;
5import javax.persistence.GeneratedValue;
6import javax.persistence.Id;
7import javax.persistence.OneToMany;
8import javax.persistence.Table;
9import javax.persistence.Temporal;
10import javax.persistence.TemporalType;
11
12import org.hibernate.annotations.Formula;
13import org.hibernate.annotations.GenericGenerator;
14
15@Entity
16@Table(name = "school_info")
17public class SchoolInfo implements java.io.Serializable {
18
19 @Id
20 @GeneratedValue(generator = "system-uuid")
21 @GenericGenerator(name = "system-uuid", strategy = "uuid")
22 private String id;//hibernate鐨剈uid鏈哄埗,鐢熸垚32涓哄瓧絎︿覆
23
24 @Column(name = "actcodeId", updatable = false, nullable = true, length = 36)
25 private String actcodeId;
26
27 @Formula("select COUNT(*) from school_info")
28 private int count;
29
30 @Temporal(TemporalType.TIMESTAMP)//涓嶇敤set,hibernate浼氳嚜鍔ㄦ妸褰撳墠鏃墮棿鍐欏叆
31 @Column(updatable = false, length = 20)
32 private Date createTime;
33
34 @Temporal(TemporalType.TIMESTAMP)
35 private Date updateTime;// 鍒氬紑濮嬫垜榛樿insertable=false,浣嗕細璇誨彇鍑洪敊鎻愮ず濡備笅:
36 // Value '0000-00-00' can not be represented as java.sql.Timestamp
37
38 // mappedBy="school"灝辯浉褰撲簬inverse=true,(mappedBy鎸囧畾鐨勬槸涓嶉渶瑕佺淮鎶ゅ叧緋葷殑涓绔?
39 // 搴旇娉ㄦ剰鐨勬槸mappedBy鍊煎搴擛ManyToOne鏍囨敞鐨勫睘鎬?鎴戝垰寮濮嬪啓鎴?schoolId",璁╂垜閮侀椃浜嗗ソ涓浼?nbsp;
40 @OneToMany(mappedBy = "school", cascade = CascadeType.ALL, fetch = FetchType.EAGER, targetEntity = UserMember.class)
41 // 鐢ㄨ寖鎬х殑璇?灝變笉鐢╰argetEntity浜?nbsp;
42 private List<usermember> users = </usermember>new ArrayList<usermember>(); </usermember>
43
44}
45
@GeneratedValue(strategy=GenerationType.AUTO)鎴戜滑甯哥敤鐨勮嚜澧為暱鏈哄埗,鎴戣繖閲岄噰鐢ㄧ殑鏄痟ibernate鐨剈uid鐢熸垚鏈哄埗.
闇瑕佹敞鎰忕殑鏄痠mport javax.xx.Entity 錛岃屼笉鏄痮rg.hibernate.xx.Entity銆?/strong>
閮侀椃鐨勬槸鎴戜笂闈㈢敤鍒癅Formula,鐢熸垚鐨剆ql绔熺劧鏄?select COUNT(*) from school_info as formula0_ from school_info schoolinfo0_,褰撶劧涓嶈兘鎵ц浜?瀵繪眰姝hВ涓瓇!!!!!!!!!
UserMember.java(鍓嶉潰寮曞叆鐨勫寘宸茬粡璐磋繃浜?涓嬮潰灝變笉璐翠簡)
2 @Table(name = "teacher_info")//瀹炰綋綾誨拰鏁版嵁搴撹〃鍚嶄笉涓鑷存椂,鎵嶇敤榪欎釜
3 public class UserMember implements java.io.Serializable {
4
5 @Id
6 @GeneratedValue(generator = "system-uuid")
7 @GenericGenerator(name = "system-uuid", strategy = "uuid")
8 private String id;
9
10 @Column(updatable = false, nullable = false, length = 20)
11 private String logonName;
12
13 @Temporal(TemporalType.TIMESTAMP)
14 @Column(updatable = false, length = 20)
15 private Date createTime;
16
17 @Temporal(TemporalType.TIMESTAMP)
18 private Date updateTime;
19
20 @ManyToOne(cascade = { CascadeType.MERGE })
21 @JoinColumn(name = "schoolId")
22 private SchoolInfo school;
23 //娉ㄦ剰璇ョ被灝變笉鐢ㄥ0鏄巗choolId灞炴т簡,濡傛灉涓嶇敤@JoinColumn鎸囨槑鍏寵仈鐨勫瓧孌?hibernate榛樿浼氭槸school_id.
24
25 }
]]>
]]>
JSON瀹氫箟
JSON(JavaScript Object Notation) 鏄竴縐嶈交閲忕駭鐨勬暟鎹氦鎹㈡牸寮忥紝鏄撲簬闃呰鍜岀紪鍐欙紝鍚屾椂涔熸槗浜庢満鍣ㄨВ鏋愬拰鐢熸垚銆傚畠鍩轟簬ECMA262璇█瑙勮寖錛?999-12絎笁鐗堬級涓璊avaScript緙栫▼璇█鐨勪竴涓瓙闆嗐?JSON閲囩敤涓庣紪紼嬭璦鏃犲叧鐨勬枃鏈牸寮忥紝浣嗘槸涔熶嬌鐢ㄤ簡綾籆璇█錛堝寘鎷珻錛?C++錛?C#錛?Java錛?JavaScript錛?Perl錛?Python絳夛級鐨勪範鎯紝榪欎簺鐗規т嬌JSON鎴愪負鐞嗘兂鐨勬暟鎹氦鎹㈡牸寮忋?
JSON浣跨敤錛?br />
JSON浠ヤ竴縐嶇壒瀹氱殑瀛楃涓插艦寮忔潵琛ㄧず JavaScript 瀵硅薄銆傚鏋滃皢鍏鋒湁榪欐牱涓縐嶅艦寮忕殑瀛楃涓茶祴緇欎換鎰忎竴涓?JavaScript 鍙橀噺錛岄偅涔堣鍙橀噺浼氬彉鎴愪竴涓璞″紩鐢紝鑰岃繖涓璞″氨鏄瓧絎︿覆鎵鏋勫緩鍑烘潵鐨勶紝濂藉儚鏈夌偣鎷楀彛錛屾垜浠繕鏄敤瀹炰緥鏉ヨ鏄庛?
{"UserID":11, "Name":"Truly", "Email":"zhuleipro鈼巋otmail.com"};
<script>
var User = {"UserID":11, "Name":"Truly", "Email":"zhuleipro鈼巋otmail.com"};
alert(User.Name);
</script>{"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro鈼巋otmail.com"}
<script>
var User = {"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro鈼巋otmail.com"};
alert(User.Name.FirstName);
</script>[
{"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro鈼巋otmail.com"},
{"UserID":12, "Name":{"FirstName":"Jeffrey","LastName":"Richter"}, "Email":"xxx鈼巟xx.com"},
{"UserID":13, "Name":{"FirstName":"Scott","LastName":"Gu"}, "Email":"xxx2鈼巟xx2.com"}
]
瀹屾暣浠g爜:
<script>
var UserList = [
{"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro鈼巋otmail.com"},
{"UserID":12, "Name":{"FirstName":"Jeffrey","LastName":"Richter"}, "Email":"xxx鈼巟xx.com"},
{"UserID":13, "Name":{"FirstName":"Scott","LastName":"Gu"}, "Email":"xxx2鈼巟xx2.com"}
];
alert(UserList[0].Name.FirstName);
</script>
alert(UserList[0]["Name"]["FirstName"]); 鎴栬?alert(UserList[0].Name["FirstName"]);
鏈枃閫氳繃涓涓疄渚嬫紨紺猴紝鍒濇浜嗚В浜咼SON 鐨勫己澶х敤閫斻傚彲浠ュ綊緇撳涓嬶細
]]>
tomcat宸茬粡閰嶇疆濂?tomcat鍙互鍒?a >http://jakarta.apache.org/tomcat 涓嬭澆)
寮濮嬪疄鎴樺暒
1.鍑嗗jstl
鍒?a >http://apache.towardex.com/jakarta/taglibs/standard/涓嬭澆jakarta-taglibs-standard-current.zip
瑙e帇鍚庢垚涓簀akarta-taglibs-standard-1.1.1
灝唈akarta-taglibs-standard-1.1.1\lib\涓嬬殑涓や釜jar鏂囦歡錛歴tandard.jar鍜宩stl.jar鏂囦歡鎷瘋礉鍒癨WEB-INF\lib\涓?/p>
灝唈akarta-taglibs-standard-1.1.1\tld\涓嬬殑8涓猼ld綾誨瀷鏂囦歡鎷峰埌"Working folder\WEB-INF\"涓?/p>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<taglib>
<taglib-uri>http://java.sun.com/jstl/fmt</taglib-uri>
<taglib-location>/WEB-INF/fmt.tld</taglib-location>
</taglib>
<taglib-uri>http://java.sun.com/jstl/fmt-rt</taglib-uri>
<taglib-location>/WEB-INF/fmt-rt.tld</taglib-location>
</taglib>
<taglib-uri>http://java.sun.com/jstl/core</taglib-uri>
<taglib-location>/WEB-INF/c.tld</taglib-location>
</taglib>
<taglib-uri>http://java.sun.com/jstl/core-rt</taglib-uri>
<taglib-location>/WEB-INF/c-rt.tld</taglib-location>
</taglib>
<taglib-uri>http://java.sun.com/jstl/sql</taglib-uri>
<taglib-location>/WEB-INF/sql.tld</taglib-location>
</taglib>
<taglib-uri>http://java.sun.com/jstl/sql-rt</taglib-uri>
<taglib-location>/WEB-INF/sql-rt.tld</taglib-location>
</taglib>
<taglib-uri>http://java.sun.com/jstl/x</taglib-uri>
<taglib-location>/WEB-INF/x.tld</taglib-location>
</taglib>
<taglib-uri>http://java.sun.com/jstl/x-rt</taglib-uri>
<taglib-location>/WEB-INF/x-rt.tld</taglib-location>
</taglib>
</web-app>
6.寤虹珛涓涓悕涓簍est.jsp鏂囦歡
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<%@ page contentType="text/html;charset=GB2312" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<head>
<title>嫻嬭瘯浣犵殑絎竴涓嬌鐢ㄥ埌JSTL 鐨勭綉欏?lt;/title>
</head>
<body>
<c:out value="嬈㈣繋嫻嬭瘯浣犵殑絎竴涓嬌鐢ㄥ埌JSTL 鐨勭綉欏?/>
</br>浣犱嬌鐢ㄧ殑嫻忚鍣ㄦ槸錛?lt;/br>
<c:out value="${header['User-Agent']}"/>
<c:set var="a" value="David O'Davies" />
<c:out value="David O'Davies" escapeXml="true"/>
</body>
</html>
浣犱嬌鐢ㄧ殑嫻忚鍣ㄦ槸錛?br />
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) David O'Davies
]]>
鍦ㄥぇ澶氭暟鎯呭喌涓?涓轟簨浠跺鐞嗗嚱鏁拌繑鍥瀎alse,鍙互闃叉榛樿鐨勪簨浠惰涓?渚嬪,榛樿鎯呭喌涓嬬偣鍑諱竴涓?lt;a>鍏冪礌,欏甸潰浼氳煩杞埌璇ュ厓绱爃ref灞炴ф寚瀹氱殑欏?
Return False 灝辯浉褰撲簬緇堟絎︼紝Return True 灝辯浉褰撲簬鎵ц絎︺?/p>
onclick鏃墮棿錛堝鏋滀綘鎸囧畾鐨勮瘽錛変互澶栬繕瑕佽Е鍙戜竴涓粯璁や簨浠跺氨鏄墽琛岄〉闈㈢殑璺寵漿銆傛墍浠ュ鏋?
浣犳兂鍙栨秷瀵硅薄鐨勯粯璁ゅ姩浣滃氨鍙互return false銆俽eturn false搴旂敤姣旇緝澶氱殑鍦哄悎鏈夛細
<form name="form1" onsubmIT="return youfunction();">...... </form>
<a href="www.***.com" onclick="...;return false;">dddd </a> .
function test()
{
alert("test");
return false();
}
</script>
1錛?<a href='a.JSP' onclick='test();'>瓚呯駭閾炬帴 </a>
2錛?<input type="button" onclick='test()' value="鎻愪氦">
3錛?<form name="form1" onsubmIT="return test();">
鍐呭
<input type="submIT" value="鎻愪氦">
</form>
</body>
<iframe id=dolink src=about:blank style=display:none> </iframe>
鐐逛簡涓婇潰鐨勯偅涓繛鎺ュ悗錛宒olink甯ф墽琛岄〉闈㈠鐞嗙殑浜嬫儏錛坸xxx.do錛?..鐒朵紶閫掑弬鏁板埌鏈嶅姟鍣級錛岄〉闈笉浼氳煩杞?nbsp; .
<head>
<script language="javascript">
function verifyForm(){
var ass=document.getElementsByName("assetName");
if(ass[0].value.length==0){
alert("鍚嶇О杈撳叆涓虹┖錛?);
return false;
}
alert("鍚嶇О杈撳叆闀垮害涓嶈兘瓚呰繃15涓瓧絎︼紒");
return false;
}
}
</script>
</head>
<body>
<form name="xx">
<input name="assetName" type="text"/>
<--鏍規嵁return 榪斿洖鍊肩殑TRUE鎴朏ALSE 鍒ゅ畾鏄惁鎻愪氦琛ㄥ崟--->
<input type="submit" onclick="return verifyForm()"/>
</form>
</body>
</html>
涓嬮潰鏄畝鍗曠殑涓灝忔浠g爜錛?/p>
<form action="index.jsp" method="post" onsubmit="submitTest();;">
<INPUT value="www">
<input type="submit" value="submit">
</form>
<SCRIPT LANGUAGE="JavaScript">
<!--
function submitTest(); {
// 涓浜涢昏緫鍒ゆ柇
return false;
}
//-->
</SCRIPT>
<INPUT value="www">
<input type="submit" value="submit">
</form>
<!--
function submitTest(); {
// 涓浜涢昏緫鍒ゆ柇
return false;
}
//-->
</SCRIPT>
澶у鍒ゆ柇鍍忎笂闈㈢殑鍐欐硶錛岀偣鍑籹ubmit鎸夐挳璇ヨ〃鍗曟槸鍚︽彁浜わ紵
<form action="index.jsp" method="post" onsubmit="submitTest();;">
<form action="index.jsp" method="post" onsubmit="return submitTest();;">
onsubmit="
alert('haha');; // 鍐呯疆鍑芥暟
submitTest();; // 鑷畾涔夊嚱鏁?nbsp;
alert(this.tagName);; // 鐢ㄥ埌浜唗his鍏抽敭璇?nbsp;
......(浠繪剰澶氭潯璇彞);
return false;
"
alert('haha');; // 鍐呯疆鍑芥暟
submitTest();; // 鑷畾涔夊嚱鏁?br />
alert(this.tagName);; // 鐢ㄥ埌浜唗his鍏抽敭璇?br />
......(浠繪剰澶氭潯璇彞);
return false;
"
灝辯浉褰撲簬
Form.prototype.onsubmit = function(); {
alert('haha');; // 鍐呯疆鍑芥暟
submitTest();; // 鑷畾涔夊嚱鏁?nbsp;
alert(this.tagName);; // 鐢ㄥ埌浜唗his鍏抽敭璇?nbsp;
......(浠繪剰澶氭潯璇彞);
return false;
};
alert('haha');; // 鍐呯疆鍑芥暟
submitTest();; // 鑷畾涔夊嚱鏁?br />
alert(this.tagName);; // 鐢ㄥ埌浜唗his鍏抽敭璇?br />
......(浠繪剰澶氭潯璇彞);
return false;
};
榪欐牱鐨勮瘽浣犲氨瑕嗗啓浜?override)鍏墮粯璁ゆ柟娉曪紙榛樿榪斿洖true錛?
澶у娉ㄦ剰鍒版柟娉曚綋涓彲浠ョ敤this榪欎釜鍏抽敭璇嶏紝榪欓噷鍗充唬琛ㄤ簡<form>鐨勫璞″疄渚嬨?
<form action="index.jsp" method="post" onsubmit="submitTest();;">
Form.prototype.onsubmit = function(); {
submitTest();;
};
submitTest();;
};
鍦ㄨ繖閲宻ubmitTest()铏界劧榪斿洖false錛屼絾鎴戜滑鍙墽琛屼簡姝ゅ嚱鏁幫紝娌℃湁瀵瑰叾緇撴灉榪涜浠諱綍澶勭悊銆傝?/p>
<form action="index.jsp" method="post" onsubmit="return submitTest();;">
override鏂規硶鐨勬晥鏋滀負錛?/p>
Form.prototype.onsubmit = function(); {
return submitTest();;
};
return submitTest();;
};
榪欐牱錛屾垜浠埄鐢ㄥ埌浜嗗畠鐨勮繑鍥炲鹼紝杈懼埌浜嗛鏈熸晥鏋溿?
榪欐牱鐞嗚В鐨勮瘽鎴戞兂鍗拌薄浼氭繁鍒誨緱澶氾紝灝變笉鏄撳嚭閿欎簡
鎴戜滑鍙互鐢↗ava閲岀殑鎬濈淮鏂瑰紡鏉ユ濊冩ā鎷烰avaScript涓殑綾諱技鎯呭喌錛圝avaScript涓熀浜巔rototype鐨勯潰鍚戝璞℃妧鏈篃紜疄鏄繖鏍峰仛鐨勶級錛屼絾浠栦滑姣曠珶榪樻槸鏈夋湰璐ㄤ笂鐨勫尯鍒紝濡侸ava鏄己綾誨瀷鐨勶紝鏈変弗鏍肩殑璇硶闄愬埗錛岃孞avaScript鏄澗鏁e瀷鐨勩傝薄涓婅堪鏂規硶錛?/p>
Form.prototype.onsubmit = function(); {
};
};
鏃㈠彲浠ユ湁榪斿洖鍊鹼紝鍙堝彲浠ユ病鏈夎繑鍥炲鹼紝鍦↗ava閲屾槸閫氫笉榪囩殑錛屾瘯绔烰ava閲岄潰涓嶈兘闈犳柟娉曠殑榪斿洖鍊間笉鍚屾潵閲嶈澆(overload)鏂規硶錛岃孞avaScript涓殑閲嶈澆瑕佹澗鏁e緱澶氥?
]]>
request.getParameter鐢ㄧ殑姣旇緝澶氾紝鐩稿鐔熸倝
request.getParameterValues(String name)鏄幏寰楀checkbox綾伙紙鍚嶅瓧鐩稿悓錛屼絾鍊兼湁澶氫釜錛夌殑鏁版嵁銆?nbsp; 鎺ユ敹鏁扮粍鍙橀噺 錛屽checkobx綾誨瀷
request.getParameter錛圫tring name錛夋槸鑾峰緱鐩稿簲鍚嶇殑鏁版嵁錛屽鏋滄湁閲嶅鐨勫悕錛屽垯榪斿洖絎竴涓殑鍊?. 鎺ユ敹涓鑸彉閲?錛屽text綾誨瀷
渚嬶細
1. 涓変釜鍚嶅瓧鐩稿悓鐨則ext鏍囩
<input type="text" name="test" value="1" />
<input type="text" name="test" value="2" />
<input type="text" name="test" value="3" />
request.getParameterValues("test") ----------------- [1, 2, 3]
request.getParameter("test") ------------------ 1
${paramValues.test}
${param.test}
2. checkbox
<input type="checkbox" name="habit" value="read">鐪嬩功
<input type="checkbox" name="habit" value="movie">鐢靛獎
<input type="checkbox" name="habit" value="game">娓告垙
request.getParameterValues("habit")
浜屻佷笌姝ょ浉鍏崇殑璇濋------闅愬惈瀵硅薄
1. JSP闅愬惈瀵硅薄(Implicit Object)
鎵璋撻殣鍚璞★紝鏄寚褰撶紪鍐檍sp緗戦〉鏃訛紝涓嶅繀鍋氫換浣曞0鏄庡氨鍙互鐩存帴浣跨敤鐨勫璞°?JSP2.0瀹氫箟浜嗕節涓殣鍚璞?/p>
request response pageContext session application out conifg page exception
榪欓噷鍙彁涓涓媟equest 鍜?response 涓や釜瀵硅薄
request 瀵硅薄琛ㄧず瀹㈡埛绔姹傜殑鍐呭錛屾瘮濡傛垜浠粠request涓彇寰椾簡鐢ㄦ埛杈撳叆鐨勫唴瀹癸紝瀹炵幇浜唈avax.servlet.http.HttpServletRequest鎺ュ彛
response瀵硅薄琛ㄧず鍝嶅簲瀹㈡埛绔殑緇撴灉銆?/p>
涓婇潰鎴戜滑浣跨敤浜唕equest鐨勪袱涓柟娉昰etParameter 鍜?getParameterValues錛屽叾瀹瀝equest榪樻湁鍏朵粬鍑犱釜姣旇緝閲嶈鐨勬柟娉曪紝榪欓噷鍙秹鍙婂嚑涓幏鍙栬姹傚弬鏁扮殑鏂規硶
String getParameter(String name) 鍙栧緱name鐨勫弬鏁板?/p>
String[] getParameterValues(String name) 鍙栧緱鎵鏈塶ame鐨勫弬鏁板?/p>
Enumeration getParameterNames() 鍙栧緱鎵鏈夌殑鍙傛暟鍚嶇О
Map<String, String[]> getParameterMap() 鍙栧緱request鐨勬墍鏈夊弬鏁扮殑涓涓槧灝?/p>
//
Returns a java.util.Map of the parameters of this request. Request parameters are extra information sent with the request. For HTTP servlets, parameters are contained in the query string or posted form data.
Returns:
an immutable java.util.Map containing parameter names as keys and parameter values as map values. The keys in the parameter map are of type String. The values in the parameter map are of type String array.
//
response絳夊叾浠栧嚑涓殣鍚璞′篃鏈夐潪甯擱噸瑕佺殑韜喚錛屾湁鏈轟細涓撻棬鏁寸悊涓涓嬶紝瀹f壃涓涓嬪畠浠殑鏄捐但鍦頒綅銆?/p>
2. EL闅愬惈瀵硅薄
EL鍗矱xperssion Language錛岃嚜JSP2.0鍚庢寮忔垚涓篔SP鐨勬爣鍑嗚鑼冧箣涓錛屾敮鎸丼ervlet2.4/JSP2.0鐨凜ontainer涔熷氨鐩稿簲鐨勬敮鎸丒L璇硶銆?
涓涓父瑙佺殑褰㈠紡濡傦紝<c:out value="${ 3 + 7 * 4}" />
EL鐨勯殣钘忓璞℃湁11涓?PageContext PageScope RequestScope sessionScope applicationScope
param paramValues header headerValues cookie initParam
鍏朵腑param 鍜?paramValues鍗沖鐩稿簲ServletRequest.getParameter(String name)鍜孲ervletRequest.getParameterValues(String name)
杞澆錛?a >http://blog.csdn.net/moreorless/archive/2009/05/18/4199677.aspx
1. Boolean(value):鎶婂艱漿鎹㈡垚Boolean綾誨瀷錛?/p>
2. Nnumber(value):鎶婂艱漿鎹㈡垚鏁板瓧錛堟暣鍨嬫垨嫻偣鏁幫級錛?/p>
3. String(value):鎶婂艱漿鎹㈡垚瀛楃涓層?/p>
鎴戜滑鍏堟潵鐪婤oolean()錛氬湪瑕佽漿鎹㈢殑鍊間負“鑷沖皯鏈変竴瀛楃鐨勫瓧絎︿覆”銆?#8220;闈?鐨勬暟瀛?#8221;鎴?#8220;瀵硅薄”錛岄偅涔圔oolean()灝嗚繑鍥瀟rue錛屽鏋滆杞崲鐨勫間負“絀哄瓧絎︿覆”銆?#8220;鏁板瓧0”銆?#8220;undefined”錛?#8220;null”榪欎簺璇濓紝閭d箞Boolean()浼氳繑鍥瀎alse銆備綘鍙互鐢ㄤ互涓嬩唬鐮佹潵嫻嬭瘯
var銆t1銆=銆Boolean("");//榪斿洖false,絀哄瓧絎︿覆
var銆t2銆=銆Boolean("s");//榪斿洖true錛岄潪絀哄瓧絎︿覆
var銆t3銆=銆Boolean(0);//榪斿洖false錛屾暟瀛?
var銆t3銆=銆Boolean(1),t4銆=銆Boolean(-1);//榪斿洖true錛岄潪0鏁板瓧
var銆t5銆=銆Boolean(null),t6銆=銆Boolean(undefined);//榪斿洖false
var銆t7銆=銆Boolean(new銆Object());//榪斿洖true錛屽璞?/p>
鍐嶆潵鐪嬬湅Number()錛歂umber()涓巔arseInt()鍜宲arseFloat()綾諱技錛屽畠浠尯鍒湪浜嶯umber()杞崲鏄暣涓鹼紝鑰宲arseInt()鍜宲arseFloat()鍒欏彲浠ュ彧杞崲寮澶寸殑鏁板瓧閮ㄥ垎錛屼緥濡傦細Number("1.2.3"),Number("123abc")浼氳繑鍥濶aN錛岃宲arseInt("1.2.3")榪斿洖1銆乸arseInt("123abc")榪斿洖123銆乸arseFloat("1.2.3")榪斿洖1.2銆乸arseFloat("123abc")榪斿洖123銆侼umber()浼氬厛鍒ゆ柇瑕佽漿鎹㈢殑鍊艱兘鍚﹁瀹屾暣鐨勮漿鎹紝鐒跺悗鍐嶅垽鏂槸璋冪敤parseInt()鎴杙arseFloat()銆備笅闈㈠垪浜嗕竴浜涘艱皟鐢∟umber()涔嬪悗鐨勭粨鏋滐細
Number(false)銆 0
Number(true)銆 1
Number(undefined)銆 NaN
Number(null)銆 0
Number("1.2")銆 1.2
Number("12")銆 12
Number("1.2.3")銆 NaN
Number(new Object())銆 NaN
Number(123)銆 123
鏈鍚庢槸String()錛氳繖涓互姣旇緝綆鍗曚簡錛屽畠鍙互鎶婃墍鏈夌被鍨嬬殑鏁版嵁杞崲鎴愬瓧絎︿覆錛屽錛歋tring(false)---"false"銆丼tring(1)---"1"銆傚畠鍜宼oString()鏂規硶鏈変簺涓嶅悓錛屽尯鍒湪浜庯細
var銆t1銆=銆null;
var銆t2銆=銆String(t1);//t2鐨勫箋"null"
var銆t3銆=銆t1.toString();//榪欓噷浼氭姤閿?br />
var銆t4;
var銆t5銆=銆String(t4);//t5鐨勫箋"undefined"
var銆t6銆=銆t4.toString();//榪欓噷浼氭姤閿?/p>