自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

转载 mysql事务及细粒度锁

MySQL事务及细粒度锁四种事务隔离级别事物的基本要素事务的并发问题四种事务隔离级别四种事务隔离级别事物的基本要素原子性(Atomicity):事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节。事务执行过程中出错,会回滚到事务开始前的状态,所有的操作就像没有发生一样。也就是说事务是一个不可分割的整体,就像化学中学过的原子,是物质构成的基本单位。一致性(Consistency):事务开始前和结束后,数据库的完整性约束没有被破坏 。比如A向B转账,不可能A扣了钱,B却没收到。隔

2021-07-16 16:19:47 300 1

原创 CMake学习笔记

CMake学习笔记什么是CMake什么是CMakeCMake用于跨平台的编译系统,对于通常的c/c++工程,都是通过make来进行编译的,CMake可以通过指令生成Makefile文件来指导整个项目的编译过程。CMake项目组还有其他的工具来完成项目的打包部署以及测试。...

2021-05-29 20:25:01 248

原创 PythonWeb开发--Django框架

文章目录1.MVC与MTVMVCMTV2.Django的下载与基本命令(Mac)2.1下载2.2 创建一个Django项目2.3在mysite项目下创建应用2.4启动jango项目1.MVC与MTVMVCWeb服务器开发领域里著名的MVC模式,所谓MVC就是把Web应用分为模型(M),控制器©和视图(V)三层,他们之间以一种插件式的、松耦合的方式连接在一起,模型负责业务对象与数据库的映射(ORM),视图负责与用户的交互(页面),控制器接受用户的输入调用模型和视图完成用户的请求,其示意图如下所示:

2020-11-03 15:56:46 1335 1

原创 Phase4 JavaEE Day4 FileUpLoad

文章目录FileUpload1.如何进行文件上传2.用第三方组件完成工作FileUpload1.如何进行文件上传method postInput type file此时选择一个图片进行上传此时可以发现文件没有真正的被上传,上传的只有文件的名称而已。解决方案: form表单添加一个enctype=multipart/form-data属性。此时再抓包,发现已经有在真正的上传文件了。编写IO代码,处理文件文件保存到服务器硬盘上,发现文件损坏,无法打开。此时换一个方向:txt文本

2020-05-22 19:35:07 108

原创 Phase4 JavaEE Day3 Request&Response

文章目录request1.post和get乱码问题2. 表单路径的写法3.转发包含3.1 路径写法3.2转发包含之间的区别request域response1.响应字符数据request1.post和get乱码问题POST:为什么服务端设置utf-8呢?因为页面的meta标签有一个charset=utf-8,前后端保持一致。设置第一行代码就ok了,但是这行代码必须要写在获取请求参数之前。get:前提:使用的是tomcat8版本,然后页面使用的编码格式是utf-8,这个时候是不存在乱码问题的2

2020-05-21 18:25:27 115

原创 Phase4 JavaEE Day2 Servlet & Request

文章目录Servlet1.servlet生命周期2.idea和tomcat关联3.Servlet1.servlet生命周期init:当你第一次访问servlet的时候,会执行。后面再次访问,不会被执行。其实只实例化了一个对象。意味着,ThirdServlet在服务器里只有一个对象,每一个servlet类只有一个对象。Service: 每一次请求,都会调用service方法Destroy: 当tomcat服务器关闭;服务器不关闭,应用被卸载。如何卸载应用:1.点击Redeploy,重新部署2.

2020-05-21 00:09:54 131

原创 Phase4 JavaEE Day1 创建Servlet

文章目录Servlet1.开发Servlet的三种模式第一种第二种第三种Servlet1.开发Servlet的三种模式第一种servlet是运行在服务器中的一个程序1.需要新建一个应用2.按照web项目的目录结构,放置class文件3.在web.xml中配置如下代码先手写一段servlet并编译完成编译,生成class字节码文件,然后配置xml文件就可通过http://localhost:8080/first/first访问该页面1.请求被connnector接收到,然后将请求报

