<%@ page contentType="text/html; charset=gb2312"%> ΪʲôҪʼÖÕʹÓÃPreparedStatement´úÌæStatement?
ÍøÕ¾¹«¸æ£º   ¡ô±±ÌìJAVA¼¼ÊõÍøÈÈÇéΪjava°®ºÃÕß·þÎñ£¬±¾ÍøÄÚÈݰüÀ¨JAVA(JSP¡¢servlet¡¢EJB¡¢webservice¡¢j2ee¡¢javabean¡¢Ó¦Ó÷þÎñÆ÷¡¢JavaScript),Êý¾Ý¿â(MYSQL¡¢SQL Server¡¢Sybase¡¢Oracle¡¢DB2¡¢Êý¾Ý¿â×ÛºÏ֪ʶ),Éè¼ÆÑо¿(Éè¼ÆÄ£Ê½¡¢Struts¡¢Spring¡¢Hibernate¡¢Éè¼Æ¿ò¼Ü¡¢Éè¼Æ×ÛºÏ֪ʶ),WEB2.0м¼Êõ(Ö÷Òª½éÉÜAJAX),ÒÔ¼°¸÷ÖÖ¼¼ÊõµÄÈëÃÅ¡¢ÊµÀý¡¢Àý×ӵȵÈ,»¶Ó­¸÷λ¶àÀ´×ø×ø£¡¡ô  ³ÏÑû¸÷λJAVA°®ºÃÕß¼ÓÃË£¡¡ô  ±¾ÍøÕ¾ÄÚÈݷḻ£¬¸üп죬±£Ö¤Ã¿ÖÜ20ƪÒÔÉÏ£¡  
¼ÓÈëÊÕ²Ø
ÉèΪÊ×Ò³
ÁªÏµÕ¾³¤
³Ð½ÓÏîÄ¿
  Ïà¹Ø×ÊÔ´£ºÍøÕ¾Ê×Ò³ | Ãâ·ÑÅàѵѧԺ | ¼¼ÊõÂÛ̳ | JAVAÁÄÌìÊÒ | ×÷¼ÒרÀ¸ | ¿ª·¢¹¤¾ß | ÈÏÖ¤¿¼ÊÔ | »áÔ±¾ãÀÖ²¿
  JAVA¼¼Êõ£º³õѧÕßÔ°µØ | jspÓëservlet | javascript | JavaÔ´´úÂë | EJB | web service | Ó¦Ó÷þÎñÆ÷ | JAVA×ÛºÏ֪ʶ
  Éè¼ÆÑо¿£ºÉè¼ÆÄ£Ê½ | Éè¼Æ¿ò¼Ü | Struts | Spring | Hibernate | ¿ªÔ´ÏîÄ¿ | ÃæÏò¶ÔÏóÉè¼Æ | Éè¼Æ×ÛºÏ֪ʶ
  Êý ¾Ý ¿â£ºMYSQL | SQL Server | Sybase | Oracle | DB2 | Informix | Access | Êý¾Ý¿â×ÛºÏ֪ʶ
  ÆäËû×ÊÔ´£ºAJAXм¼Êõ | ÍøÕ¾¿ª·¢ | ERPÈí¼þ | OA°ì¹«Èí¼þ | ÉÌÒµÖÇÄÜBI | ¿ª·¢×ÛºÏ֪ʶ | ³Ð½ÓÏîÄ¿ | ÏîÄ¿ÊÔÓÃ

 
 
ΪʲôҪʼÖÕʹÓÃPreparedStatement´úÌæStatement?
     ·¢²¼Õߣº¹ùÀ¤ ·¢²¼Ê±¼ä£º2006-07-30
