Water's Blog

坚持更新博客中...


  • 首页

  • 标签

  • 分类

  • 归档

  • 搜索

Java数据库连接对象的容器:JDBC连接池

发表于 2019-08-02 更新于 2020-01-30 分类于 Java , JDBC
本文字数: 5.8k 阅读时长 ≈ 5 分钟

数据库连接池

  • 概念
    • 数据库连接池:其实就是一个容器,存放数据库连接的容器。
    • 当系统初始化后,容器被创建,并且容器会申请一些连接对象。
    • 当用户来访问数据库时,从容器中获取连接对象;用户访问完之后,会将连接对象归还给容器。
  • 优点
    • 节约资源
    • 用户访问高效
  • 接口
    • 数据库连接池接口由Sun公司编写,具体实现类由各个数据库厂商提供。
    • 数据库连接池接口: javax.sql.DataSource
  • 接口方法
    • 获取连接:getConnection()
    • 归还连接:Connection.close()。
      • Connection对象是从DataSource对象中获取,此时就不再是关闭连接了,而是归还连接。
  • 接口的实现类
    • C3P0:数据库连接池实现技术
    • Druid:数据库连接池实现技术(阿里巴巴)
阅读全文 »

MyBatis框架(2) —— 自定义MyBatis相关的类和接口

发表于 2019-08-02 更新于 2020-01-31 分类于 Java , MyBatis
本文字数: 30k 阅读时长 ≈ 27 分钟

简介

  • 我们知道创建Maven项目后,在项目中的pom.xml配置文件中引入MyBatis依赖之后,我们就可以使用MyBatis相关的类和接口和相应的功能。
  • 但为了对MyBatis的体系结构和功能有更加深刻的理解和全面的认识,本文Maven项目中的pom.xml配置文件将不再引入MyBatis依赖,转而通过自定义编写MyBatis相关的类和接口来实现同样的功能。
  • MyBatis相关类和接口的介绍流程按照 测试类 中的操作步骤为顺序,先用到的类和接口先出现。
阅读全文 »

Java的数据库连接接口:JDBC

发表于 2019-08-01 更新于 2020-01-30 分类于 Java , JDBC
本文字数: 20k 阅读时长 ≈ 18 分钟

JDBC简介

  • 概念

    • Java DataBase Connectivity,Java 数据库连接。

    • JDBC是sun公司定义的一套操作所有关系型数据库的规则,即接口。

    • 各个数据库厂商去编写这套接口的实现类,包装成数据库驱动jar包。通过导入不同数据库厂商编写的数据库驱动jar包,来对JBDC接口进行实现。

阅读全文 »

MyBatis框架(1) —— 入门案例

发表于 2019-08-01 更新于 2020-01-31 分类于 Java , MyBatis
本文字数: 24k 阅读时长 ≈ 22 分钟

内容简介

本文是对MyBatis的基础操作方式进行的演示,包括MyBatis环境搭建,以及一些细节知识点。
我们会发现其实各种操作方式的步骤大同小异,因为究其根源它们实现的都是相同的功能。
为了让大家能更好的理解,我们来试着分析一下MyBatis究竟帮我们实现了什么样的功能。

  • 连接MySQL数据库的功能
  • 连接持久层接口的功能
    • 通过映射配置文件的方式
    • 通过注解的方式
  • 实现持久层接口的功能
    • 创建持久层接口实现类
    • 使用代理的持久层接口实现类

思维导图

MyBatis入门

阅读全文 »

Mybatis框架(5) —— CRUD操作的源码分析

发表于 2019-07-31 更新于 2020-01-31 分类于 Java , MyBatis
本文字数: 583 阅读时长 ≈ 1 分钟

