数据库连接池和Web基础

1. 数据库连接池

1.1 为什么要使用数据库连接池

数据库连接池
现在的代码有什么问题
每一次执行业务都需要申请新的数据库里链接,同时运行 结束之后关闭资源。
会导致资源浪费,数据库压力过大,同时性能非常一般。
希望采用一种共享单车的形式
1. 投放一定数量的共享单车
2. 用户可以使用,用户使用完毕,【归还】共享单车平台
3. 市场需求非常大,可能会再次【投放】

1.2 数据库连接池考虑的问题

数据库连接池是用于管理数据库连接资源,属性和数据库连接对象。
数据库连接必要的资源
1. URL 2. user 3. password 4. DriverClass
连接池关于数据库连接对象的管理内容
1. 初始化数量 2. 容量Max值为多少 3. 等待时间
数据库连接归还功能 改功能是自带的功能,并且润物细无声!!!
依然是调用原始的close方法,实际效果是归还数据库连接 池!!!
【代理】

1.3 常见数据库连接池

常见数据库连接池有哪些: 1. C3P0 2. DBCP 3. Druid

1.3.1 C3P0使用

使用流程:
1. 导包 mchange-commons-java-0.2.19.jar c3p0-0.9.5.2.jar
2. 书写配置文件 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/feige002</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="checkoutTime">3000</property>
    </default-config>

    <named-config name="otherc3p0">
        <property name="driverClass">com.mysql.jdbc.Driver</property>
        <property name="jdbcUrl">jdbc:mysql://localhost:3306/feige001</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="checkoutTime">3000</property>
    </named-config>
</c3p0-config>
3. 创建核心类
private static DataSource ds = new ComboPooledDataSource();
    //获取另外配置
//    private static DataSource ds2 = new ComboPooledDataSource("otherc3p0");


    /**
     * 获取连接
     * @return
     * @throws SQLException
     */
    public static Connection getConnection() throws SQLException {
        return ds.getConnection();
    }
1.3.2 Druid使用

使用流程:
1. 导包 druid-1.0.9.jar
2. 书写配置文件 druid.properties

driverClassName = com.mysql.jdbc.Driver
url = jdbc:mysql://localhost:3306/feige002? useSSL=true
username = root
password = 123456

