自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

南柯

书山有路勤为径,学海无涯苦作舟

  • 博客(92)
  • 收藏
  • 关注

原创 Sql视图

视图(view)是一个由select查询所定义出来的虚拟表。语法:可以基于一个表、多个表或者另外一个视图来创建新的视图,被视图引用的表通常为“基础表”。sql中使用create view语句来创建视图。视图的概念 创建视图其实就是给select查询起了一个名字而已,并不会真正的执行select语句,更不会产生结果集。除非为视图添加索引(index),否则视图就是一段存储在内存中的select语句的文本,他没有任何数据存储到物理数据中。只有当使用视图时,数据库引擎才会...

2021-11-22 17:00:36 699

原创 RDBMS

RDBMS 是关系数据库管理系统,他是sql语言以及所有现代数据库系统的基础。关系数据库管理系统是一种基于E.F.Codd发明的关系模型的数据库管理系统。Table 在RDBMS中,数据被存储在一种成为表的数据库对象中,他是由多行多列构成。每一行都是一条数据,每一列都是数据的一个属性,整个表就是若干调相关数据的集合。表是关系型数据库中最常见、最简单的数据库存储形式。FIeld 每个表都有若干列构成,每一列都成为一个字段。字段用来...

2021-11-19 15:57:57 2041

原创 sql概述

sql是一直操作数据库的语言,包括创建数据库、删除数据库、查询记录、修改记录、添加字段等。sql虽然是一种被ANSI标准化的语言,但是它有很多不同的版本。(ANSI是 American National Standards Institute 的缩写,中文译为“美国国家标准协会”) sql是Structured Query Language的缩写,中文译为“结构化查询语言”。sql是一种计算机语言,用来存储、检索和修改关系型数据库中存储的数据...

2021-11-19 15:28:32 1108

转载 kafka 学习笔记

一、概述Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务等等,Linkedin于2010年贡献给了Apache基金会并成为顶级开源项目。主要应用场景是:日志收集系统和消息系统。Kafka主要设计目标如下:以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间的访问性能。 高吞吐率。即使在非常廉价的商用机器

2021-02-01 15:38:00 261

原创 关于 oracle 语法中 where 1=1 的写法心得

where 1=1 对性能的影响很多时候,使用where 1=1 可以很方便的解决我们的问题,但是这样很可能会造成非常大的性能损失,因为添加使用了 “where 1=1 ”的过滤条件以后数据库系统就无法上使用索引等查询优化策略,数据库系统将会被迫 对每行数据进行扫描(也即是全表扫描) 以比较此行是否满足过滤条件,当表中的数据量较大时候 查询速度会非常慢。因此如果对性能有比较高的要求就不要使用这种简便的方式了。...

2021-02-01 11:40:54 1304

转载 分布式调度杂谈

对于规模以上的应用来说,调度系统已经是必不可少的组成部分,尤其是在基于数据分析的后台应用大量增长的今天,健壮的调度任务管理已经是非常重要的一环,因此多花时间来分析研究调度系统的设计对于日常开发与运维具有比较重要的意义。调度问题从何而来? 当你的网站是一个简单的blog,并且不需要跟外部交互的时候,你大概不需要调度任务,因为此时网站需要处理的任务仅限于即时交互,即用户想要使用一个功能,你立即给他就是了,如同你在网络上编辑一篇文章,点击保存,这篇文章就保存到网站的后台服务器中去了,这也是互联网刚出...

2020-05-12 15:08:21 390

原创 xxl-job轻量级分布式调度框架

简介xxl-job是一个分布式任务调度平台,其核心设计目标是开发迅速,学习简单,轻量级,易扩展。特性简单:支持通过web页面对任务进行crud操作,操作简单,上手迅速。 动态:支持动态修改任务状态,启动、停止任务,以及终止运行中任务,及时生效。 调度中心HA(中心式):调度采用中心式设计,“调度中心”自研调度组件并支持集群部署,可保证调度中心HA。 执行器HA(分布式):任务分布式执行,任务“执行器”支持集群部署,可保证任务执行HA。 祖册中心:执行器会周期性自动注册服务,调度中心将会自