ΪʲôҪʼÖÕʹÓÃPreparedStatement´úÌæStatement?
ÔÚJDBCÓ¦ÓÃÖÐ,Èç¹ûÄãÒѾ­ÊÇÉÔÓÐˮƽ¿ª·¢Õß,Äã¾ÍÓ¦¸ÃʼÖÕÒÔPreparedStatement´úÌæStatement.Ò²¾ÍÊÇ˵,ÔÚÈκÎʱºò¶¼²»ÒªÊ¹ÓÃStatement.
»ùÓÚÒÔϵÄÔ­Òò:
Ò».´úÂëµÄ¿É¶ÁÐԺͿÉά»¤ÐÔ.
ËäÈ»ÓÃPreparedStatementÀ´´úÌæStatement»áʹ´úÂë¶à³ö¼¸ÐÐ,µ«ÕâÑùµÄ´úÂëÎÞÂ۴ӿɶÁÐÔ»¹ÊÇ¿Éά»¤ÐÔÉÏÀ´Ëµ.¶¼±ÈÖ±½ÓÓÃStatementµÄ´úÂë¸ßºÜ¶àµµ´Î:

stmt.executeUpdate("insert into tb_name (col1,col2,col2,col4) values ('"+var1+"','"+var2+"',"+var3+",'"+var4+"')");

perstmt = con.prepareStatement("insert into tb_name (col1,col2,col2,col4) values (?,?,?,?)");
perstmt.setString(1,var1);
perstmt.setString(2,var2);
perstmt.setString(3,var3);
perstmt.setString(4,var4);
perstmt.executeUpdate();

²»ÓÃÎÒ¶à˵,¶ÔÓÚµÚÒ»ÖÖ·½·¨.±ð˵ÆäËûÈËÈ¥¶ÁÄãµÄ´úÂë,¾ÍÊÇÄã×Ô¼º¹ýÒ»¶Îʱ¼äÔÙÈ¥¶Á,¶¼»á¾õµÃÉËÐÄ.

¶þ.PreparedStatement¾¡×î´ó¿ÉÄÜÌá¸ßÐÔÄÜ.
ÿһÖÖÊý¾Ý¿â¶¼»á¾¡×î´óŬÁ¦¶ÔÔ¤±àÒëÓï¾äÌṩ×î´óµÄÐÔÄÜÓÅ»¯.ÒòΪԤ±àÒëÓï¾äÓпÉÄܱ»Öظ´µ÷ÓÃ.ËùÒÔÓï¾äÔÚ±»DBµÄ±àÒëÆ÷±àÒëºóµÄÖ´ÐдúÂë±»»º´æÏÂÀ´,ÄÇôÏ´ε÷ÓÃʱֻҪÊÇÏàͬµÄÔ¤±àÒëÓï¾ä¾Í²»ÐèÒª±àÒë,Ö»Òª½«²ÎÊýÖ±½Ó´«Èë±àÒë¹ýµÄÓï¾äÖ´ÐдúÂëÖÐ(Ï൱ÓÚÒ»¸öº­Êý)¾Í»áµÃµ½Ö´ÐÐ.Õâ²¢²»ÊÇ˵ֻÓÐÒ»¸öConnectionÖжà´ÎÖ´ÐеÄÔ¤±àÒëÓï¾ä±»»º´æ,¶øÊǶÔÓÚÕû¸öDBÖÐ,Ö»ÒªÔ¤±àÒëµÄÓï¾äÓï·¨ºÍ»º´æÖÐÆ¥Åä.ÄÇôÔÚÈκÎʱºò¾Í¿ÉÒÔ²»ÐèÒªÔٴαàÒë¶ø¿ÉÒÔÖ±½ÓÖ´ÐÐ.¶østatementµÄÓï¾äÖÐ,¼´Ê¹ÊÇÏàͬһ²Ù×÷,¶øÓÉÓÚÿ´Î²Ù×÷µÄÊý¾Ý²»Í¬ËùÒÔʹÕû¸öÓï¾äÏàÆ¥ÅäµÄ»ú»á¼«Ð¡,¼¸ºõ²»Ì«¿ÉÄÜÆ¥Åä.±ÈÈç:
insert into tb_name (col1,col2) values ('11','22');
insert into tb_name (col1,col2) values ('11','23');
¼´Ê¹ÊÇÏàͬ²Ù×÷µ«ÒòΪÊý¾ÝÄÚÈݲ»Ò»Ñù,ËùÒÔÕû¸ö¸öÓï¾ä±¾Éí²»ÄÜÆ¥Åä,ûÓлº´æÓï¾äµÄÒâÒå.ÊÂʵÊÇûÓÐÊý¾Ý¿â»á¶ÔÆÕͨÓï¾ä±àÒëºóµÄÖ´ÐдúÂ뻺´æ.ÕâÑùÿִÐÐÒ»´Î¶¼Òª¶Ô´«ÈëµÄÓï¾ä±àÒëÒ»´Î.

