登陆功能实现以及验证码
一登陆界面
二c3p0配置文件
<?xml version="1.0" encoding="UTF-8"?>
<c3p0-config> <!--默认配置 -->
<default-config>
<!--initialPoolSize:连接池初始化时创建的连接数,default : 3,取值应在minPoolSize与 maxPoolSize之间-->
<property name="initialPoolSize">10</property>
<!-- maxIdleTime:连接的最大空闲时间,如果超过这个时间,某个数据库连接还没有被使用,则会断开掉这个连接。如果为0,则永远不会断开连接,即回收此连接。default : 0 单位 s -->
<property name="maxIdleTime">30</property>
<!--maxPoolSize:连接池中拥有的最大连接数,如果获得新连接时会使连接总数超过这个值则不会再获取新连接,而是等待其他连接释放,所以这个值有可能会设计地很大,default : 15-->
<property name="maxPoolSize">100</property>
<!--minPoolSize:连接池保持的最小连接数,default : 3-->
<property name="minPoolSize">10
</property>
<!--maxStatements:连接池为数据源缓存的PreparedStatement的总数。由于PreparedStatement属于单 个Connection,所以这个数量应该根据应用中平均连接数乘以每个连接的平均PreparedStatement 来计算-->
<property name="maxStatements">200</property>
</default-config> <!--配置连接池oracle -->
<!-- 配置mysql-->
<named-config name="mysql-book">
<!--mysql需要使用的驱动类-->
<property name="driverClass">com.mysql.jdbc.Driver</property>
<!--连接语句-->
<property name="jdbcUrl">jdbc:mysql://127.0.0.1:3306/bookdb?useUnicode=true&characterEncoding=utf8</property>
<!--mysql的用户名-->
<property name="user">root</property>
<!--我的mysql的密码:根据自己机器进行修改-->
<property name="password">root</property>
<!--连接池初始化时创建的连接数:10-->
<property name="initialPoolSize">10</property>
<!--maxIdleTime:连接的最大空闲时间,如果超过这个时间,某个数据库连接还没有被使用,则会断开掉这个连接。-->
<property name="maxIdleTime">30</property>
<!--连接池中拥有的最大连接数-->
<property name="maxPoolSize">100</property>
<!--连接池保持的最小连接数-->
<property name="minPoolSize">10</property>
<!--连接池为数据源缓存的PreparedStatement的总数-->
<property name="maxStatements">200</property>
</named-config>
</c3p0-config>
loin.html
```clike
<!DOCTYPE html>
<html>
<head>
<title>享学图书管理系统</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="description" content="享学图书管理系统" />
<meta name="keywords" content="享学,网站管理系统,企业网站" />
<meta name="Author" content="phenix" />
<meta name="CopyRight" content="享学科技" />
<link rel="stylesheet" type="text/css" href="./Style/skin.css" /