自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Spring注解

@Configuration:告诉spring这是一个配置类,配置类=配置文件@ComponentScan (value:指定要扫描的包)excludeFilters=Filter[]:指定扫描的时候按照什么规则排除那些组件includeFilters=Filter[]:指定扫描包的时候只需要包含那些组件@Bean:给容器中注册一个Bean,类型为返回值的类型,id默认是用方法名作为id。@Scope:设置组件作用域singleton:单实例的(默认值):ioc容器启动会调用方法创建对象放

2021-08-01 18:24:14 107

原创 JUC线程池

线程池线程池的优势线程池做的工作主要是控制运行的线程数量,处理过程中将任务放入队列,然后在线程创建后启动这些任务,如果线程数量超过了最大数量,超出数量的线程排队等待,等待其他线程执行完毕,再从队列中去除任务来执行。它的主要特点为:线程复用;控制最大并发数;管理线程第一:降低资源消耗。通过重复利用已经创建的线程降低线程创建和销毁所造成的消耗。第二:提高响应速度。当任务到达时,任务可以不需要等待线程创建就能立即执行。第三:提高线程的可管理性。线程时稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会

2021-07-29 19:33:24 87

原创 JUC读写锁和阻塞队列

ReadWriteLock读写锁多个线程同时读一个资源类没有任何问题,所以为了满足并发量,读取共享资源应该可以同时进行。但是,如果有一个线程想去写共享资源类,就不应该再有其他线程可以对该资源进行读和写小总结:读-读能共存读-写不能共存写-写不能共存class MyCache { //volatile:,保证可见性,不保证原子性,一个线程修改后,通知更新 private volatile Map<String, Object> map = new HashMap&l

2021-07-28 18:22:05 83

原创 JUC强大的辅助类

CountDownLatch减少计数/** * CountDownLatch主要有两个方法,当一个或多个线程调用await方法时,这些线程会阻塞。 * 其他线程调用countDown方法会将计数器减1(调用countDown方法的线程不会阻塞), * 当计数器的值变为0时,因await方法阻塞的线程会被唤醒,继续执行 */public class CountDownLatchDemo8 { public static void main(String[] args) throws Int

2021-07-28 14:46:29 60

原创 JUC并发

Set不安全类似ArrayList线程不安全,需要用Collecions.synchronizedSet()工具类方法转换成线程安全的setCopyOnWriteSet类似于CopyOnWriteArrayList,线程安全效率高HashSet底层是HashMap,new一个HashSet相当于new一个HashMap,往HashSet添加数据调用add()方法相当于HashMap的put()方法,存入的是put()方法中的key,而value永远是常量PRESENT=new Object();

2021-07-28 10:04:29 60

原创 JUC并发list集合不安全

list不安全ArrayList类没有加锁多线程不安全会爆Concurrent Modification Exception并发修改异常线程安全可以使用Vector类,里面方法加了synchronized关键字,所以是线程安全的,但是这个类性能低、已过时不推荐使用Collections工具类可以给list转换成线程安全的集合类CopyOnWriteArrayList类写入时拷贝集合,往一个容器,添加元素的时候。不直接往当前容器Object[]添加,而是先将当前容器Object[]进行copy,复制

2021-07-27 20:31:50 126

原创 2021-07-22jvm的GC

判断对象是否已经死亡的算法:引用计数算法,可达性分析算法;四个垃圾收集算法:标记清除算法,复制算法,标记整理算法,分代收集算法;七个垃圾收集器:Serial,SerialOld,ParNew,Parallel Scavenge,ParallelOld,CMS,G1....

2021-07-22 23:14:23 78

原创 初探jvm

Program Counter Register程序计数器(寄存器)作用:是记住下一条jvm指令的执行地址特点:是线程私有的,不会存在内存溢出java虚拟机栈每个线程运行所需要的内存,称为虚拟机栈每个栈由多个栈帧组成,对应着每次方法调用时所占的内存每个线程只有一个活动栈帧,对应着正在执行的那个方法Heap堆通过new关键字,创建对象都会使用堆内存特点它是线程共享的,堆中对象都需要考虑线程安全问题有垃圾回收机制堆内存诊断1.jps工具查看当前系统中有哪些java进程2.

2021-07-17 20:00:14 117

原创 数据库的三范式是什么?

数据库的三范式是什么?设计表的依据。按照这个三范式设计的表不会出现冗余第一范式,表必须有主键,每个字段都具有原子性不可再分第二方式,在第一范式的基础之上,非主键必须完全依赖主键,不能部分依赖第三范式,在第二范式基础之上,非主键字段直接依赖主键,不能传递依赖主键多对多,三张表,关系表加两个外键一对多,多的表加外键在实际的开发中,以满足客户的需求为主,有的的时候会拿冗余换执行速度...

2021-05-16 23:18:26 129

原创 移动端网页设计基础

在PC端,屏幕1200两端留白在PE端就不行,首先它没有1200px那么大的宽度,其次不能留白,很丑就需要在手机屏幕上铺满内容Viewport在移动设备上进行网页的重构或者开发,首先我们就要搞明白viewport,只有弄明白viewport概念以及与其相关的meta标签的使用,才能更好的让我们的网页适配或者响应不同分辨率的移动设备一. Viewport的概念设备屏幕上能用来显示我们网页的那一块区域获取视口大小:document.documentElement.clientWidth移动设备上

2020-10-14 20:37:28 184

原创 2020-10-06

Ajax语法:$.ajax(JSON)JSON常用的参数url:服务器的地址,获取数据或者推送的地方data,需要给服务器的数据,需要去添加,比如说登录的接口需要传递“用户名和密码”,获取货品信息,则不需要传递任何的参数。数据类型键值对,键值对的“键”和服务器保持完全一致,包括键名的大小写type:数据提交的方式GET/POSTtimeout:请求等待的时间,时间为毫秒,一般10秒success:请求成功,做返回处理error:请求失败datatype:预期服务器相应的数据类型什么是Aj

2020-10-06 18:56:17 71

原创 jQuery总结

jQuery - 获取并设置 CSS 类通过 jQuery,可以很容易地对 CSS 元素进行操作。 切换 CSS 类jQuery 操作 CSSjQuery 拥有若干进行 CSS 操作的方法。我们将学习下面这些:addClass() - 向被选元素添加一个或多个类removeClass() - 从被选元素删除一个或多个类toggleClass() - 对被选元素进行添加/删除类的切换操作css() - 设置或返回样式属性实例样式表下面的样式表将用于本页的所有例子:.important{

2020-10-05 20:59:26 267

原创 jQuery总结

jQuery 效果- 隐藏和显示jQuery hide() 和 show()通过 jQuery,您可以使用 hide() 和 show() 方法来隐藏和显示 HTML 元素:实例<script>$(document).ready(function(){ $("#hide").click(function(){ $("p").hide(); }); $("#show").click(function(){ $("p").show(); });});&l

2020-09-30 20:37:13 69

原创 jQuery今日总结

jQuery 教程jQuery 是一个 JavaScript 库。jQuery 极大地简化了 JavaScript 编程。jQuery 很容易学习。本章节的每一篇都包含了在线实例通过本站的在线编辑器,你可以在线运行修改后的代码,并查看运行结果。实例$(document).ready(function(){ $("p").click(function(){ $(this).hide(); });});jQuery 语法通过 jQuery,您可以选取(查询,query) H

2020-09-29 19:44:52 61

原创 JavaScript 计时事件总结

JavaScript 计时事件avaScript 计时事件通过使用 JavaScript,我们有能力做到在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行。我们称之为计时事件。在 JavaScritp 中使用计时事件是很容易的,两个关键方法是:setInterval() - 间隔指定的毫秒数不停地执行指定的代码。setTimeout() - 在指定的毫秒数后执行指定代码。setInterval() 方法setInterval() 间隔指定的毫秒数不停地执行指定的代码语法win

2020-09-21 19:34:32 136

原创 JavaScript Window今日总结

JavaScript Window - 浏览器对象模型浏览器对象模型 (BOM) 使 JavaScript 有能力与浏览器"对话"。浏览器对象模型 (BOM)浏览器对象模型(Browser Object Model (BOM))尚无正式标准。由于现代浏览器已经(几乎)实现了 JavaScript 交互性方面的相同方法和属性,因此常被认为是 BOM 的方法和属性。Window 对象所有浏览器都支持 window 对象。它表示浏览器窗口。所有 JavaScript 全局对象、函数以及变量均自动成为

2020-09-18 20:52:02 95

原创 JavaScript HTML DOM总结

JavaScript HTML DOMHTML DOM (文档对象模型)当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)。整个文档是由一系列的节点对象组成的一棵树节点(Node)包括元素节点(1)、属性节点(2)、和文本节点(3)通过可编程的对象模型,JavaScript 获得了足够的能力来创建动态的 HTML。JavaScript 能够改变页面中的所有 HTML 元素JavaScript 能够改变页面中的所有 HTML 属性JavaScript

2020-09-17 19:48:48 50

原创 JavaScript事件总结

onmousemove 事件在鼠标指针移到指定的元素后执行Javascript代码:<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title></title> <style type="text/css"> #div1{ width: 100px; height: 100px; background-color: y

2020-09-16 20:57:31 49

原创 JavaScript今日总结

JavaScript 事件HTML 事件是发生在 HTML 元素上的事情。当在 HTML 页面中使用 JavaScript 时, JavaScript 可以触发这些事件。HTML 事件HTML 事件可以是浏览器行为,也可以是用户行为。以下是 HTML 事件的实例:HTML 页面完成加载HTML input 字段改变时HTML 按钮被点击通常,当事件发生时,你可以做些事情。在事件触发时 JavaScript 可以执行一些代码。onclick 事件事件对象参考手册 事件对象实例当按钮

2020-09-14 14:07:38 71

原创 javascript今日总结

javascript今日总结合并两个数组 - concat()<script>var hege = ["Cecilie", "Lone"];var stale = ["Emil", "Tobias", "Linus"];var children = hege.concat(stale);document.write(children);</script>删除数组的最后一个元素 - pop()var fruits = ["Banana", "Orange", "Ap

2020-09-12 20:51:27 63

原创 JavaScript今日总结

JavaScript Array(数组)数组对象的作用是:使用单独的变量名来存储一系列的值。创建数组, 为其赋值:实例var mycars = new Array();mycars[0] = "Saab";mycars[1] = "Volvo";mycars[2] = "BMW";什么是数组?数组对象是使用单独的变量名来存储一系列的值。如果你有一组数据(例如:车名字),存在单独变量如下所示:var car1="Saab";var car2="Volvo";var car3="BM

2020-09-11 19:16:52 60

原创 JavaScript今日总结

JavaScript 函数函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。实例<!DOCTYPE html><html><head><meta charset="utf-8"><title>测试实例</title><script>function myFunction(){ alert("Hello World!");}</script></head>

2020-09-10 20:21:05 38

原创 JavaScript for循环案例总结

使用javascript制作乘法表代码部分:var i,j; for(i=1;i<=9;i++){ for(j=1;j<=i;j++){ document.write(j+'*'+i+'='+i*j+' '); //此处为了更好的展现效果 ↑ } document.write('<br />'); }显示效果:出1-100之间所有的奇数<!DOCTYPE html><html>

2020-09-08 18:09:37 542 1

原创 JavaScript今日总结

Switch如果是if选择的分支比较多的时候,就需要一个一个分支的从上往下执行,这样执行的效率是非常低的,需要对选择结构进行一个改进使用switch就可以解决这个问题在这里插入图片描述Switch基本语法Switch:开关在这里插入图片描述语法:在执行的过程中,a 的值与哪个分支后面的值一样就运行哪个分支的代码Case后面的值可以立即为标号(程序中指令的地址)如果运行完一个分支后,不想继续运行的话可以用break来跳出选择结构,但break不是必须要写的如果a 的值与case后面

2020-09-07 20:15:34 63

原创 javascript今日总结

javascript今日总结将字符串转换为数字全局方法 Number() 可以将字符串转换为数字。字符串包含数字(如 “3.14”) 转换为数字 (如 3.14).空字符串转换为 0。其他的字符串会转换为 NaN (不是个数字)。Number("3.14") // 返回 3.14Number(" ") // 返回 0Number("") // 返回 0Number("99 88") // 返回 NaNtypeof 操作符你可以使用 typeof 操

2020-09-05 15:21:33 64

原创 javascript今日总结

javascript今日总结JavaScript 用法HTML 中的脚本必须位于 标签之间。脚本可被放置在 HTML 页面的 和 部分中。 会告诉 JavaScript 在何处开始和结束。在 或者 的JavaScript您可以在 HTML 文档中放入不限数量的脚本。脚本可位于 HTML 的 或 部分中,或者同时存在于两个部分中。通常的做法是把函数放入 部分中,或者放在页面底部。这样就可以把它们安置到同一处位置,不会干扰页面的内容。外部的 JavaScript也可以把脚本保

2020-09-04 17:31:37 90

原创 今日总结

今日总结HTML网页布局常用的是:div和table元素。1、使用div元素的网页布局实例:<!DOCTYPE html><html><head><meta charset="utf-8"><title>使用div元素的网页布局</title></head><body> <div id="container" style="width:500px"> <div id

2020-08-28 19:05:45 99

原创 CSS选择器总结

CSS今日总结1、用颜色名表示如:white、red、greenyellow、gold等。2、用十六进制的颜色值表示(红、绿、蓝)#FF0000或者#F003、用rgb(r,g,b)函数表示如:rgb(255,255,0)4、用hsl(Hue,Saturation,Lightness)函数表示(色调、饱和度、亮度)如:hsl(120,100%,100%),色调0代表红色,120代表绿色,240代表蓝色5、用rgba(r,g,b,a)函数表示其中a表示的是改颜色的透明度,取值范围是0~1

2020-08-26 15:27:40 79

原创 CSS今日总结

CSS今日总结CSS简介:CSS是层叠样式表(Cascading Style Sheets)的简称。有时也称为CSS样式表或者是级联样式表。CSS也是一种标记语言。实现了结构(HTML)和样式(CSS)相分离。样式写在< head >标签中,而且也在< style >标签中语法规范:选择器:给谁去改样式,用于指定HTML标签声明:{属性:值},以“键值对”的形式出现,以分号结尾CSS的三种样式表:内部样式表(嵌入式引入)写在html页面内部,单独写到< sty

2020-08-25 18:54:57 95

原创 HTML表格今日总结

HTML表格今日总结able、tr和td——生成基本的表格;th——为表格添加表头单元格;thead——标记表格的标题行;tbody——表示构成表格主体的全体行;tfoot——标记组成表脚的行;th和td元素定义的colspan和rowspan属性——生成不规则表格单元格;th和td元素定义的headers属性——将单元格与表头相关联以满足残障辅助技术的需要;caption——为表格添加标题;colgroup、col——对表格按列处理而不是按行处理;使用table元素定义的border属

2020-08-24 22:14:59 170

原创 HTML中行内元素、块级元素和行内块元素的区别

HTML中行内元素、块级元素和行内块元素的区别标题类型根据显示方式分类:行内、行内块、块级行内元素设置宽高无效对margin仅设置左右方向有效,上下无效;padding设置上下左右都有效,即会撑大空间不会自动进行换行块级元素能够识别宽高margin和padding的上下左右均对其有效可以自动换行多个块状元素标签写在一起,默认排列方式为从上至下行内块元素1.不自动换行2.能够识别宽高3.默认排列方式从左到右...

2020-08-23 15:34:35 154

原创 Button单标签和双标签的区别

Button单标签和双标签的区别1.button标签显示的内容可以使图片等非文字元素,但type=button元素不行,因为type=button本身就是标签中元素的一个值,不可以像button标签一样嵌套类似img的标签<button type="button"><img src="lz01.jpeg" alt="图片加载失败" width="200px" height="200px"></button> <input type="button" va

2020-08-23 15:30:17 560

原创 今日总结

今日总结html标题标签html标题标签:h1,h2,h3,h4,h5,h6从h1到h6,它对网页内容的重要性逐渐递减,h1最重要,h6最轻。HTML段落段落是通过<p>标签定义的HTML 链接标签< a href=“https://www.baidu.com”> 定义一个超级链接< /a>HTML使用标签< a>来设置超文本链接:超链接可以是一个字一个词或者一副话等,可以点击这些内容来跳转到新的文档或者当前文档中的某个部分;当您把鼠标指

2020-08-23 15:24:13 128

原创 get与post的区别

get与post的区别 GET在浏览器回退时是无害的,而POST会再次提交请求。 GET产生的URL地址可以被Bookmark,而POST不可以。 GET请求会被浏览器主动cache,而POST不会,除非手动设置。 GET请求只能进行url编码,而POST支持多种编码方式。 GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。 GET请求在URL...

2020-08-23 15:02:21 114

原创 html今日总结

今日总结1.HTML指的是超文本标记语言(Hyper Text Markup Language),是用来描述网页的一种语言2.不是编程语言,而是一种标记语言3.标记语言是一套标记标签(markup tag)html作用简单理解:网页是由网页元素组成,这些元素是利用html标签描述出来,然后通过浏览器解析,就可以显示给用户。超文本理解:1.它可以加入图片、声音、动画、多媒体等内容(超越文本限制)2.还可以从一个文件转到另一个文件,与世界各地的主机的文件连接(超级链接文本)Web早期的web应用主

2020-08-22 20:26:45 194

空空如也

空空如也

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

TA关注的人

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