SQL practice
# SQL 练习
SQL 练习
595. Big Countries
627. Swap Salary
620. Not Boring Movies
596. Classes More Than 5 Students
182. Duplicate Emails
196. Delete Duplicate Emails
175. Combine Two Tables
181. Employees Earning More Than Their Managers
183. Customers Who Never Order
184. Department Highest Salary
176. Second Highest Salary
177. Nth Highest Salary
178. Rank Scores
180. Consecutive Numbers
626. Exchange Seats
# 595. Big Countries
https://leetcode.com/problems/big-countries/description/
# Desc ...
My Ajax notes
# 1. Ajax 概述
# 1.1 AJAX 简介
AJAX 全称为 Asynchronous JavaScript And XML,就是异步的 JS 和 XML
通过 AJAX 可以在浏览器中向服务器发送异步请求,最大的优势:无刷新获取数据
AJAX 不是新的编程语言,而是一种将现有的标准组合在一起使用的新方式
# 1.2 XML 简介
XML 可扩展标记语言。
XML 被设计用来传输和存储数据。
XML 和 HTML 类似,不同的是 HTML 中都是预定义标签,而 XML 中没有预定义标签,
全都是自定义标签,用来表示一些数据。
比如说我有一个学生数据:
name = “孙悟空” ; age = 18 ; gender = “男” ;
用 XML 表示:
<student>
<name>孙悟空</name>
<age>18</age>
<gender>男</gender>
</student>
现在已经被 JSON 取代了。
{"name":"孙悟空","age":18,"gender":"男"}
# ...
Ajax notes
# (一)Ajax 基础
# 1. Ajax 基础
# 1.1 传统网站中存在的问题
网速慢的情况下,页面加载时间长,用户只能等待
表单提交后,如果一项内容不合格,需要重新填写所有表单内容
页面跳转,重新加载页面,造成资源浪费,增加用户等待时间
# 1.2 Ajax 概述
Ajax:标准读音 [ˈeɪˌdʒæks] ,中文音译:阿贾克斯。
它是浏览器提供的一套方法,可以实现 页面无刷新更新数据,提高用户浏览网站应用的体验。
# 1.3 Ajax 应用场景
页面上拉加载更多数据
列表数据无刷新分页
表单项离开焦点数据验证
搜索框提示文字下拉列表
…
# 1.4 Ajax 运行环境
Ajax 技术需要 运行在网站服务器环境中才能生效,我们学习 Ajax 可以使用 Node 创建的服务器作为网站服务器。
# 2. Ajax 运行原理及实现
# 2.1 Ajax 运行原理
Ajax 相当于浏览器 发送请求与接收响应的代理人,以实现在不影响用户浏览页面的情况下,局部更新页面数据,从而提高用户体验。
# 2.2 Ajax 实现步骤
创建 Ajax 对象
使用 XMLHttpReq ...
My CSS3 notes
# 个人总结(css3 新特性)
# 1. 前言
css3 这个相信大家不陌生了,是个非常有趣,神奇的东西!有了 css3,js 都可以少写很多!我之前也写过关于 css3 的文章,也封装过 css3 的一些小动画。个人觉得 css3 不难,但是很难用得好,用得顺手,最近我也在过一遍 css3 的一些新特性(不是全部,是我在工作上常用的,或者觉得有用的),以及一些实例,就写了这一篇总结!希望,这篇文章能帮到大家认识 css3。写这篇文章主要是让大家能了解 css3 的一些新特性,以及基础的用法,感觉 css3 的魅力!如果想要用好 css3,这个得靠大家继续努力学习,寻找一些讲得更深入的文章或者书籍了!如果大家有什么其他特性推荐的,欢迎补充!大家一起学习,进步!
看这篇文章,代码可以不用看得过于仔细!这里主要是想让大家了解 css3 的新特性!代码也是很基础的用法。我给出代码主要是让大家在浏览器运行一下,让大家参考和调试。不要只看代码,只看代码的话,不会知道哪个代码有什么作用的,建议边看效果边看代码。
# 2. 过渡
过渡,是我在项目里面用得最多的一个特性了!也相信是很多人用得最多 ...
My HTML5 and CSS3 notes
# HTML5 and CSS3
[TOC]
# 前言
本文主要介绍 H5 新增内容以及 CSS3 中的新特性。在 H5 方面主要介绍拓展了哪些内容,CSS3 方面介绍动画及转换。
# H5 新增内容
「1. 什么是 HTML5」
定义:HTML5 定义了 HTML 标准的最新版本,是对 HTML 的第五次重大修改,号称下一代的 HTML。
两个概念:
是一个新版本的 HTML 语言,定义了新的标签、特性和属性
拥有一个强大的技术集,这些技术集是指:HTML5、CSS3、JavaScript, 这也是广义上的 HTML5。
「2. HTML5 拓展了哪些内容」
语义化标签
本地存储
兼容特性
2D、3D
动画、过渡
CSS3 特性
性能与集成
「3. HTML5 的现状」
绝大多数新的属性,都已经被浏览器所支持,最新版本的浏览器已经开始陆续支持最新的特性,总的来说:HTML5 已经是大势所趋。
# HTML5 新增标签
# 「1. 什么是语义化」
语义化是指用 HTML 写出符合内容的结构化(内容语义化),选择合适的标签(代码语义化),能够便于开发者阅读和写出更优雅 ...
My CSS notes
# CSS 基础
[TOC]
# CSS 构造块
「1. HTML 的局限性」
HTML 满足不了设计者的需求,可以将网页结构与样式相分离,这样就可以在不更改网页结构的前提下,更换网站的样式。
操作 html 属性不方便
HTML 里面添加样式带来的是无尽的臃肿和繁琐
「2. CSS 网页的美容师」
让我们的网页更加丰富多彩,布局更加灵活自如。
CSS 最大的贡献:让 HTML 从样式中脱离,实现了 HTML 专注去做__结构呈现__,样式交给 CSS
**「3. CSS」**CSS (Cascading Style Sheets) 通常称为 CSS 样式表或层叠样式表 (级联样式表)。
主要用于设置 HTML 页面中的文本内容 (字体、大小、对齐方式等)\ 图片的外形 (宽高、边框样式、边距等) 以及版面的布局和外观显示样式。
CSS 以 HTML 为基础,提供了丰富的功能,如字体、样式、背景的控制及整体排版等,而且可以针对不同的浏览器设置不同的样式。
「4. CSS 注释」
/* 这是注释 */
# 引入 CSS 样式表
# 「1. 行内式 (内联样式)」
通过标签的 ...
Object Orientated Programming
# 面向对象思想
# 一、三大特性
# 封装
利用抽象数据类型将数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体。数据被保护在抽象数据类型的内部,尽可能地隐藏内部的细节,只保留一些对外的接口使其与外部发生联系。用户无需关心对象内部的细节,但可以通过对象对外提供的接口来访问该对象。
优点:
减少耦合:可以独立地开发、测试、优化、使用、理解和修改
减轻维护的负担:可以更容易被理解,并且在调试的时候可以不影响其他模块
有效地调节性能:可以通过剖析来确定哪些模块影响了系统的性能
提高软件的可重用性
降低了构建大型系统的风险:即使整个系统不可用,但是这些独立的模块却有可能是可用的
以下 Person 类封装 name、gender、age 等属性,外界只能通过 get () 方法获取一个 Person 对象的 name 属性和 gender 属性,而无法获取 age 属性,但是 age 属性可以供 work () 方法使用。
注意到 gender 属性使用 int 数据类型进行存储,封装使得用户注意不到这种实现细节。并且在需要修改 gender 属性使用的数据类型时,也可以在不 ...
Clusters
# 集群
# 一、负载均衡
集群中的应用服务器(节点)通常被设计成无状态,用户可以请求任何一个节点。
负载均衡器会根据集群中每个节点的负载情况,将用户请求转发到合适的节点上。
负载均衡器可以用来实现高可用以及伸缩性:
高可用:当某个节点故障时,负载均衡器会将用户请求转发到另外的节点上,从而保证所有服务持续可用;
伸缩性:根据系统整体负载情况,可以很容易地添加或移除节点。
负载均衡器运行过程包含两个部分:
根据负载均衡算法得到转发的节点;
进行转发。
# 负载均衡算法
# 1. 轮询(Round Robin)
轮询算法把每个请求轮流发送到每个服务器上。
下图中,一共有 6 个客户端产生了 6 个请求,这 6 个请求按 (1, 2, 3, 4, 5, 6) 的顺序发送。(1, 3, 5) 的请求会被发送到服务器 1,(2, 4, 6) 的请求会被发送到服务器 2。
该算法比较适合每个服务器的性能差不多的场景,如果有性能存在差异的情况下,那么性能较差的服务器可能无法承担过大的负载(下图的 Server 2)。
# 2. 加权轮询(Weighted Round Robbin ...