µ±È»²¢²»ÊÇËùÒÔÔ¤±àÒëÓï¾ä¶¼Ò»¶¨»á±»»º´æ,Êý¾Ý¿â±¾Éí»áÓÃÒ»ÖÖ²ßÂÔ,±ÈÈçʹÓÃÆµ¶ÈµÈÒòËØÀ´¾ö¶¨Ê²Ã´Ê±ºò²»ÔÙ»º´æÒÑÓеÄÔ¤±àÒë½á¹û.ÒÔ±£´æÓиü¶àµÄ¿Õ¼ä´æ´¢ÐµÄÔ¤±àÒëÓï¾ä.

Èý.×îÖØÒªµÄÒ»µãÊǼ«´óµØÌá¸ßÁ˰²È«ÐÔ.

¼´Ê¹µ½Ä¿Ç°ÎªÖ¹,ÈÔÓÐһЩÈËÁ¬»ù±¾µÄ¶ñÒåSQLÓï·¨¶¼²»ÖªµÀ.
String sql = "select * from tb_name where name= '"+varname+"' and passwd='"+varpasswd+"'";
Èç¹ûÎÒÃǰÑ[' or '1' = '1]×÷Ϊvarpasswd´«Èë½øÀ´.Óû§ÃûËæÒâ,¿´¿´»á³ÉΪʲô?

