传智播客java培训 java基础之Pool
昨天有个朋友问我,学得会不,俺说学的会!
后来他又问我,他如果学的话,学的会学不会,俺说只要不笨蛋,把心思放在java上,就一定学的会!
时间一直过的都很快,每个人能把握的也只有今天,所以即使困难再多,只有此时此刻自己在不停的努力。
哪怕像蜗牛一样的前进,也一定有成功的一天,就怕自己放弃,怕自己没有信心!!
连接池:
连接池中能存放多个连接
客户端使用得时候,直接从连接池获取连接
当客户端使用完连接时,在把连接放回到连接池中
使用连接池要注意
*要有一个初始化连接数(同时在线5000人,不可能在池中存放5000个连接)
*最小空闲数,保存连接池中,存在空闲连接,放置洪峰到来,引起得性能开销(那么当池中得连接用完,
有新得客户端来访问;就必须创建新得连接,所以可以在池中设置最小空闲数)
*最大连接数(当连接数达到数据库得上限,就不允许继续创建新得连接)
*最大等待时间(连接数达到上限,如果有新得连接,则必须等待其他连接释放,若超过等待时间,服务器抛出异常)
*最大空闲数(当洪峰退去时,防止连接池中得连接数过多)
javax.sql.DataSource 接口 由驱动厂商实现,通常被称为数据源,它包含连接池和连接池管理
两个部分,
*DBCP数据库连接池 Abache产品
必须导入common-pool.jar
common-jdbc.jar
*C3P0数据库连接池(www.mchange.com)
创建连接池(DBCP):
第一种:
BasicDateSource implements javax.sql.DateSource
*代表数据源,也就是连接池
BasicDateSource bds=new BasicDateSource();
bds.setUsername();
bds.setPassword();
bds.setUrl();
//设置初始化参数
bds.setInitialSize(4);
//设置最大连接数
bds.setMaxActive(10);
//设置最大空闲数
bds.setMaxIdle(5);
//设置最小空闲数
bds.setMinIdle(3);
//设置最大等待时间
bds.setMaxWait(5000);
//获取连接
Connection conn=bds.getConnection();
第二种:
Properties properties=new Properties();
properties.setProperty("username","root");
properties.setProperty("password","root");
相关文档:
List的用法
List包括List接口以及List接口的所有实现类。因为List接口实现了Collection接口,所以List接口拥有Collection接口提供的所有常用方法,又因为List是列表类型,所以List接口还提供了一些适合于自身的常用方法,如表1所示。
表1 List接口定义的常用方法及功能
从表1可以看出,List接口提供的适合于自身的 ......
取:
Cookie[] cookies = request.getCookies();
if(cookies!=null){
for(Cookie cookie : cookies){
if(cookie.getName().equals("mid")){
String mid = cookie.getValue();
}
}
}
存:
String mid ......
public String getCheckDateString(String str) {
Date date = new Date();//获取当前系统日期
SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");//时间格式
......
我们在进行WEB开发的时候,经常需要在客户端编写一些js函数,这些函数如果需要在服务端执行的话,如果重新编写的话,就显得十分冗余,因此我们可以尝试在服务端,直接执行js,这样的话就可以避免重复劳动,同时,调用js也有个函数,就是非常方便调试。
最关键的一步就是调用
conext.evaluateString(scope,&n ......
你觉得自己是一个Java专家吗?是否肯定自己已经全面掌握了Java的异常处理机制?在下面这段代码中,你能够迅速找出异常处理的六个问题吗?
OutputStreamWriter out = ...
java.sql.Connection conn = ...
try { // ⑸
Statement stat = conn.createStatement();
ResultSet rs = stat.executeQuery(
"selec ......