2020-05-20 22:37:20 88

原创 Phase3 Day5&6 Vue

文章目录Vue概述HTML中写Vue导入语法规范V 指令计算属性侦听器模板和组件模板 template组件组间传值Vue概述Vue.js:渐进式框架。与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计。Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。另一方面,Vue 完全有能力驱动采用单文件组件和Vue生态系统支持开发复杂单页应用。渐进式:从核心到完备的全家桶增量:从少到多,从一页到多页,从简单到复杂单文件组件: 一个文件描述一个组件单页应用: 经过

2020-05-12 04:10:46 104

原创 Phase4 Day4 JavaScript & DOM

文章目录JS概述变量和声明语言逻辑核心对象1.NumberStringArrayMathBooleanDOMJS概述JavaScript 是一种轻量级的编程语言。JavaScript 是可插入 HTML 页面的编程代码。JavaScript是一种弱类型语言 它的解释器被称为JavaScript引擎,为浏览器的一部分主要用来向HTML(标准通用标记语言下的一个应用)页面添加交互行为。...

2020-05-07 18:37:29 137

原创 Phase3 Day2 css

文章目录css1.概述1.1 在html中引入css2.选择器3.盒子模型3.1 行/块元素转换3.2 边框合并4 浮动float5.定位6.溢出和隐藏(overflow)css1.概述Web的衰弱在web早期(1990-1993),html是一个很局限的语言。几乎完全由用于描述段落,超链接,列表和标题的结构化元素组成。随着万维网的出现(用户交互体验的加强),对html的要求越来越大,人们...

2020-05-06 03:01:54 127

原创 Phase3 Day1 HTMl

文章目录HTML1.概述1.2 HTML模板1.3 HTML中body内部标签hr 横线标签h1-h6 标题标签div 区域标签a 超链接标签p 段落标签img 图片标签input 输入框标签textarea 文本输入控件select 选择下拉框ol 有序列表标签ul 无序列表标签table 表标签formHTML1.概述HTML(hyper text markup language)超文本...

2020-05-05 14:35:35 137

原创 Phase2 Day23 数据库连接池&DbUtils

文章目录数据库连接池MyConnectionPool数据库连接池的优点DbUtils1.简介2.QueryRunner2.1 构造方法2.2 常用API2.3 ResultSetHandler2.3.1 实现类2.4 DbUtils数据库连接池所谓的数据库连接池技术,就是用来分配,管理,释放数据库连接的。我们以前用 JDBC 操作数据库的时候,每次操作完都会将连接关闭。数据库连接是极其宝贵的资...

2020-05-03 15:58:00 128

原创 Phase2 Day22 JDBC