select * from tb_name = 'ËæÒâ' and passwd = '' or '1' = '1';
ÒòΪ'1'='1'¿Ï¶¨³ÉÁ¢,ËùÒÔ¿ÉÒÔÈκÎͨ¹ýÑéÖ¤.¸üÓÐÉõÕß:
°Ñ[';drop table tb_name;]×÷Ϊvarpasswd´«Èë½øÀ´,Ôò:
select * from tb_name = 'ËæÒâ' and passwd = '';drop table tb_name;ÓÐЩÊý¾Ý¿âÊDz»»áÈÃÄã³É¹¦µÄ,µ«Ò²ÓкܶàÊý¾Ý¿â¾Í¿ÉÒÔʹÕâЩÓï¾äµÃµ½Ö´ÐÐ.

¶øÈç¹ûÄãʹÓÃÔ¤±àÒëÓï¾ä.Äã´«ÈëµÄÈκÎÄÚÈݾͲ»»áºÍÔ­À´µÄÓï¾ä·¢ÉúÈÎºÎÆ¥ÅäµÄ¹ØÏµ.(ǰÌáÊÇÊý¾Ý¿â±¾ÉíÖ§³ÖÔ¤±àÒë,µ«ÉÏǰ¿ÉÄÜûÓÐʲô·þÎñ¶ËÊý¾Ý¿â²»Ö§³Ö±àÒëÁË,Ö»ÓÐÉÙÊýµÄ×ÀÃæÊý¾Ý¿â,¾ÍÊÇÖ±½ÓÎļþ·ÃÎʵÄÄÇЩ)ֻҪȫʹÓÃÔ¤±àÒëÓï¾ä,Äã¾ÍÓò»×ŶԴ«ÈëµÄÊý¾Ý×öÈκιýÂÇ.¶øÈç¹ûʹÓÃÆÕͨµÄstatement,ÓпÉÄÜÒª¶Ôdrop,;µÈ×ö·Ñ¾¡ÐÄ»úµÄÅжϺ͹ýÂÇ.

ÉÏÃæµÄ¼¸¸öÔ­Òò,»¹²»×ãÈÃÄãÔÚÈκÎʱºò¶¼Ê¹ÓÃPreparedStatementÂð?
(×ªÔØÎÄÕÂÇë±£Áô³ö´¦£º±±ÌìJAVA¼¼ÊõÍø(www.java114.com))
 
¸ü¶à¾«²ÊÎÄÕÂ:
Jsp + JavaBeanÑ­Ðò½¥½ø½Ì³Ì(Ò»)
Jrun ¿ìËÙ¶¨Î»±àÒëʱÆÚ´íÎóλÖÃ
JSP Insider 5: ÔÚJSPÖÐʹÓÃJavaMail---3
JSP Insider 5: ÔÚJSPÖÐʹÓÃJavaMail---4
JSP Insider 5: ÔÚJSPÖÐʹÓÃJavaMail---2
JSP Insider 5: ÔÚJSPÖÐʹÓÃJavaMail--1
 
×î½üÆÀÂÛ:
        
ÄãÔøÇÄÇĵÄÀ´¹ý£¡
wow gold,wow gold,wow gold,ffxi gil max(975)
        
ÄãÔøÇÄÇĵÄÀ´¹ý£¡
wow gold,wow gold,wow gold,ffxi gil max(6924)
        
±ù·âµÄÍùÊ£¡
wow power leveling,wow gold,WoW Gold,wow gold max(2712)
        
·ÉÎèµÄ´«Ææ£¡
´«ÊÀ˽·þ,´«ÊÀ˽·þ.´«ÆæÊÀ½ç˽·þ´«ÆæÊÀ½ç˽·þ,´«ÊÀ˽·þ´«ÊÀ˽·þ, ´«ÆæÊÀ½ç˽·þ´«ÆæÊÀ½ç˽·þ.´«ÆæË½·þ´«ÆæË½·þ. max(8008)
        
·ÉÎèµÄ´«Ææ£¡
´«ÊÀ˽·þ,´«ÊÀ˽·þ.´«ÆæÊÀ½ç˽·þ´«ÆæÊÀ½ç˽·þ,´«ÊÀ˽·þ´«ÊÀ˽·þ, ´«ÆæÊÀ½ç˽·þ´«ÆæÊÀ½ç˽·þ.´«ÆæË½·þ´«ÆæË½·þ. max(4884)
        
·ÉÎèµÄ´«Ææ£¡
´«ÊÀ˽·þ,´«ÊÀ˽·þ.´«ÆæÊÀ½ç˽·þ´«ÆæÊÀ½ç˽·þ,´«ÊÀ˽·þ´«ÊÀ˽·þ, ´«ÆæÊÀ½ç˽·þ´«ÆæÊÀ½ç˽·þ.´«ÆæË½·þ´«ÆæË½·þ. max(2930)
        
·ÉÎèµÄ´«Ææ£¡
´«ÊÀ˽·þ,´«ÊÀ˽·þ.´«ÆæÊÀ½ç˽·þ´«ÆæÊÀ½ç˽·þ,´«ÊÀ˽·þ´«ÊÀ˽·þ, ´«ÆæÊÀ½ç˽·þ´«ÆæÊÀ½ç˽·þ.´«ÆæË½·þ´«ÆæË½·þ. max(5484)
        
±ê¡¡Ìâ:   
ÄÚ¡¡ÈÝ:   
 
                                  
 
ÃâÔðÉùÃ÷:¸ÃÎÄÕÂÓÉÍøÓÑ·¢±í,Èç¹û¶ÔÄúÔì³ÉÇÖȨ,ÇëÁªÏµÕ¾³¤¡£

Ê×Ò³ - ³Ð½ÓÏîÄ¿ - ÍøÕ¾µØÍ¼ - ÁªÏµÎÒÃÇ -
°æÈ¨ËùÓб±ÌìJAVA¼¼Êõ¹¤×÷ÊÒ ICPÖ¤ºÅ:ÔÁICP±¸06079815ºÅ