一、数据库连接池
使用数据库连接池的原因:
数据库连接是一种关键的有限的昂贵资源,对数据库连接的管理能显著影响到整个应用程序的性能。数据库的连接是非常困难的,非常多额消耗资源,如果我们的一个项目连接到数据库,然后另一个项目也连接数据库,当多个项目项目连接数据库的时候系统资源的消耗也会加剧,如果我们在连接数据之后使用的时间很短暂,然后就释放,重复这样,更是一种浪费。数据库连接池正是针对这个问题提出来的,
常见的数据库连接池:
C3P0、DBCP、Tomcat Jdbc Pool、Druid,其中C3P0用于成形的项目,DBCP用于教学、项目测试,Druid用于高性能高并发
数据库连接池的原理:
连接池的基本思想是在系统初始化的时候,将数据库连接对象存储在数据库连接池中,当用户需要访问数据库的时,并非建立一个新的连接,而是从连接池中取出一个已建立的空闲连接对象。使用完之后,用户也并非关闭连接,而是将连接放回连接池中,以供下一个请求访问使用。而连接的建立。断开都由连接池来管理。
C3P0连接池的使用:
1、导入相关jar包
2、在项目src目录建新建一个名叫c3p0-config.xml的文件,并配置连接池的相关信息,文件的名称是固定的,补课改变
3、在代码中使用ComboPooledDataSource对象的getConnection()方法获取数据库连接对象
c3p0-config.xml文件的配置信息如下:
<?xml version="1.0" encoding="UTF-8"?>
<c3p0-config>
<default-config>
<property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="jdbcUrl">jdbc:mysql://localhost:3306/mydb?characterEncoding=utf8</property>
<property name="user">root</property>
<property name="password">123456</property>
<property name="initialPoolSize">10</property>
<property name="maxIdleTime">30</property>
<property name="maxPoolSize">100</property>
<property name="minPoolSize">10</property>
<!-- c3p0全局的PreparedStatements缓存的SQL大小 -->
<property name="maxStatements">200</property>
</default-config>
</c3p0-config>
配置文件中的内容跟JDBC的配置类似,第一步是加载数据库驱动程序,第二步是建立连接,在配置文件中首先要注明驱动程序,然后是要连接的数据库,接着写入数据库账户、密码可以规定初始连接池的大小,如果不规定,服务器默认为0,有最大响应时间以及连接池的最大最小值、最后规定c3p0全局的PreparedStatement缓存的SQL大小,如果没有规定,默认是0
二、Ajax简介
全称:Asynchronous JavaScript and XML(异步JavaScript和XML)
通过Ajax技术可以通过与后台服务器进行少量的数据交换,从而实现网页的异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行局部刷新。