2020-05-12 09:42:23 221

原创 spring——入门(一)

Spring概述Spring是什么?Spring是分层的javaSE/EE应用full-stack轻量级开源框架,以IOC(Inverse Of Control:反转控制)和AOP(Aspect Oriented Programming:面向切面编程)为内核,听了展现层SpringMVC和持久层SpringJDBC以及业务层事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框...

2019-11-03 14:40:28 203

原创 JDBC快速入门、JDBC接口和类详解

JDBCJava DataBase Connectify Java 数据库连接,Java操作数据库。JDBC本质:其实是Sun公司定义的一套操作所有关系型数据库的规则,即接口,各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。快速入门1. 导入驱动jar包 mysql-connector-java-5...

2019-10-24 18:13:24 203

原创 多表查询、事务、DCL

多表查询查询语法:select 列名列表 from 表名列表 where....笛卡尔积:有两个集合A、B,取这两个集合的左右组成情况。 要完成多表查询,需要消除无用的数据。多表查询的分类 内连接查询 隐式内连接:使用where条件消除无用数据查询所有员工信息和对应的部门...

2019-10-24 17:57:25 182

原创 MySQL——DQL查询语句、约束、设计

DQL查询语句 排序 通过order by 字句,可以将查询出的结果进行排序(排序只是显示方式,不会影响数据库中数据的顺序)。select 字段名 form 表名 where 字段=值 order by 字段名 [asc|desc];ASC:升序,默认值DESC:降序注意:如果有多个排序条件,则当前面的条件值一样时,才会判断第二条件。 单列排序 只按某一个字...

2019-10-21 15:18:03 194

原创 数据库基本概念

数据库的基本概念数据库英文单词:DataBase 简称:DB什么是数据库? 用于存储和管理数据的仓库。数据库的特点:持久化存储数据的。其实数据库就是一个文件系统。 方便存储和管理数据 使用了统一的方式操作数据库 --sqlMySQL数据库软件1、安装2、卸载去mysql的安装目录找到my.ini文件 复制--datadir="C:/ProgramData...

2019-10-19 15:05:49 524

原创 HTML标签—表单标签、CSS

HTML标签—表单标签 表单:概念:用于采集用户输入的数据。用于和服务器进行交互。form:用于定义表单的。可以定义一个范围,范围代表采集用户数据的范围。属性:action:指定提交数据的URLmethod:指定提交的方式。get post 请求参数会在地址栏中显示。会封装到请求行中 请求参数不会在地址栏中显示,会封装在请求体中 请求参数...

2019-10-16 01:20:29 197

原创 正则表达式

正则表达式:regular expression正则表达式仅仅是用来处理字符串的,它的特长在于处理复杂的字符串。正则表达式的作用 通过正则表达式定义的模型(规则/模式)去验证某个字符串是否和模型匹配。 通过正则表达式定义的模型(规则/模式)去把和模型匹配的字符串找出来。 如何定义正则表达式先看一个例子:var reg = /abcd/; 这个叫做对象直...

2019-10-16 00:59:12 229

原创 Web与HTML

Web概念概述 JavaWeb: 使用Java语言开发基于互联网的项目 软件架构 C/S:Client/Server 客户端/服务器端在用户本地有一个客户端程序,在远程有一个服务器端程序。如:QQ,迅雷...优点: 用户体验好 缺点: 开发、安装,部署,维护 麻烦。B/S: Browser/Server 浏览器/服务器端只需要一个浏览器,用户通过...

2019-10-12 00:32:08 633

原创 Java—String类、static关键字、Arrays类、Math类

String类 String类概述 java.lang.String类代表字符串。Java程序中所有的字符串文字都可以被看做是实现此类的实例。类String中包括用于检查各个字符串的方法,比如用于比较字符串,搜索字符串,提取字符串以及创建具有翻译为大写小写的所有字符的字符串的副本。 特点 字符串不变:字符串的值在创建后不能被更改。String s1 = "abc";...

