Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
ÖÚÀïѰËûǧ°Ù¶È-- ÇáÁ¿¼¶³Ö¾Ã»¯¿ò¼Ü
 
×÷ÕߣºMarksinoberg À´Ô´£º²©¿Í ·¢²¼ÓÚ 2016-11-28
  3948  次浏览      30
 

ÆðÁËÒ»¸ö±È½ÏÎÄÒյıêÌ⣬µ«ÊÇÈÔÈ»¸Ð¾õ²»ÄÜ ±í´ï³ö½ÓÏÂÀ´Õâ¸ö¹¤¾ßµÄÎÄÑÅ¡£ ËäÈ»Õâ¸ö¿âÊÇǰ¼¸¸öÔÂдµÄÁË£¬µ«ÊǾ­¹ýÁ˽üÆÚСÏîÄ¿µÄ¿¼Ñ飬Óú·¢¾õµÃÕâ¿îÇáÁ¿¼¶µÄ¿âÓ¦¸Ã±»¸ü¶àµÄ¿ª·¢ÕßËùÖªÏþ£¬ÓÚÊÇ¡°³ô²»ÒªÁ³¡±µØÐ´ÁËÕâÆª½éÉÜÐÔµÄÎÄÕ¡£

³õÖÔ

¶ÔÓÚÈçÈÕÖÐÌìµÄ±à³ÌÓïÑÔÀÏ´ó¸çJava¶øÑÔ£¬ÆäÓµõ»ÕßÊýÄ¿¶¨È»²»ÉÙ¡£

´¿JDBC

»ù±¾É϶øÑÔ£¬µ½´ïÒ»¶¨µÄ½×¶ÎÖ®ºó£¬¾ÍÒ»¶¨»á½Ó´¥µ½Êý¾Ý¿âÁË¡£Ò»¿ªÊ¼Ð´´¿ÕýµÄJDBCµÄʱºò£¬²»ÖªµÀ±ðÈËÊÇÔõôÏëµÄ£¬µ«ÊǶÔÎÒ¸öÈ˶øÑÔ£¬¼òÖ±ÊÇ Èç×øÕëÕ±¡£

ÏȲ»ÂÛʹÓÃStatement»¹ÊÇʹÓÃPreparedStatementÀ´Æ´´ÕSQLÓï¾ä£¬µ¥µ¥ÊÇ´¦ÀíResultSet¾ÍÊǸö²»ÕÛ²»¿ÛµÄ·³ÐÄÊ¡£

³Ö¾Ã»¯¿ò¼Ü

ÆäʵÕâ²¢²»ÊÇÌØÀý£¬´ó²¿·ÖÈ˶¼»áÓÐÕâô¸ö¸ÐÊÜ¡£²»È»hibernateµÈÕâЩ³Ö¾Ã»¯¿ò¼ÜÒ²²»»áµ®ÉúÁ˲»ÊÇ¡£µ«ÕâÒ²´øÀ´ÁËһЩ±×¶Ë¡£

1.Ê×ÏȶÔÓÚÐÂÊÖ¶øÑÔ£¬Ê¹ÓÃÕâЩ¿ò¼ÜÐèÒªÒ»¶¨µÄѧϰ³É±¾£¬Ñ§Ï°ÇúÏß²»¹»Æ½»º£¬Õâ¾ÍÓпÉÄÜÄ¥ÃðÆäѧϰµÄÐËȤ¡£

2.Æä´Î£¬¶ÔÓÚСÏîÄ¿¶øÑÔ£¬¶¯ÓÃÖØÁ¿¼¶µÄ¿ò¼Ü£¬¾ÍÏԵá°´ó²ÄСÓá±ÁË¡£ËäÈ»Õâ²¢²»ÊÇ˵²¿¿ÉÒÔ£¬È´ÏÔµÃÓе㲻ºÏʱÒË¡£

ÇáÁ¿¼¶³Ö¾Ã»¯¿ò¼Ü