简介

  • 代理持久层实现类(ProxyDao)
    • 通过动态代理增强代码,自动获取 SqlSession类,并调用 selectOne方法、selectList方法、insert方法、update方法、delete方法。
      -
  • 手动编写持久层实现类(MyDao)
    • 手动获取 SqlSession类,并用 selectList方法、selectOne方法、insert方法、update方法、delete方法。
  • CRED方法分析
    • SqlSession接口
      • selectOne方法 实际上调用的是 selectList方法,
      • insert方法、delete方法 实际上调用的是 update方法,
    • Executor接口
      • query方法
      • update方法
    • StatementHandler接口
      • query方法
      • update方法
    • PreparedStatement接口
      • execute方法
        • 执行 CRUD语句
        • 返回值:有结果集是 true,没有结果集是 false
      • executeUpdate方法
        • 执行 CUD语句
        • 返回值:数据库中受影响记录的行数
      • executeQuery方法
        • 执行 SELECT语句
        • 返回值:ResultSet 结果集对象

源码展示

![源码](5.CRUD操作 源码分析/MyBatis CRUD操作 源码分析.jpg)

Java的反射机制

发表于 2019-07-25 更新于 2020-01-30 分类于 Java
本文字数: 7.3k 阅读时长 ≈ 7 分钟

基础知识

概念

  • 反射是框架设计的灵魂。
  • 反射机制就是将类的各个组成部分封装为其他对象。

    优势

  • 可以在程序运行过程中,操作这些对象。
  • 可以解耦,提高程序的可扩展性。
阅读全文 »

MySQL

发表于 2019-07-24 更新于 2020-01-30 分类于 数据库 , MySQL
本文字数: 6.3k 阅读时长 ≈ 6 分钟

基础知识

数据库

  • 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。
  • 每个数据库都有一个或多个不同的 API 用于创建,访问,管理,搜索和复制所保存的数据。
  • 我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。
  • 所以,现在我们使用关系型数据库管理系统(RDBMS)来存储和管理的大数据量。所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。
  • RDBMS 即关系数据库管理系统(Relational Database Management System)的特点:
    1. 数据以表格的形式出现
    2. 每行为各种记录名称
    3. 每列为记录名称所对应的数据域
    4. 许多的行和列组成一张表单
    5. 若干的表单组成database
阅读全文 »

关于JS中的函数是否加括号的问题

发表于 2019-07-22 更新于 2020-02-03 分类于 JavaWeb , JavaScript
本文字数: 1.1k 阅读时长 ≈ 1 分钟

函数表达式的定位

本文相关的概念:函数,函数表达式,返回值。

函数:函数名为Fun的函数。
函数表达式:Fun() 和 fun。
返回值:即函数Fun的返回值。

首先,需要明确的概念是:函数表达式的定位。
不同的定位决定了不同的功能,以下是我列出来的函数表达式及其定位。
我会在详细表述表达式时,附上便于理解的代码。

函数表达式 定位
function() 调用函数、返回返回值
function 函数的副本
阅读全文 »

高性能的Key-Value数据库:Redis

发表于 2019-07-21 更新于 2020-01-30 分类于 数据库 , Redis
本文字数: 8.5k 阅读时长 ≈ 8 分钟

NoSQL概念

  • NoSQL(NoSQL = Not Only SQL),意即“不仅仅是SQL”,是一项全新的数据库理念,泛指非关系型的数据库。
  • 随着互联网web- 0网站的兴起,传统的关系数据库在应付web- 0网站,特别是超大规模和高并发的SNS类型的web- 0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题。
阅读全文 »

JavaScript的对象表示法:JSON

发表于 2019-07-20 更新于 2020-02-03 分类于 JavaWeb , JavaScript , Json
本文字数: 3.4k 阅读时长 ≈ 3 分钟

概念

  • JSON:JavaScript 对象表示法(JavaScript Object Notation)
  • JSON现在多用于存储和交换文本信息的语法,进行数据的传输。
  • JSON 比 XML 更小、更快,更易解析。
  • 注意:JSON 虽然使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。
    1
    2
    3
    4
    5
    6
    7
    {
    "employees": [
    { "firstName":"Bill" , "lastName":"Gates" },
    { "firstName":"George" , "lastName":"Bush" },
    { "firstName":"Thomas" , "lastName":"Carter" }
    ]
    }
阅读全文 »
1…4567
water.

water.

Few words,many deeds.
68 日志
21 分类
43 标签
GitHub E-Mail
Links
  • 残夜
  • Morty
  • Tmiracle
  • Dxoca
  • BlankYk
  • UncleGood
0%
© 2018 – 2020 water. | 658k | 9:58
|