# 初始化数据库连接池容量
initialSize=5
# 最大容量
maxActive=20
# TimeOut 等待超时时间
maxWait=2000
3. 创建核心类
private static DataSource ds;
    static {

        try {
            Properties properties = new Properties();
            properties.load(new FileReader(JDBCUtils.class.getClassLoader().getResource("druid.properties").getPath()));
            ds = DruidDataSourceFactory.createDataSource(properties);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    /**
     * 获取连接
     * @return
     * @throws SQLException
     */
    public static Connection getConnection() {
        Connection connection = null;
        try {
            connection =  ds.getConnection();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return connection;
    }

2. HTML

2.1 HTML简介

2.1.1 什么是HTML

HTML全称
Hyper Text Markup Language 超文本标记语言
包含内容
1. 超文件: 可以包含图片,视频。音频,连接…
2. 标记: 采用标签方式编程,并且有固定的规范
3. HTML5 是HTML语言一个标准,W3C组织制定的
HTML可以用于数据展示,常见的网站都是采用HTML来编程的。

2.1.2 最基本的HTML结构
<!DOCTYPE html>
 <html>
     <head>
             <!-- 当前页面编码集 -->
             <meta charset="utf-8" /> 
             <!-- 设置当前页面的标题 -->
                     <title>标题</title>
    </head>
    <body> 
           <!-- 页面展示内容 -->
    </body>
</html>

HTML标签要求
1. W3C规定,不可以自定义,每一个标签都自己的特定含义
2. 标签区别为双边标签和单边标签

3. 标签中可以使用属性
charset=“utf-8” charset属性名 utf-8属性值 属性名=“属性值”
4. HTML标签不区分大小写,这里建议全小写

2.2 HTML基本标签

2.2.1 结构标签

属性:
text: 文本颜色
bgcolor: 背景颜色
background: 背景图
颜色的表示方式:
对应颜色的英文: red black yellowgreen greenyellow
还有就是RBG模式 #F26522 #334455

2.2.2 排版标签

a. 注释标签
b. 换行标签

c. 段落标签


特征: 段落之间有留白
屬性:
align 对齐方式,有center right left
d. 水平分割线

属性:
width: 水平分割线长度,单位px像素
size: 水平分割线粗细,单位px像素
color: 水平分割线的颜色
align: 对齐方式
2.2.3 块标签
行级块标签,单独成行,每一个块标签占一行 行内块标签,所有内容都在一行,多个span标签在一行展示 作用: div 和CSS连用,用于页面布局操作 span 用于信息提示

2.3 文本标签

2.3.1 基本文本标签

属性:
size: 字体大小
color: 字体颜色
face: 字体样式

2.3.2 标题标签

~
数字越大文字越小。字体默认加粗,单独成行 h1标签一般在一个HTML页面中有且只有一个 ### 2.4 列表标签
2.4.1 无序列表 ul

无序列表

    属性: type : circle 空心圆 square 方块 disc 实心圆 (缺省) none 没有标记 元素内容:

    • 案例
      • 修道院啤酒
      • 百威啤酒
      • 青岛啤酒
      • 精酿啤酒
      • 福佳白

      2.4.2 有序列表 ol

      有序列表:

        属性: type: 1 A a I i (数字,英文字母大小写,罗马数字 大小写) start: 有序从几开始 案例
        1. 茅台
        2. 五粮液
        3. 习酒
        4. 舍得
        5. 彩陶坊

        <!DOCTYPE html>
        <html lang="en">
            <head>
                <meta charset="UTF-8">
                <title>列表</title>
            </head>
            <body>
                <ul>
                    <li>
                        <ul>
                             
                            <li>绿茶</li>
                             
                            <li>红茶</li>
                                       
                            <li>白茶</li>
                                       
                            <li>普洱</li>
                                       
                            <li>花茶</li>
                        </ul>
                    </li>
                    <li>
                        <ol type="none">            
                            <li>埃塞尔比亚</li>
                                       
                            <li>印度尼西亚黄金曼特宁</li>
                                       
                            <li>夏瑰</li>
                                       
                            <li>蓝山</li>
                                   
                        </ol>
                    </li>
                </ul>
        
            </body>
        </html>
        

        2.5 图形标签

        单边标签
        属性: src: 图片路径,可以是本地路径也可以是网络路径
        width: 图片宽度[不太合适]
        height: 图片高度[不太合适]
        border: 图像边框
        align: 和相邻文本布局有关 alt: 图片文本说明,当图片裂开无
        法显示,展示文本

        2.6 链接标签


        属性:
        href: 指定跳转哪一个页面
        target:
        _self 当前页面加载新连接
        _blank 新页面加载 连接
        name: 可以用于锚点使用

        2.6.1 锚点
        <!DOCTYPE html>
        <html lang="en">
            <head>
                <meta charset="UTF-8">
                <title>链接</title>
            </head>
            <body>
                <a href="#middle">去中间</a><br>
                <a name="top"></a><br>
                <h1>顶部</h1><br>
                .........................
                <a name="middle"></a><br>
                <a href="#bottom">去底部</a><br>
                <a href="#top">去顶部</a><br>
                <h1>中间</h1><br>
                .........................
                <a name="bottom"></a><br>
                <a href="#top">去顶部</a>
                <h1>底部</h1>
            </body>
        </html>
        

        2.7 表格标签

        2.7.1 基本表格样式
        <!DOCTYPE html>
        <html lang="en">
            <head>
                <meta charset="UTF-8" >
                <title>表格</title>
            </head>
            <body>
        
                <table border="1px" width="500px">
                    <caption>学生信息表</caption>
                    <tr>
                        <th>学号</th>
                        <th>姓名</th>
                        <th>年龄</th>
                        <th>成绩</th>
                    </tr>
                    <tr>
                        <td>1</td>
                        <td>飞哥</td>
                        <td>22</td>
                        <td>100</td>
                    </tr>
                    <tr>
                        <td>2</td>
                        <td>羽羽</td>
                        <td>21</td>
                        <td>100</td>
                    </tr>
                    <tr>
                        <td>3</td>
                        <td>段段</td>
                        <td>23</td>
                        <td>100</td>
                    </tr>
                    <tr>
                        <td>4</td>
                        <td>昊昊</td>
                        <td>22</td>
                        <td>100</td>
                    </tr>
                </table>
                <br>
                <table border="1px" width="500px">
                    <tr>
                        <th>学号</th>
                        <th>姓名</th>
                        <th>年龄</th>
                        <th>成绩</th>
                    </tr>
                    <tr>
                        <td>1</td>
                        <td>飞哥</td>
                        <td>22</td>
                        <td>100</td>
                    </tr>
                    <tr>
                        <td>2</td>
                        <td>羽羽</td>
                        <td>21</td>
                        <td>100</td>
                    </tr>
                    <tr>
                        <td>3</td>
                        <td>段段</td>
                        <td>23</td>
                        <td>100</td>
                    </tr>
                    <tr>
                        <td>4</td>
                        <td>昊昊</td>
                        <td>22</td>
                        <td>100</td>
                    </tr>
                </table>
                <br>
                <hr color="green" width="2px">
                <table border="1px" width="500px">
                    <caption>各科成绩表</caption>
                    <tr>
                        <th rowspan="2">学号</th>
                        <th rowspan="2">姓名</th>
                        <th colspan="3">各科成绩</th>
                    </tr>
                    <tr align="center">
                        <td>语文</td>
                        <td>数学</td>
                        <td>英语</td>
                    </tr>
                    <tr>
                        <td>1</td>
                        <td>飞哥</td>
                        <td>100</td>
                        <td>100</td>
                        <td>100</td>
                    </tr>
                    <tr>
                        <td>2</td>
                        <td>羽羽</td>
                        <td>100</td>
                        <td>100</td>
                        <td>100</td>
                    </tr>
                </table>
            </body>
        </html>
        

        2.8 文本格式化标签

        <b> 文本加粗 
        <strong> 文本加粗
         <em> 文本斜体 
         <i> 文本斜体 
         <small> 小号字体 
         <sup> 上标 
         <sub> 脚标 
         <del> 删除线 
         <ins> 下划线
        

        3. 表单【重点】

        3.1 表单的作用

        提交数据给后台的一种方式 form表单
        属性:
        action:提交的目标位置,提交数据到服务器进行处理
        method: get 和 post
        enctype:【后面再说】
        get:

        1. 通过URL明文传递 16-form表单基本验证.html?userName=骚磊 &password=123456 ? 之后是参数 userName=骚磊 userName 参数名 骚磊 参数值 = 连 接 不同参数使用&分割
        2. 不安全!!!密码明文传递
        3. 效率高!!!传输速度快
        4. 数据大小有限制,一般限制在2KB以内 适用情况:
          一般用于 搜索查询操作

        post:

        1. 通过请求实体来传递数据
        2. 安全性稍稍可靠一丢丢
        3. 效率低
        4. 数据大小理论不限制 适用情况: 一般用于 搜索更新,删除,插入,登陆…

        3.2 input标签

        input输入框
        type决定当前input标签中的内容是什么样式
        属性值:
        text 可视化文本[默认属性]
        password 密文
        submit 提交
        radio 单选
        【要求】 1. name属性必须一直,不然无法满足单选要 求 2. checked属性为默认选择、
        checkbox 多选
        【要求和建议】 1. name属性必须一直 2. 建议:可以在name属性中使用[]做标记, 区分是否为多选 tips:多选使用[] PHP后台直接解析为 PHP 数组Array
        date 时间日期
        reset 重置
        file 文件
        hidden 隐藏数据传递

        <!DOCTYPE html>
        <html lang="en">
            <head>
                <meta charset="UTF-8">
                <title>表单练习</title>
            </head>
            <body>
                <form action="#" method="post">
                    姓名:<input type="text" name="userName">
                    <br>
                    密码:<input type="password" name="password">
                    <br>
                    <span>性别:</span>
                    <input type="radio" name="sex" value="1" checked><input type="radio" name="sex" value="0"><br>
                    <span>爱好:</span>
                    <input type="checkbox" name="hobby[]" value="1"><input type="checkbox" name="hobby[]" value="2"><input type="checkbox" name="hobby[]" value="3">Rap
                    <input type="checkbox" name="hobby[]" value="4">篮球
                    <br>
                    <span>生日:</span>
                    <input type="date">
                    <br>
                    <span>头像</span>
                    <input type="file">
                    <br>
                    <span>籍贯:</span>
                    <select name="city">
                        <option value="1">金星</option>
                        <option value="2">木星</option>
                        <option value="3">水星</option>
                        <option value="4">火星</option>
                        <option value="5">土星</option>
                    </select>
                    <br>
                    <span>个人说明:</span>
                    <textarea name="info"></textarea>
                    <br>
                    <input type="submit" value="提交">
                </form>
            </body>
        </html>
        

        3.3 select下拉菜单

        <select name="city">
                        <option value="1">金星</option>
                        <option value="2">木星</option>
                        <option value="3">水星</option>
                        <option value="4">火星</option>
                        <option value="5">土星</option>
                    </select>
        

        3.4 文本框

        <textarea name="info"></textarea>
        
      • 0
        点赞
      • 0
        收藏
        觉得还不错? 一键收藏
      • 0
        评论

      “相关推荐”对你有帮助么?

      • 非常没帮助
      • 没帮助
      • 一般
      • 有帮助
      • 非常有帮助
      提交
      评论
      添加红包

      请填写红包祝福语或标题

      红包个数最小为10个

      红包金额最低5元

      当前余额3.43前往充值 >
      需支付:10.00
      成就一亿技术人!
      领取后你会自动成为博主和红包主的粉丝 规则
      hope_wisdom
      发出的红包
      实付
      使用余额支付
      点击重新获取
      扫码支付
      钱包余额 0

      抵扣说明:

      1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
      2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

      余额充值