ÏàÐÅ´ó¼Ò¶¼Á˽âApacheµÄdbutils°É¡£´ó´óµØ¼ò»¯ÁËJDBCµÄ´¦Àí£¬·â×°ÁËºÜ¶à±ØÐëµÄ²Ù×÷¡£µ«ÊÇÎÒ¸öÈËÈÏΪËü²¢²»ÄܳÆÖ®ÎªÒ»¸ö¿ò¼Ü¡£ ³äÆäÁ¿ÊÇÒ»¸öJDBCµÄWrap°æ£¬Ò²¾ÍÊǶÔJDBC½øÐÐÁ˼òµ¥µÄ·â×°µÄÒ»¸ö¹¤¾ß¡£

ÓÚÊÇ£¬ÔÚÑо¿ÁËÆä¹¤×÷Ô­ÀíÖ®ºó£¬½áºÏApacheµÄÁíÒ»¸öBeanUtils¿â£¬ÎÒÖÆ×÷ÁËÒ»¸ö±È½ÏÇáÁ¿¼¶µÄÊý¾Ý¿â³Ö¾Ã»¯¿ò¼Ü¡££¨¹ÃÇÒ³ÆÖ®Îª¿ò¼Ü°É£¬(^__^) ÎûÎû¡­¡­£©

Éè¼ÆË¼Â·

ÒÔÎÒ¸öÈË£¬²»³¤µÄ¿ª·¢¾­ÑéÀ´¿´¡£¡°¹ýÓ̲»¼°£¬¹ýÂúÔò¿÷¡±¡£ËùÒÔ¶ÔÓÚ¿ò¼ÜµÄÉè¼ÆÔ­ÔòÒ²Ó¦¸ÃÈç´Ë¡£

²»ÄÜʲô¶¼×ö£¬ÒªÊÊʱµÄ½«È¨ÏÞ·Å¿ª£¬Ôö¼ÓÍØÕ¹¡£ ×Ðϸ˼¿¼ÁË£¬µ½µ×ÒªÄÃËüÀ´×öʲô£¿ ÈçºÎÌí¼ÓÍØÕ¹£¿ÕâЩÎÊÌâÖ®ºó£¬ÎҾͿªÊ¼×ÅÊÖ±àÂëÁË¡£

ÆÚ¼äÔËÓÃÁË õ¿½ÅµÄ·ºÐͺͷ´Éä²Ù×÷£¬×Ô¶¯»¯µÄ½âÆÊBean£¬À´½â¾öÓëÊý¾Ý¿âÖ®¼äµÄ³Ö¾Ã»¯ºÍ·´ÐòÁл¯´¦ÀíµÈµÈ¡£

´óÌåµÄ¡°¼Ü¹¹¡± ¿ÉÓÃÏÂͼ±íʾ£º

¼Ü¹¹Í¼

ÔõôʹÓã¿

½éÉܵ½ÈçºÎʹÓã¬ÎÒ¾õµÃ»¹ÊÇÒÔʵ¼ÊµÄʹÓð¸ÀýÀ´½éÉܱȽϺã¬ÕâÑù¸üÓÐ˵·þÁ¦¡£

ÒÀÀµ

ÒòΪÕâ¸ö¿ò¼ÜÒÀÀµÓÚapacheµÄһЩjar£¬ËùÒÔÎÒÃÇÐèÒª½«ÏÂÁÐÒÀÀµÌí¼Óµ½×Ô¼ºµÄÏîÄ¿ÖС££¨ÎÒ¸öÈ˽¨ÒéÔÚÏîÄ¿ÖÐн¨Ò»¸ölib°üÀ´·ÅÖÃjarÎļþ£©

Êý¾Ý¿âÅäÖÃ

ÒòΪJDBCÊÇ¿çÊý¾Ý¿âµÄ£¬ËùÒÔÎÒÃÇÖ»ÒªÌṩÕë¶Ô²»Í¬µÄÊý¾Ý¿â³§É̵Äjar£¬ÄÇôÕâ¸ö¿ò¼ÜÒ²¿ÉÒÔ¿çÊý¾Ý¿â¡£