2019-10-05 18:05:19 135

原创 Java—网络编程

网络编程入门 软件结构 C/S结构:全程为:Client/Server结构,是指客户端和服务器结构。常见程序有QQ、迅雷等软件B/S结构:全程为Browser/Server结构,是指浏览器和服务器结构。常见的浏览器有谷歌,火狐等。两种架构各有优势,但是无论哪种架构,都离不开网络的支持。网络编程,就是在一定的协议下,实现两台计算机的通信的程序。 网络通信协议 网络...

2019-10-02 22:32:28 208

原创 GoF的23种设计模式的分类和功能

设计模式有两种分类方法,即根据模式的目的来分和根据模式的作用范围来分。 根据目的来分 根据模式是用来完成什么工作来划分,这种方式可分为创建型模式、结构性模式和行为模式3种。创建型模式:用于描述“怎样创建对象”,它的主要特点是“将对象的创建与使用分离”。GoF中提供了单例、原型、工厂方法、抽象工厂、建造者等5种创建型模式。 结构性模式:用于描述如何将类或对象按某种布局组成更加的结构,...

2019-10-01 23:29:28 244

原创 软件设计模式概述

设计模式(Design Pattern)是前辈们对代码开发经验的总结,是解决特定问题的一系列套路。它不是语法规定,而是一套用来提高代码可复用性、可维护性、可读性、稳健性以及安全性的解决方案。1995年,GoF合作出版了《设计模式:可复用面向对象软件的基础》一书,共收录了23种设计模式,从此树立了软件设计模式领域的里程碑,人称【GoF设计模式】。这23种设计模式的本质是面向对象设计原则的实际...

2019-09-30 22:41:41 257

转载 Java—Map集合案例之模拟斗地主洗牌

案例介绍按照斗地主的规则,完成洗牌发牌的动作。具体规则:组装54张扑克牌将 54张牌顺序打乱 三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张留作底牌。 查看三人各自手中的牌(按照牌的大小排序)、底牌规则:手中扑克牌从大到小的摆放顺序:大王,小王,2,A,K,Q,J,10,9,8,7,6,5,4,3案例需求分析准备牌: 完成数字与纸牌的映射关系:使用双列M...

2019-09-27 21:54:49 192

原创 Java—Debug追踪之IDEA断点调试

