java 重新学习 (七)
一、mysql的InnoDB通过建立行级索确保事务完整性。,并以Oracle风格的共享锁来处理select语句。系统默认存储为InnoDB.
二、
-- mysql 创建表
CREATE TABLE IF NOT EXISTS `runoob_tbl`(
`runoob_id` INT UNSIGNED AUTO_INCREMENT,
`runoob_title` VARCHAR(100) DEFAULT 'LWS' NOT NULL,
`runoob_author` VARCHAR(40) NOT NULL,
`submission_date` DATE,
PRIMARY KEY ( `runoob_id` )
)
如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。
AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。
PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔。 -- 删除表
DROP TABLE table_name ;
TRUNCATE TABLE; 清空表数据保留表结构
--修改表
ALTER TABLE testalter_tbl
MODIFY j BIGINT NOT NULL DEFAULT 100;
三、常用函数
ifnull(a,b) 如果a为null,则返回b
nullif(a,b)如果 a,b相等, 返回null。否则返回a
if(a,b,c) 如果 a 为true,不等于0,且不等于null返回 b 否则返回c。
isnull(a) 判断a 是否为空。
case when age <=12 then ‘小孩’
when age > 12 and age<=18 then ‘少年’
end;
四、PreparedStatement Statement CallableStatement(用于执行存储过程)
executeQuery(String sql) 该方法执行查询语句,并且返回查询结果对应的ResultSet对象
executeUpdate(String sql)该方法执行DML语句返回受影响的行数,执行DDL返回0;
execute 可执行任何sql,执行后第一个结果为ResultSet对象则返回true;如果执行后第一个结果为受影响行数或者没有任何结果,返回false;
executeLargeUpdate statement对象操作任何一条sqk影响的记录数大于Integer.MAX_VALUE 就应该使用executeLargeUpdate,放弃executeUpdate。
setBinaryStream(int parameterIndex,InputStream x) 指定参数传入二进制流,从而实现blob数据保存到数据库的功能。
五、PreparedStatement 预编译sql语句性能更好,防止sql注入 。
六、CallableStatement 调用存储过程 callableStatement.prepareCall(" {call 过程名称(?,?,?,?)} ");
七、事务:原子性,一致性,隔离性,持久性。
八、Connection 遇到一个未处理的SQLException异常时,系统将会非正常退出,事务也会自动回滚。但如果程序捕获了该异常,则需要在异常处理块中显示地回滚事务。
九、Java8增强的批量更新,
批量更新必须得到底层数据库的支持,通过DatabaseMetaData的supportsBatchUpdates() 方法来查看底层数据库是否支持、
十、利用资源池用于解决频繁请求,释放造成的性能下降。连接池程序启动时就建立足够的数据库连接,并将这些连接组成一个连接池。每次请求数据库请求数据库连接时么无须重新打开连接,而是从连接池中取出已有的连接使用,使用完后不再关闭数据库连接,而是直接将连接归还给连接池。
java 重新学习 (七)的更多相关文章
- JAVA多线程学习七-线程池
为什么用线程池 1.创建/销毁线程伴随着系统开销,过于频繁的创建/销毁线程,会很大程度上影响处理效率 例如: 记创建线程消耗时间T1,执行任务消耗时间T2,销毁线程消耗时间T3 如果T1+T3> ...
- java web 学习七(HttpServletResponse对象1)
Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象.request和response对象即然代表请求和响应,那我们要 ...
- Java基础学习(七) - 异常处理
1.异常概念 异常指的是程序在执行过程中出现的非正常的情况,导致JVM的非正常停止.在Java中,异常是一个类,产生异常就是创建异常对象并抛出一个异常对象. 异常指的并不是语法错误,语法错误,编译不会 ...
- Java开发学习(七)----DI依赖注入之自动装配与集合注入
一.自动配置 上一篇博客花了大量的时间把Spring的注入去学习了下,总结起来就两个字麻烦.麻烦在配置文件的编写配置上.那有更简单方式么?有,自动配置 1.1 依赖自动装配 IoC容器根据bean所依 ...
- Java进阶学习:将文件上传到七牛云中
Java进阶学习:将文件上传到七牛云中 通过本文,我们将讲述如何利用七牛云官方SDK,将我们的本地文件传输到其存储空间中去. JavaSDK:https://developer.qiniu.com/k ...
- Java NIO 学习笔记(七)----NIO/IO 的对比和总结
目录: Java NIO 学习笔记(一)----概述,Channel/Buffer Java NIO 学习笔记(二)----聚集和分散,通道到通道 Java NIO 学习笔记(三)----Select ...
- 201871010106-丁宣元 《面向对象程序设计(java)》第七周学习总结
201871010106-丁宣元 <面向对象程序设计(java)>第七周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nwn ...
- Java IO学习笔记七:多路复用从单线程到多线程
作者:Grey 原文地址:Java IO学习笔记七:多路复用从单线程到多线程 在前面提到的多路复用的服务端代码中, 我们在处理读数据的同时,也处理了写事件: public void readHandl ...
- Java Web 学习路线
实际上,如果时间安排合理的话,大概需要六个月左右,有些基础好,自学能力强的朋友,甚至在四个月左右就开始找工作了.大三的时候,我萌生了放弃本专业的念头,断断续续学 Java Web 累计一年半左右,总算 ...
- Java多线程学习(转载)
Java多线程学习(转载) 时间:2015-03-14 13:53:14 阅读:137413 评论:4 收藏:3 [点我收藏+] 转载 :http://blog ...
随机推荐
- day50 初识JavaScript
一.背景介绍 (一)web开发的三种样式: 结构:HTML:从语义的角度,描述页面结构 样式:CSS:从审美的角度,描述样式(美化页面) 行为(动态)JavaScript:从交互的角度,描述行为(用于 ...
- ERROR in Template execution failed: ReferenceError: htmlwebpackPlugin is not defined
ejs文件配置如下: <!DOCTYPE html> <html lang="zh-CN"> <head> <title>webpa ...
- elasticsearch 基础 —— Jion父子关系
前言 由于ES6.X版本以后,每个索引下面只支持单一的类型(type),因此不再支持以下形式的父子关系: PUT /company { "mappings": { "br ...
- simple_pt时遇到的问题
elf.c:30:18: fatal error: gelf.h: No such file or directory 安装libelf-dev 遇到找不到ldwarf apt-cache sear ...
- JavaScript面向对象编程(1)-- 基础
自从有了Ajax这个概念,JavaScript作为Ajax的利器,其作用一路飙升.JavaScript最基本的使用,以及语法.浏览器对象等等东东在这里就不累赘了.把主要篇幅放在如何实现JavaScri ...
- phpstorm ftp不能连接服务器
环境: ubuntu phpstorm 问题一. 服务器ftp功能没有开启 解决方法:在服务器上安装 ftp 服务 https://i.cnblogs.com/EditPosts.aspx?posti ...
- Spring入门-框架搭建
步骤: 导包 四个核心包: 日志包:由于市场上已经有更好的日志包,所以spring不用自己的,而是用apache的日志. 搞对象 由于spring是用来装对象的容器,所以得搞个对象让它装 书写配置文件 ...
- CentOS7.5常用命令
常用命令: 关机shutdown -h now 参数:重启-r定时-r 23:59 分-r 10 查源软件yum list |grep telnet参数:安装install 服务启动systemctl ...
- Adblock Plus 添加过滤规则
过滤掉相关的DIV 如要过滤某网站的 如例1: home.firefoxchina.cn##div#module-game##元素#名字 过滤掉ID为名字的元素##div.名字 class为名字的D ...
- boost circularBuffer
1. circular buffer has two fundamental properties: (1): The capacity of the circular buffer is const ...