ÈçÉÏͼ¿ÉÒÔ¿´µ½ srcĿ¼ÏÂÓÐÒ»¸ödb.cfg.xmlµÄÎļþ¡£ÕâÀïÃæ¾Í·ÅÖÃÁË֮ǰҪÊÖ¶¯´¦ÀíµÄÊý¾Ý¿âÅäÖÃÐÅÏ¢ÁË¡£±Èºù«»­Æ°£¬°´ÕÕÏÂÃæµÄ´úÂëÅäÖÃ×Ô¼ºµÄ»·¾³¼´¿É¡£

<?xml version="1.0" encoding="UTF-8" ?>
<project>
<database name="mysql">
<driver>com.mysql.jdbc.Driver</driver>
<url>jdbc:mysql://localhost:3306/mydb</url>
<user>root</user>
<password>mysql</password>
</database>

</project>

»ù±¾ÉÏÀ´Ëµ£¬´ó¼Ò¶¼»áÓÐרÃŵÄBaseDAOÀ࣬ÄÇôÔÚÕâ¸öÀàÀïÃæ½øÐÐÊý¾Ý¿âÅäÖõÄ×¢²áʼþÊÇ×îºÏÊʲ»¹ýÁË¡£

import dbhelper.DbHelper;

/**
* @author ¹ù è±
*
*/
public class BaseDAO {

/**
* ʹÓþ²Ì¬´úÂë¿éµÄ·½Ê½£¬ÔÚ³ÌÐòµÄDAO²ãÔËÐÐ֮ǰ¾Í×¢²áºÃ DbHelper £¬×öºÃ¶ÔÊý¾ÝÔ´µÄ×¢²á
*/
static {
try {
DbHelper.register();
} catch (Exception e) {
throw new RuntimeException(e + "\n Êý¾ÝԴδע²á³É¹¦");
}
}

}

ÕâÑù£¬ÆäËûµÄDAOÖ»ÐèÒª¼Ì³ÐÕâ¸öÀà¾Í¿ÉÒÔÁË£¬ÎÒÃǾͲ»ÓùØÐÄÊý¾ÝÔ´µÄÎÊÌâÁË£¬µ×²ã¿ò¼Ü»á×Ô¶¯µÄ°ïÎÒÃǸ㶨¡£

ÕýʽʹÓÃ

ÓÐÒ»µãÐèҪǿµ÷µÄÊÇ£¬Êý¾Ý¿âÖеÄ×Ö¶ÎÒªºÍJava BeanÖеÄÊôÐÔÃû±£³Ö¸ß¶ÈµÄÒ»Ö£¬·ñÔò¿ò¼Ü²»ÄÜÕýÈ·µÄÕÒµ½ÆäÁ¥ÊôµÄ×Ö¶ÎÐÅÏ¢¡£±Ï¾¹¿ò¼Ü²»ÊÇÍòÄܵÄÂï¡£

Êý¾Ý¿â±í½á¹¹

Êý¾Ý¿â±í×Ö¶Î

Java Bean½á¹¹

JavaBean×Ö¶Î

ÈçͼËùʾ£¬ °´ÕÕÕâÑùÀ´Éè¼Æ¾Í¿ÉÒÔÁË¡£

´ÓÊý¾Ý¿â»ñȡһÌõ¼Ç¼£¬²¢×ªÎª¶ÔÏó

 /**
* ¸ù¾ÝÓû§Ãû²éÕÒÆä¸öÈ˵ÄÏêϸµÄÐÅÏ¢
*
* @param user_name
* @return
*/
public User selectUser(String user_name) {
// ÉùÃ÷Êý¾Ý¿âÁ¬½Ó¶ÔÏó
Connection conn = null;
try {
// ³õʼ»¯ Êý¾Ý¿âÁ¬½Ó¶ÔÏ󣬱ÜÃâ³öÏÖ¿ÕÖ¸Õëµ÷ÓÃÒì³£ÎÊÌâ
conn = DbHelper.getConn();
// ×é×° SQL ²éѯÓï¾ä
String sql = "select * from java_user where user_name= ?";
// ʵÀý»¯Êý¾Ý¿â²éѯ¶ÔÏó
QueryRunner queryRunner = new QueryRunner();
// ²ÉÓà ·ºÐͱà³Ì¼¼Êõ £¬´Óµ×²ã¿ªÊ¼Ö±½Ó»ñÈ¡Êý¾Ý¿âÐмǼµ½¶ÔÏóµÄ×Ô¶¯×ª»¯Á÷³Ì
User user = queryRunner.query(conn, sql, new BeanHandler<User>(User.class), user_name);
// ÊÍ·ÅÊý¾Ý¿âÁ´½Ó×ÊÔ´
DbHelper.release(conn);
return user != null ? user : null;
} catch (Exception e) {
throw new RuntimeException(" :\n" + e);
}
}