文章目录JBDC单元测试1.概述2.API详解2.1Driver&DriverManager2.2 Statement2.3 PerparedStatementJBDC单元测试在运行方法时,如果没有出现异常,那么测试通过,否则测试不通过对单元测试方法的限制:返回值类型必须是void方法的参数为空方法必须是public1.概述JDBC (Java Data Base ...

2020-05-03 05:31:37 152

原创 Phase2 Day20 事务 && 索引

文章目录事务1.概念2. 基本操作3.事务的性质并发执行时可能产生的问题4.隔离级别InnoDB索引存储引擎1.MySQL架构2.存储引擎2.1 MyISAM2.2 InnoDB2.3Memory3. 磁盘IO原理4.InnoDB数据页格式5.索引5.1 B树索引5.2 B+树索引5.3 索引的优缺点6 InnoDB索引介绍聚集索引事务1.概念从用户的观点来看,数据库中一些操作的集合被认为...

2020-05-02 06:34:57 197

原创 Phase2 Day19 数据库范式设计 & 复杂查询

数据库范式设计范式是数据表设计的基本原则,又很容易被忽略。很多时候,当数据库运行了一段时间之后,我们才发现数据表设计得有问题。重新调整数据表的结构,就需要做数据迁移,还有可能影响程序的业务逻辑,以及网站正常的访问。所以在开始设置数据库的时候,我们就需要重视数据表的设计.范式级别我们在设计关系型数据库模型的时候,需要对关系表各个字段之间联系的合理化程度进行定义,这就有了不同等级的规范要求,这些...

2020-04-27 03:28:54 213

原创 Phase2 Day18 SQL 约束

文章目录约束PRIMARY KEY 主键FOREIGN KEY 外键约束当我们创建数据表的时候,我们需要对它的字段进行一些约束,目的在于保证数据的准确性和一致性常见的约束有以下几种:主键约束,外键约束,唯一性约束,非空约束,DEFAULT约束,以及CHECK约束PRIMARY KEY 主键主键的作用是唯一标识一条记录。所以它不能重复,也不能为空,我们可以认为它是唯一性约束和非空 约...

2020-04-26 21:58:30 120

原创 Phase2 Day17 SQL 数据类型&DMI&DQI

文章目录1.数据类型1.1整数类型1.2 小数类型1.3 日期与时间类型1.4字符串类型1.5 二进制类型1.6 常见运算符2 DMl(数据操作语言)2.1 添加insert2.2 改updateUPDATEdelete数据的的导入和导出(备份和恢复)3 DQl(数据查询语言)3.1计算表达式和函数的值3.2 查询表中字段3.3 where过滤语句3.4 给字段起名3.5 去除重复行3.6 排序3...

2020-04-26 05:03:04 213

原创 Phase2 Day16 数据库SQL

文章目录数据库1 概述数据库1 概述数据库是按照数据结构来组织、存储和管理数据的仓库分类关系型数据库不仅存储数据本身,还存储数据之间的关系,比如说用户信息和订单信息。关系型数据库模型把复杂的数据结构归结为简单的二维表(关系表)非关系型数据库非关系型数据库也被称为NoSQL数据库。NoSQL的产生并不是要否定关系型数据库,而是作为关系型数据库的一个有效补充术语数据库系统...

2020-04-24 02:12:26 145

原创 Phase2 Day14 Collections & RedBlackTree

文章目录1 Collections2 RedBlackTree2.1 234树2.2.1 概述2.2.2 查找2.2.3 插入1 Collections2 RedBlackTree2.1 234树2.2.1 概述在普通的二叉查找树上进行了扩展,它允许有多个键(1~3个)树保持完美平衡(根到每个叶子结点的路径都是一样长)每个结点可以拥有1, 2, 或者3个键2-node:1个键,两...

2020-04-22 17:31:06 139

原创 Phase2 Day13 MyHashMap

文章目录1 符号表2 哈希表2.1 概述2.2 碰撞处理:拉链法MyHashMap1 符号表我们使用符号表这个词来描述一张抽象的表格,我们会将信息(值)存储在其中,然后按照指定的键来搜索并获取这些信息符号表有时也被称为字典。键就是单词,值就是单词对应的定义,发音和词源符号表有时又叫做索引。键就是术语,值就是书中该术语出现的所有页码无序符号表—HashMap有序符号表—TreeMap...

2020-04-21 02:38:04 129

原创 Phase2 Day12 Properties

文章目录1 Properties1.1 概述1.2 API1 Properties1.1 概述Properties 类表示了一个持久的属性集。Properties 可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串因为 Properties 继承于 Hashtable,所以可对 Properties 对象应用 put 和 putAll 方法。但不建议使用这两个方法,因为它...

2020-04-19 16:11:05 131

原创 Phase2 Day11 Set & Map

文章目录1 Set1.1 TreeSet1.1.1概念1.1.2 API2 Map(映射)2.1 概述2.2 API3 HashMap3.1 概述3.2 构造方法HashMap 与 Hashtable4 LinkedHashMap5 TreeMap5.1 概述5.2 TreeMap特有的API1 Set1.1 TreeSet1.1.1概念TreeSet:基于 TreeMap 的 Navig...

2020-04-18 02:10:48 162

原创 Phase2 Day10 Tree3&&Set

文章目录Set接口Set概述Set接口Set概述一个不包含重复元素的 collection。更确切地讲, set 不包含满足 e1.equals(e2) 的元素对 e1 和 e2, 并且最多包含一个 null 元素。正如其名称所暗示的,此接口模仿了数学上的 set 抽象。注意事项:Set 集合并不一定都是无序的,有些 Set 集合是有序的。...

2020-04-16 15:00:16 213

原创 Phase2 DAY5 MyArrayList

数组与集合的转换集合 --> 数组Collection: T[] toArray(T[] arr);数组 --> 集合static List asList(T… a) 视图方法但是不能增加和删除元素jdk5特性:a.泛型b.自动装箱和自动拆箱c.静态导入d.foreache.可变长参数public static void main(String[] ar...

2020-04-10 23:52:45 117

原创 Phase2 DAY4 List&泛形

总结Collection  |-- List    |-- ArrayList    |-- Vector      |-- Stack    |-- LinkedList  |-- Queue     |-- Deque       |-- LinkedListLinkedListLinkedList 实现了接口 List, Deque底层是链表, 增删快, 查找慢不...

2020-04-09 21:51:12 107

原创 Phase2 Day3 List

栈和队列ListArrayList:List 接口的大小可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。(此类大致上等同于 Vector 类,除了此类是不同步的。)底层数据结构是数组,查询快,增删慢线程不安全,效率高构造方法:ArrayList() 构造一个初始容量为...

2020-04-08 20:52:58 98

原创 Phase2 Day2 数组和链表

数组概念:数组的本质是固定大小的连续的内存空间,并且这片连续的内存空间又被分割成等长的小空间。它最主要的特点是随机访问。数组的长度是固定的数组只能存储同一种数据类型的元素在Java中只有一维数组的内存空间是连续,多维数组的内存空间不一定连续。为什么数组的索引是一般都是从0开始的呢?假设索引不是从0开始的,而是从1开始的,那么我们有两种处理方式:寻址公式变为: i_address...

2020-04-08 18:21:38 136

原创 Phase2 Day1 Collection&集合输出&List

CollectionCollection 层次结构中的根接口。Collection 表示一组对象,这些对象也称为collection 的元素。一些 collection 允许有重复的元素,而另一些则不允许。 一些 collection 是有序的,而另一些则是无序的。API: 增: boolean add(E e) boolean addAll(Collection c) 如果原...

2020-04-07 07:35:11 159

原创 DAY29 注解

注解注解的定义注解的使用注解的处理一、注解的定义public @interface 注解名{ 定义体}注解的定义和类的定义以及接口很像就像类,接口在JAVA中地位一样,他也代表数据类型,定义的一个注解就是一种数据类型,一个注解数据类型定义了:具体包含多少条,具体的信息,以及每种信息是怎样的@必不可少注解之间不能继承在定义中,一条信息,合法的取值有:1. 所有的基...

2020-04-02 21:25:22 123 2

原创 DAY28 Reflection

获取指定的单个成员变量可以通过,指定成员变量的变量名,从Class对象对应的类中,获取指定名称的public成员变量(Field对象表示), 还可以获取到父类中定义的同名public成员变量(子类中)Field getField(String name) Class sonClass = Son.class; Field i = sonClass.getField("i");注:...

2020-04-01 17:22:48 77

原创 DAY27 TCP传输框架&&反射

反射类加载:当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化。加载:通过一个类的全限定名来获取定义此类的二进制字节流在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的各种数据的访问入口连接:验证:确保被加载类的正确性;准备:负责为类的静态成员分配内存并设置默认初始化值;解析:将类中的符号引用替换为直...

2020-04-01 01:38:35 83

原创 DAY26 网络编程

Socket类Java类库中,定义了各种Socket类(类名都带Socket),来抽象传输层的功能,供我们的应用程序使用。Socket套接字 = IP + 端口号 Socket本身是网络协议中的概念,和语言无关对于TCP和UDP分别定义类不同类型的Socket类,来实现分别基于TCP和UDP协议的输出传输。端口号(只具有本地意义)每个进程都有一个端口号端口号,标识进程的逻辑地址,网络通信...

2020-03-30 23:14:53 126

原创 DAY24 多线程数据安全问题

多线程数据安全问题产生条件多线程运行环境(无法打破)多线程共享数据(无法打破)对共享操作的非原子操作(打破,将其变为原子操作,即加锁)原子操作:一种操作,要么不执行,要么一次执行完JAVA语言如何实现加锁同步代码块synchronized(锁对象){ 对多线程原子变量的一组操作}synchronized代码块中的锁对象,可以是JAVA语言中的任意对象,因为JAVA中所...

2020-03-27 12:11:46 145

原创 DAY23 线程的API,线程的两种实现方式,多线程的安全问题

java命令执行一个java程序的过程 java命令启动JVM进程 JVM加载主类,创建一个线程,在该线程中,执行我们主类中的main()方法(main线程) 直到main方法执行完毕JVM是单线程还是多线程:多线程byte[] bytes = null; /* 在无限循环中,我们不停的从堆内存申请内存空间,创建字节数组, 按道理来讲,应该用不了...

2020-03-26 14:44:59 126

原创 DAY22 标准输入输出流&多线程

标准输入输出流标准输入流:代表接收键盘输入的字节输入流InputStream in = System.in;//在JVM内存和键盘输入设备上建立数据传输通道new Scanner = new Scanner(System.in);//其实也是借助标准输入流读取键盘输入标准输出流:PrintStream out = System.out;//PrintStream输出流,输出一切类型...

2020-03-25 23:39:54 181

原创 DAY21 字符流

字符流字符流 = 字节流 + 编码表对字符流而言,内部自己维护了一个缓冲区(为了编解码准备)故必须close或flush。编解码只针对字符或字符串。编码:字符串对象.getbytes("字符集")解码:new String(byte[], int offset, int len, "字符集")字符输出流构造方法public OutputStreamWrite(Ou...

2020-03-25 23:38:46 74

原创 DAY20 I/O流

IO流IO流用来处理JVM内存和外部设备之间的数据传递,JAVA通过流(STREAM)完成数据传输IO流的分类数据传输的方向:输入流,输出流流中传输的数据内容:字节流(以字节为单位的01二进制数据),操作一切类型数据,但操作数据不方便;字符流(字符数据);即文本数据,用文本编辑器打开还能认识。IO流常用基类字节流 字节输入流:InputStream类(抽象类) 字节输出流:...

2020-03-25 23:38:12 119

原创 DAY19 File

DAY20 File路径名的表示类unix:绝对路径名前缀始终是“/”,相对路径没有前缀 绝对路径:/user/local/bin 相对路径:dir/a.docwindows:绝对路径盘符 “:\”,相对路径,没有盘符 绝对路径:E:\dir\develop\b.txt 相对路径:develop\b.txtjava语言中:java.io包中的类总是根...

2020-03-25 23:37:22 63

原创 DAY18 Excation&File

ExceptionJVM在没有做任何异常处理情况下1.从代码发生错误处,错误之前代码会执行,之后不执行。2.程序终止后,JVM会进入默认的错误处理流程。a:错误发生的地方收集错误信息,创建异常对象来描述该错误相关信息(封装)。b:访问异常对象,获取异常相关信息,输出到控制到窗口。自己处理异常try-catch代码块:{ try{代码} catch(Exception e){处理...

2020-03-25 23:36:30 117

空空如也

空空如也

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

TA关注的人

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