JAVA常见数据库操作API

这篇文章仅用于补充:JAVA代码审计的一些Tips(附脚本)一文中关于SQLi中不足部分

JDBC常用API

DriverManager:用于管理JDBC驱动的服务类。主要功能是获取Connection对象

Connection:代表数据库连接对象。每一个Connection代表一个物理连接会话

Statement:用于执行SQL语句的工具接口。该对象既可以执行DDL,DCL语句,也可以执行DML语句 ,还可以用于执行SQL查询

PreparedStatement:预编译的Statement对象,它允许数据库预编译sql语句,以后每次只改变sql命令的参数,避免数据库每次都需要编译sql语句,无需再传入sql语句,

它比Statement多了以下方法

Hibernate框架常用API

Configuration:负责Hibernate的配置信息。包括运行的底层信息:数据库的URL、用户名、密码、JDBC驱动类,数据库Dialect,数据库连接池等 和持久化类与数据表的映射关系(*.hbm.xml文件)

SessionFactory:Configuration对象根据当前的配置信息生成SessionFactory对象,SessionFactory对象中保存了当前数据库的配置信息和所有映射关系以及预定义的SQL语句,同时还负责维护Hibernate的二级缓存

Session:是应用程序与数据库之间交互操作的单线程对象。session对象有一个一级缓存,显式执行flush之前,所有的持久层操作的数据都缓存在session对象处。相当于JDBC的Connection

Transaction:具有数据库事务的概念,所有持久层都应该在事务管理下进行,即使是只读操作

Query: 用于从数据存储源查询对象及控制执行查询的过程,Query对象包装了一个HQL查询语句。Query对象在session对象关闭之前有效,否则会抛出Sessionexception异常

Criteria

SpringJdbc常用API

JdbcTemplate: Spring对JDBC最低级别的封装,其他的工作模式 事实上在底层使用了JdbcTemplate作为其底层的实现基础

NamedParameterJdbcTemplate:对JdbcTemplate做了封装,提供了更加便捷的基于命名参数的使用方式

Mybatis常用API

SqlSessionFactory:是单个数据库映射关系经过编译后的内存镜像,其主要作用是创建SqlSession对象

SqlSession: 应用程序与持久层之间执行交互操作的一个单线程对象,其主要作用是执行持久化操作

Spring data JPA

Spring Data JPA 简化持久层开发大致需要如下三个步骤

在持久层的接口中声明需要的业务方法,Spring Data JPA将会根据指定的策略为该方法生成实现代码。用户不需要实现该接口

在Spring的配置文件中添加配置,为声明的接口设定代理对象

获得并使用repository的实例

Respository: 是SpringData的核心接口,并不提供任何方法,用户需要自己定义需要的方法

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171221B033L900?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券