Óë´Ëͬʱ£¬Êý¾Ý¿âÖеļǼÈçÏÂͼ£º

Êý¾Ý¿âÖмǼÐÅÏ¢

ÏÂÃæÊ¹ÓÃJUnitÀ´²âÊÔһϣ¬ Junit²âÊÔ½á¹û

¿É¼û£¬È·Êµ¿ÉÒÔ×Ô¶¯µÄ°ïÖúÎÒÃÇ·´ÐòÁл¯Êý¾Ý¿âÖеÄÊý¾Ý¡£

¸ß¼¶°æ

ÉÏÃæµÄС°¸Àý¼òµ¥µÄ²âÊÔÁËһϣ¬µ¥¸öBean¶ÔÏóµÄ»ñÈ¡£¬ÄÇôÈç¹û˵ResultSetÄÚ°üº¬¶àÌõ¼ÇÂ¼ÄØ£¿ ÕâʱºòÄã¿ÉÄÜ»áÏ룬ҪÊÇÄÜ×Ô¶¯µÄת»»³ÉList£¬È»ºóListÀïÃæ°ü¹ü×ÅÕâЩ·´ÐòÁл¯ºÃµÄÊý¾Ý¶ÔÏ󣬸öàºÃ¡£

ȷʵÊÇÕâÑùµÄ£¬DbHelperÒ²×öµ½ÁË¡£(^__^) ÎûÎû¡­¡­

Êý¾Ý¿âÄڼǼ

ÏÐÑÔÉÙÐð£¬ÔÛÃÇÖ±½Ó¿ªÊ¼°É¡£

Êý¾Ý¿âÄÚ×Ö¶ÎÐÅÏ¢

JavaBean½á¹¹

°´ÕÕÔ¼¶¨£¬java Bean ÄÚ×ֶα£³ÖºÍÊý¾Ý¿âÄÚ±í½á¹¹×Ö¶ÎÒ»Ö¼´¿É¡£

