JDBC工作流程、JNDI连接池

来源:互联网 发布:前端数据可视化 编辑:程序博客网 时间:2024/06/16 03:37
JDBC是Java数据库连接技术的简称,提供连接各种常用数据库的能力
JDBC程序的工作原理

JDBC API
JDBC API可做的三件事:与数据库建立连接、执行SQL语句、处理结果

JDBC工作流程(如何连接数据库):
1.加载驱动
2.建立连接
3.执行SQL语句
4.得到处理结果
import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;public class javaTest {        public static void main(String[] args) throws ClassNotFoundException, SQLException  {        String URL="jdbc:mysql://127.0.0.1:3306/imooc?useUnicode=true&characterEncoding=utf-8";        String USER="root";        String PASSWORD="tiger";        //1.加载驱动程序        Class.forName("com.mysql.jdbc.Driver");        //2.获得数据库链接(建立连接)        Connection conn=DriverManager.getConnection(URL, USER, PASSWORD);        //3.通过数据库的连接操作数据库,实现增删改查(使用Statement类)(执行SQL语句)        Statement st=conn.createStatement();        ResultSet rs=st.executeQuery("select * from user");        //4.处理数据库的返回结果(使用ResultSet类)        while(rs.next()){            System.out.println(rs.getString("user_name")+" "                          +rs.getString("user_password"));        }              //关闭资源        rs.close();        st.close();        conn.close();    }}
其中,JDBC的工作流程是在DAO层模式下进行,下面就简单介绍一下DAO层模式
DAO
Data Access Object(数据存取对象)
位于业务逻辑和持久化数据之间
实现对持久化数据的访问

DAO模式的组成部分
DAO接口
DAO实现类
实体类
数据库连接和关闭工具类

JNDI连接池
连接池
-->连接池是内存中预设好一定数量的连接对象,以备用户在进行数据库操作时直接使用
性能
-->数据库连接的建立、断开均由管理池统一管理
连接池技术与传统数据库连接的比较
-->数据库操作性能得到提升
-->通过连接池管理数据库的连接与释放、提高了系统资源的使用效率
生活中的连接池实例

为什么要使用链接池?
企业级开发需要稳健和高效的数据访问层
1.完成对数据库的CRUD操作
2.能够处理数据库发生的各种错误
3.可以灵活的修改配置
4.提供方便使用的工具
5.高性能

传统数据库连接方式的不足:
1.每次请求时均需要与数据库进行连接,资源占用较多
2.当并发访问数量较大时,网站速度受到极大影响
3.在访问结束后必须要关闭连接释放资源
4.系统的安全性和稳定性相对较差
什么是JNDI?
-->JNDI(Java Naming and Directory Interface,java命名和目录接口)
-->是一组在java应用中访问命名和目录服务的API
-->通过名称将资源与服务进行关联
连接池(JNDI)的工作原理:

JNDI的简单应用


修改Tomcat\conf\context.xml文件