关于prototype
头说用这个做一个连接数据库的模型。JDBC的。
我感觉用prototype做这个没必要,
大家觉的合适吗?
头说用这个做一个连接数据库的模型。JDBC的。
我感觉用prototype做这个没必要,
大家觉的合适吗?
可以试试的!
为社么不呢
写是写了。但还是不明白用这个模式完成有什么好处。
你能说说你是如何写的吗?这样我们来分析分析这样做是否有好处?
先clone出一个,然后传入参数,返回一个connectiion.
public class ConnectDB implements Cloneable{
private java.util.Properties prop= new java.util.Properties();
private String strUrl = null;
/**
* Constructor
*/
public ConnectDB(){
}
public Object clone()
{
try{
return super.clone();
}catch(CloneNotSupportedException cnse){
cnse.printStackTrace();
return null;
}
}
public void setProp(java.util.Properties tmpPro){
prop= tmpPro;
}
public void setUrl(String tmpUrl){
strUrl = tmpUrl;
}
public Connection connect(String strDriver){
try{
Class.forName(strDriver).newInstance();
Connection Conn = DriverManager.getConnectionstrUrl,prop);
return Conn;
}catch(Exception e){
return null;
}
}
请banq多多指点。
连接还是不要clone吧,会不会出问题??
Not quite understand the topic name "prototype"?
If you want to build a wrapper on top a JDBC library, i think it's very useful as it can hide the difference jdbc drivers vary from vendor or version.
Or are you trying to build a connection factory?
好像你方向出问题了
连接池是使用FlyWeight模式的,使用clone来克隆connection,这能work吗?我以前好像听说过你这种情况,你能否详细谈谈?
clone后可以work.
头要求这么做。从开始我就觉的别扭。
不会把,如果能实现,一定要告诉我
请问用FlyWeight是怎么设计连接池的!!我看见的都是用Factory方法来控制Connection的个数的
prototype 模式用来做什么比较好呢,这种模式了解了,但是不知道用处。
> prototype
> 模式用来做什么比较好呢,这种模式了解了,但是不知道用处
> ?
不知道我的想法对不对,拿出来和大家讨论。如果出现下面的情况,prototype 就会很有用。
|
构造 MyEnv 后对其初始化需要的开销很大,那么,当再次构造同类型的对象时,用 Clone() 可以减少这种开销。
类似的例子比如 C Runtime Lib 里的 dup() 函数。由于操作系统打开一个文件(或设备)需要很大开销,当打开同一个文件时,可以对已有的文件描述符做一个 dup(),这样就避免了很多开销, dup() 以后,你可以对新产生的文件描述进行修改,比如存取模式等,使之符合你的要求。
还有一种情况下要使用 prototype。如果你得到的是一个基类型(如 Object 类型)的对象,甚至只是个接口,你并不知道对象的原型类是什么,而你又需要动态的生成此对象的同类时,就需要用到 Clone() 方法。