c3p0没有过多的必须(required)配置信息,它非常灵活可控。大多数的配置信息都是JavaBean属性。下面就是JavaBean的惯例,如果有一个对象有一个类型为T的属性foo,这个对象就会有类似这样的方法…public T getFoo();
public void setFoo(T foo);
这样的方法是否成对存在,取决于这个属性是只可读的,只可写,还是可读写的。
有多种方法修改c3p0的属性:你可以直接在代码里通过关联一个特定的数据源来改变配置,你也可以在外部通过简单的Java属性文件(simple Java properties file),XML配置文件或系统属性来配置c3p0。通常来讲,配置文件都被命名为c3p0.properties或c3p0-config.xml,并放置在应用的CLASSPATH的顶级路径中,但是XML配置文件可以被放在应用所在的文件系统的任何位置,你只需要改变com.mchange.v2.c3p0.cfg.xml这个系统属性即可(绝对路径)。
数据源通常在使用之前被配置,比如在构造方法中配置或者在构造方法返回之后马上进行配置。不过c3p0也支持使用过程中修改配置。
如果你通过调用工具类com.mchange.v2.c3p0.DataSources的工厂方法来获取数据源,并且不希望这个数据源使用默认的配置,那么你可以提供一个Map类型的参数作为配置信息[key必须是小写字母开头的属性名,value可以是字符串或者“被打包(boxed)”的Java原生类型,例如Integer和Boolean]。
所有可改变的属性在附录A中都有详细的文档。下面我们来讨论那些最常用,最重要的 C3P0 配置。
REF:
http://cwiki.ossez.com/pages/viewpage.action?pageId=4719803