public class Site {
private String site_name;
private String site_username;
private String site_password;
private Integer java_user_id;
private Integer java_tag_tag_id;

public String getsite_name() {
return site_name;
}
¡¤¡¤¡¤ ¡¤¡¤¡¤

È»ºó¾ÍÊÇ DAO²ãÄÚµÄÒµÎñ´úÂëÁË£¬»¹ÊÇÄǼòµ¥µÄ¼¸²½¡£ÐèҪעÒâµÄÊÇ£¬½Ó¿Ú»Øµ÷µÄʱºònewµÄ²»ÔÙÊÇBeanHandlerÁË£¬¶øÊÇBeanListHandler¡£ÕâºÍ·µ»ØµÄ½á¹û¼¯Ö±½ÓÏà¹Ø¡£

public List<Site> selectAllSites(String user_name) {
Connection conn = null;
try {
// ʵÀý»¯ Êý¾Ý¿âÁ¬½Ó¶ÔÏó
conn = DbHelper.getConn();
// Æ´½ÓsqlÓï¾ä
String sql = "select * from java_site where java_site.java_user_id= (select java_user.id from java_user where java_user.user_name='"
+ user_name + "')";
// ʵÀý»¯²éѯÆ÷
QueryRunner queryRunner = new QueryRunner();
// »ñÈ¡½Ó¿Ú»Øµ÷´¦ÀíºóµÄ½á¹û
List<Site> sites = queryRunner.query(conn, sql, new BeanListHandler<Site>(Site.class));
// ÊÍ·ÅÊý¾Ý¿âÁ´½Ó×ÊÔ´
DbHelper.release(conn);

return sites != null ? sites : null;
} catch (Exception e) {
throw new RuntimeException(" :\n" + e);
}
}

È»ºóÔÙÀ´¿´¿´JUnitµÄ²âÊÔ½á¹û£º JUnit List ²âÊÔ½á¹û

¹û²»ÆäÈ»£¬»¹ÊÇ»ñÈ¡µ½ÁËÕýÈ·µÄÊý¾Ý¡£ÕâÒ»µã¿ÉÒÔºÍÊý¾Ý¿âÖÐԭʼµÄÐÅÏ¢½øÐжԱȡ£

ÍØÕ¹

ΪÁËʹµÃÕâ¸ö¿ò¼Ü¸ü¼ÓµÄÁé»î£¬ Âú×ã´ó²¿·ÖµÄ¶¨ÖÆÐÔµÄÐèÇó£¬ÕâÀï¸øQueryRunner ¶îÍâ½øÐÐÁËÍØÕ¹¡£¿ÉÒÔÁé»îµÄ´¦Àí×Ô¼ºµÄÒµÎñÐèÇó¡£

/**
* ¸ù¾Ý¸ø¶¨µÄ²ÎÊýʵÏÖÏòÊý¾Ý¿âÖиø¶¨SQLÓï¾äµÄupdate,delete,insert ²Ù×÷
*
* @param conn
* Êý¾Ý¿âÁ¬½Ó¶ÔÏó£¬Óû§²»±Ø¹ØÐÄÆäÊÍ·ÅÎÊÌ⣬ÕâÀï×Ô¶¯½«ÆäÊÍ·Å
* @param sql
* Êý¾Ý¿â²éѯÓï¾ä
* @param params
* ¶ÔÓ¦ÓÚSQLÓï¾äռλ·ûµÄ²ÎÊýÁбí
* @throws Exception
*/
public void update(Connection conn, String sql, Object... params) throws Exception {
PreparedStatement ps = conn.prepareStatement(sql);
for (int i = 0; i < params.length; i++) {
ps.setObject((i + 1), params[i]);
}
ps.executeUpdate();
DbHelper.release(conn, ps);
}

ʹÓõÄʱºòÖ»ÐèÒª½«×é×°ºÃµÄsqlÓï¾ä´«¸øquery·½·¨¼´¿É¡£È磺

/**
* ¸üÐÂ ÍøÕ¾¶ÔÓ¦µÄ±êÇ©ÐÅÏ¢
*
* @param site_name
* ÍøÕ¾Ãû³Æ
* @param new_java_tag_tag_id
* еıêÇ©ÐÅÏ¢
* @return
*/
public boolean updateSiteTagID(String site_name, Integer new_java_tag_tag_id) {
Connection conn = null;
try {
conn = DbHelper.getConn();
String sql = "update java_site set java_tag_tag_id=? where site_name=?";
QueryRunner queryRunner = new QueryRunner();
Object[] params = { new_java_tag_tag_id, site_name };
// ÔÚÍê³É¸üвÙ×÷ºó£¬µ×²ã»á×Ô¶¯µÄ¶Ï¿ªÓëÊý¾Ý¿âµÄÁ´½Ó
queryRunner.update(conn, sql, params);
return true;
} catch (Exception e) {
throw new RuntimeException(" :\n" + e);
}

}

Èç´Ë£¬»ù±¾ÉÏ¿ÉÒÔÂú×ãJDBC±à³ÌʱÓöµ½µÄÇé¿öÁË¡£

×ܽá

Æäʵ²©Ö÷±¾ÈËÕæµÄÊÇÒ»¸ö°®·ÖÏí£¬ÈÈÐij¦µÄÓÐÖ¾ÇàÄê¡£½ñÌìдÕâÆªÎÄÕµÄÒ»¸öºÜÖØÒªµÄÔ­Òò¾ÍÊÇÏë°ïÖúÄÇЩ±¥ÊÜJDBCÖ®¿àµÄ¿ª·¢ÈËÔ±£¬½ñÔçµÄÒÔÒ»ÖÖÓÅÑŵķ½Ê½ÍÑÀë¿àº£¡£

ÕâÆªÎÄÕ´ÓÓ¦ÓÃÐԵĽǶȶøÑÔ£¬Ó¦¸ÃËãÊDZȽÏÏêϸµÄÁË¡£µ«ÊÇ»ù±¾ÉÏûÓÐÌÖÂ۵ײãµÄʵÏÖ¡£

   
3948 ´Îä¯ÀÀ       30
Ïà¹ØÎÄÕÂ

Java΢·þÎñÐÂÉú´úÖ®Nacos
ÉîÈëÀí½âJavaÖеÄÈÝÆ÷
JavaÈÝÆ÷Ïê½â
Java´úÂëÖÊÁ¿¼ì²é¹¤¾ß¼°Ê¹Óð¸Àý
Ïà¹ØÎĵµ

JavaÐÔÄÜÓÅ»¯
Spring¿ò¼Ü
SSM¿ò¼Ü¼òµ¥¼òÉÜ
´ÓÁ㿪ʼѧjava±à³Ì¾­µä
Ïà¹Ø¿Î³Ì

¸ßÐÔÄÜJava±à³ÌÓëϵͳÐÔÄÜÓÅ»¯
JavaEE¼Ü¹¹¡¢ Éè¼ÆÄ£Ê½¼°ÐÔÄܵ÷ÓÅ
Java±à³Ì»ù´¡µ½Ó¦Óÿª·¢
JAVAÐéÄâ»úÔ­ÀíÆÊÎö
×îл¼Æ»®
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢ 6-12[ÏÃÃÅ]
È˹¤ÖÇÄÜ.»úÆ÷ѧϰTensorFlow 6-22[Ö±²¥]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 6-30[±±¾©]
ǶÈëʽÈí¼þ¼Ü¹¹-¸ß¼¶Êµ¼ù 7-9[±±¾©]
Óû§ÌåÑé¡¢Ò×ÓÃÐÔ²âÊÔÓëÆÀ¹À 7-25[Î÷°²]
ͼÊý¾Ý¿âÓë֪ʶͼÆ× 8-23[±±¾©]

Java ÖеÄÖÐÎıàÂëÎÊÌâ
Java»ù´¡ÖªÊ¶µÄÈýÊ®¸ö¾­µäÎÊ´ð
Íæ×ª Java Web Ó¦Óÿª·¢
ʹÓÃSpring¸üºÃµØ´¦ÀíStruts
ÓÃEclipse¿ª·¢iPhone WebÓ¦ÓÃ
²å¼þϵͳ¿ò¼Ü·ÖÎö

Struts+Spring+Hibernate
»ùÓÚJ2EEµÄWeb 2.0Ó¦Óÿª·¢
J2EEÉè¼ÆÄ£Ê½ºÍÐÔÄܵ÷ÓÅ
Java EE 5ÆóÒµ¼¶¼Ü¹¹Éè¼Æ
Javaµ¥Ôª²âÊÔ·½·¨Óë¼¼Êõ
Java±à³Ì·½·¨Óë¼¼Êõ

Struts+Spring+Hibernate/EJB+ÐÔÄÜÓÅ»¯
»ªÏÄ»ù½ð ActiveMQ Ô­ÀíÓë¹ÜÀí
ijÃñº½¹«Ë¾ Java»ù´¡±à³Ìµ½Ó¦Óÿª·¢
ij·çµç¹«Ë¾ Java Ó¦Óÿª·¢Æ½Ì¨ÓëÇ¨ÒÆ
ÈÕÕÕ¸Û J2EEÓ¦Óÿª·¢¼¼Êõ¿ò¼ÜÓëʵ¼ù
ij¿ç¹ú¹«Ë¾ ¹¤×÷Á÷¹ÜÀíJBPM
¶«·½º½¿Õ¹«Ë¾ ¸ß¼¶J2EE¼°ÆäÇ°ÑØ¼¼Êõ