Éú²úÕßÏû·ÑÕßÎÊÌâÖ®JavaÏß³ÌʵÏÖ
ÔÌùÄÚÈÝÇë¼û: http://topic.csdn.net/u/20100116/17/6a204504-9e70-435f-be55-f0630ed12fdf.html?seed=942806558&r=62778073#r_62778073
Çë´óÅ£Ö¸Õý.
²úÆ·Àà:
package selfimpr.producerCustomer;
/**
* ²úÆ·
* @author selfimpr
* @blog http://blog.csdn.net/lgg201
* @email lgg860911@yahoo.com.cn
*
*/
public class Product {
private int id;
private String name;
public Product(int id, String name) {
this.id = id;
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String toString() {
return "Product: {id: " + this.id + ", name: " + this.name + "};";
}
}
Éú²úÕßÀà:
package selfimpr.producerCustomer;
import java.util.List;
/**
* Éú²úÕßÏß³Ì, ½«databaseʵÏÖ
* @author selfimpr
* @blog http://blog.csdn.net/lgg201
* @email lgg860911@yahoo.com.cn
*
*/
public class Producer implements Runnable {
private List<Product> database;
private static int count = 0;
private int sn;
public Producer(int sn, List<Product> database) {
this.sn = sn;
this.database = database;
}
@Override
public void run() {
while (true) {
if (database.size() < 10) {
produce();
}
try {
Thread.sleep(5);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
private void produce() {
synchronized (database) {
Product product = new Product(count, "product_" + count++);
database.add(product);
System.out.println("Producer[" + this.sn + "] produce " + product);
}
}
}
Ïû·ÑÕßÀà:
package selfimpr.producerCustomer;
import java.util.List;
/**
* Ïû·ÑÕßÏß³Ì, ͬ²½database
* @author selfimpr
* @blog http://blog.csdn.net/lgg201
* @email lgg860911@yahoo.com.cn
*
*/
public class Customer implements Runnable {
private List<Product> database;
private int sn;
public Cus
Ïà¹ØÎĵµ£º
JavaÐéÄâ»úµÄÄÚ²¿Ìåϵ½á¹¹Ò²ÐíºÜÉÙÓÐÈËÈ¥¹ØÐÄ£¬ÒòΪ¶ÔÓÚJava³ÌÐòÔ±À´Ëµ£¬Ò»°ãÖ»ÐèÒª¸úAPI´ò½»µÀ¾Í¿ÉÒÔÁË¡£ÕâЩÌåϵ½á¹¹Ö»ÊÇJavaÐéÄâ»úÄÚ²¿µÄ½á¹¹¶øÒÑ¡£µ«ÊÇÈç¹ûÀí½âÁËÆäÄÚ²¿½á¹¹£¬¶ÔÓÚÎÒÃÇ¿ª·¢ÏîÄ¿£¬ÒÔ¼°ÅųýϵͳÖеÄÏà¹Ø¹ÊÕÏÊÇÓɰïÖúµÄ¡£
ÏÈ¿´¿´×ÜÌå½á¹¹Í¼£¬ÈçÏ£º
¸÷²¿·ÖµÄÖ÷Òª¹¦ÄÜ·Ö±ðÊÇ£º
1. Àà×°ÔØ×Óϵͳ:¸ºÔðJavaÀ ......
À´×Ô:http://www.cnblogs.com/shiyangxt/archive/2008/07/30/1256813.html
»·¾³£ºMyEclipse
Êý¾Ý¿â£ºmysql
Ê×ÏÈн¨JavaÏîÄ¿£¬È»ºóн¨Á½¸öÀ࣬һ¸öÊý¾Ý¿âÁ¬½Ó³ØÀ࣬һ¸ö²âÊÔÀà¡£
·Ö±ðÃüÃûConnectionPool£¬ConnectionPoolTest¡£
È»ºóн¨Ò»¸öÅäÖÃÎļþ£¬ÃüÃû£ºdbpool.properties¡£
&n ......
ÔÚʵÏÖsingletonģʽʱ£¬ÎÒÃÇÓÐÒÔϼ¸ÖÖ·½·¨¡£ 1. public static final ×ֶμÓÉÏprivate µÄ¹¹Ô캯Êý¡£ public class Singleton{
public static final Singleton INSTANCE = new Singleton();
......
javaʵÏֵľµäµÝ¹éËã·¨ÈýÀý
Ò»¡¢Ð´×÷´ËÎĵÄÔÒò£º
¡¡¡¡Ñ§¹ý³ÌÐòÉè¼ÆµÄÅóÓѶ¼ÖªµÀ£¬´æÔÚ×Ôµ÷ÓõÄËã·¨³Æ×÷µÝ¹éËã·¨¡£ µÝ¹éÍùÍùÄܸøÎÒÃÇ´øÀ´·Ç³£¼ò½à·Ç³£Ö±¹ÛµÄ´úÂëÐÎÊÆ£¬´Ó¶øÊ¹ÎÒÃǵıàÂë´ó´ó¼ò»¯£¬È»¶øµÝ¹éµÄ˼άȷʵºÜÎÒÃǵij£¹æË¼Î¬ÏàÄæµÄ£¬ÎÒÃÇͨ³£¶¼ÊÇ´ÓÉ϶øÏµÄ˼άÎÊÌ⣬ ¶øµÝ¹éÇ÷ÊÆ´ÓÏÂÍùÉϵĽøÐÐ˼ά£¬ÕýÓÉÓÚ´Ë£ ......
ÓÉÓÚ³£¼ûµÄµ¥Àýģʽ,¶öººÊ½µ¥ÀýºÍÀÁººÊ½µ¥Àý,¹¹Ôì·½·¨¶¼Ë½ÓÐÁË,Òò´Ë²»Äܱ»¼Ì³Ð.
×î½üÔÚ¿ª·¢ÖÐÓöµ½ÎÊÌâÁË,Ç¡ºÃÐèÒª¼Ì³Ðµ¥ÀýÀà.ÕÒ×ÊÁϲÅÕÒµ½ÁËÕâ¸ö½â¾ö°ì·¨---µÇ¼Çʽµ¥Àý.
µÇ¼Çʽµ¥ÀýÀàÊÇΪÁ˿˷þ¶öººÊ½µ¥ÀýÀ༰ÀÁººÊ½µ¥ÀýÀà¾ù²»¿É¼Ì³ÐµÄȱµã¶øÉè¼ÆµÄ¡£µ±µ¥ÀýÀàÐèÒª±»¼Ì³ÐʱÊÊÓÃ.
´úÂëÇåµ¥3£ºµÇ¼Çʽµ¥ÀýÀà
import java.u ......