Debug追踪使用IDEA的断点调试功能,查看程序的运行过程1. 在有效代码行,点击行号右边的空白区域,设置断点,程序执行到断点将停止,我们可以手动来运行程序2. 点击Debug运行模式3. 程序停止在断点上不再执行,而IDEA最下方打开了Debug调试窗口4. Debug调试窗口介绍5. 快捷键F8,代码向下执行一行,第九行执行完毕,执行到第10行(第1...

2019-09-27 21:24:36 2782

原创 Java—JDK9对集合的优化

JDK9对集合添加的优化通常,我们在代码中创建一个集合(例如,List 或 Set ),并直接用一些元素填充它。 实例化集合,几个 add方法调用,使得代码重复。public class Demo01 {public static void main(String[] args) {List<String> list = new ArrayList<>();...

2019-09-27 21:07:14 255

原创 Java—Map集合

Map集合 概述 现实生活中,我们常会看到这样的一种集合:IP地址与主机名字,身份证号与个人,系统用户与系统用回对象等,这种一一对相应的关系,就叫做映射。Java提供了专门的集合类用来存放这种对象关系的对象,即java.uitl.Map接口我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它们存储数据的形式不同,如下图:Collectio...

2019-09-27 20:59:30 123

转载 集合迭代时对集合进行修改抛ConcurrentModificationException原因的深究以及解决方案

大家应该都知道, 在java中, 在对一些集合迭代的过程中对集合进行一些修改的操作, 比如说add,remove之类的操作, 搞不好就会抛ConcurrentModificationException, 这一点在API文档上也有说的!在迭代时只可以用迭代器进行删除!但是文档上只是说了删除,其他操作也会引起ConcurrentModificationException,这是为何呢...

2019-09-26 15:29:52 201 1

原创 Java—缓冲流、转换流、序列化流

缓冲流 概述缓冲流,也叫高效流,是对4个基本的Filexxxx流的增强,所以也是4个流,按照数据类型分类:字节缓冲流:BufferedInputStream,BufferedOutputStream。 字符缓冲流:BufferedReader , BufferedWriter。缓冲流的基本原理,是在创建对象时,会创建一个内置大小的默认的缓冲区数组,通过缓冲区读写,减少系统OI次...

2019-09-25 14:36:50 112

原创 Lambda表达式

函数式编程思想概述在数学中,函数就是有输入量、输出量的一套计算方案,也就是“拿什么东西做什么事情”。相对而言,面向对过分强调“必须通过对象的形式来做事情”,而函数式思想则尽量忽略面向对象的复杂语法——强调做什么,而不是以什么形式做。面向对象的思想:做一件事情,找一个能解决这个事情的对象,调用对象的方法,完成事情。 函数式编程思想:只要能获取到结果,谁去做的,怎么做的都不重要,重要的...

2019-09-24 23:04:12 8623 3

原创 Java—线程池

等待唤醒机制 线程之间通信 多个线程在处理同一个资源,但是处理的动作(线程的任务)却不相同。比如:线程A用来生成包子的,线程B用来吃包子的,包子可以理解为同一资源,线程A与线程B的处理动作,一个是生产,一个是消费,那么线程A与线程B之间就存在线程通信问题。为什么要处理线程间的通信:多个线程并发执行时,在默认情况下CPU是随机切换线程的,当我们需要多个线程来共同完成一件任务...

2019-09-24 22:38:05 191

原创 Java—线程状态

线程状态概述当线程被创建并启动后,它既不是一启动就进入了执行状态,也不是一直处于执行状态。在线程的生命周期中,有几种状态呢?在API中java.lang.Thread.State这个枚举中给出了六种线程状态。线程状态 导致状态发生的条件 NEW(新建) 线程刚被创建,但是并未启动。还没调用start方法。 Runnable(可运行) 线程在java...

2019-09-24 15:54:41 90

原创 Java—线程和同步

多线程在之前的学习中,学习的程序在没有跳转语句的前提下,都是由上至下依次执行,现在想要设计一个程序,边打游戏边听歌,如何设计?要解决上述问题,我们就需要使用多进程或者多线程来解决。并发与并行:并发:指两个或多个事件在同一个时间段内发生。 并行:指两个或多个时间在同一时刻发生(同时发生)。Tips:单核处理器的计算机是不能够多个处理多个任务的,只能是多个任务在CPU上并发执...

2019-09-24 15:09:33 162

原创 Java—IO流

IO流java.io包下的内容,进行输入和输出的操作。输出:写入数据。 输入:读取数据。输入流:把数据从其他设备上读取到内存中的流。输入流:把数据从内存中写入到其他设备的流。字节流:以字节为单位,读写数据的流。 字符流:以字符为单位,读写数据的流。流:数据(字符、字节)。1个字符=2个字节。 1个字节=8个二进制位。数据存储以“字节”为单位(byte),数据...

2019-09-23 22:22:31 95

原创 Class.forName和Classloader的区别

JVM类加载图例:如图所示:这是java JVM类装载过程,Java是如何被加载到JVM中被识别的呢?其中分为三步: 装载:(loading):找到class对应的字节码文件。 连接:(linking):将对应的字节码文件读到JVM中。 初始化:(initializing):对class做相应的初始化动作。 Java中两种加载class到JVM中的方式:...

2019-09-22 23:10:21 226

原创 Java—递归应用

递归 概述 递归的分类:递归分为两种,直接递归和间接递归。 直接递归成为方法自身调用自己。 间接递归可以A方法调用B方法,B方法调用C方法,C方法调用A方法。注意事项:递归一定要有条件限定,保证递归能够停下来,否则会发生栈内存溢出。 在递归中虽然有限定条件,但是递归的次数不能太多,否则也会发生栈内存溢出。 构造方法,禁止递归。public class Demo01D...

2019-09-22 13:59:40 278

原创 Java—File类

File类 概述 java.io.File类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。 构造方法 public File(String pathName):通过将给定的路径名的字符串转换为抽象路径名来创建新的File实例。 public File(String parent,String child):从父路径名字符串和子路径名字符串创建新的...

2019-09-22 13:29:00 113

原创 Java—异常

异常的概念异常,就是不正常的意思。在生活中:医生说你的身体某个部位有异常,该部位和正常相比有些不同,该部位的功能将会受到影响,在程序中的意思就是:异常:指的是在程序执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。在Java面向对象的编程语言中,异常本身就是一个类,产生异常就是创建异常对象并抛出了一个异常对象。Java处理异常的方式就是中断处理。异常指的并不是语法错误,...

2019-09-20 14:21:13 91

转载 算法时间复杂度和空间复杂度计算

算法,即解决问题的方法。同一个问题,使用不同的算法,虽然得到的结果相同,但是耗费的时间和资源是不同的。就比如要拧一个螺母,使用扳手还是钳子是有区别的,虽然使用钳子也能拧螺母,但是没有扳手好用。“条条大路通罗马”,解决问题的算法有多种,这就需要判断哪个算法“更好”。算法vs程序很多人误以为程序就是算法,其实不然:算法是解决某个问题的想法、思路;而程序是在心中有算法的前提下编写出来的可以运...

2019-09-20 00:40:25 142

原创 Java—Collections集合工具类

常用功能java.util.Collections是集合工具类,用来对集合进行操作。部分方法如下:public static <T> boolean addAll(Collection<T> c,T...elements):往集合中添加一些元素。 public static void shuffle (List<?> list):打乱集合顺序。 pu...

2019-09-19 13:47:13 169

原创 Java—Set接口

java.util.Set接口和java.util.List接口一样,同样继承自collection接口,它与collection接口中的方法基本一致,并没有对Collection接口进行功能上的扩充,只是比collection接口更加严格了。与List接口不同的是,Set接口中的元素无序,并且都会以某种规则保证存入的元素不出现重复。Set集合有多个子类,我们介绍其中的java.util.Ha...

2019-09-19 13:20:59 223

原创 常用数据结构详解

数据结构大致包含以下几种存储结构:线性表,还可以细分为顺序表、链表、栈和队列。 树结构,包括普通树、二叉树、线索二叉树等。 图存储结构。线性表线性表结构存储的数据往往是可以依次排列的,就像小朋友手拉手,每位学生的前面和后面都仅有一个小朋友和他拉手,具备这种“一对一”关系的数据就可以使用线性表来存储。例如,存储类似 {1,3,5,7,9} 这样的数据时,各元素依次排列,每...

2019-09-19 00:51:34 353

原创 什么是数据结构

数据结构,直白地理解,就是研究数据的存储方式。数组存储只有一个目的,即为了方便后期对数据的再利用,就如同我们使用数组存储{1,2,3,4}是为了后期取得他们的加和值,无缘由的数据存储行为是对存储空间的不负责任。因此,数据在计算机存储空间的存放,绝不是胡乱的,这就要求我们选择一种好的方式来存储数据,而这也是数据结构的核心。例如,一直以来大家面对的数据存储,都是类似存储 1、2、{a,...

2019-09-19 00:21:56 243

原创 Java—List集合

List集合 List接口介绍 java.util.List接口继承自Collection接口,是单列集合的一个重要分支,习惯性地会将实现了List接口对象成为List集合。在LIst集合中允许出现重复的元素,所有的元素是一种线性方法进行存储的,在程序中可以通过索引来访问集合中指定的元素。另外List集合还有一个特点就是元素有序,即元素存入和取出的顺序一致。List集合的特点...

2019-09-17 13:56:34 125

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除