- 博客(24)
- 资源 (2)
- 收藏
- 关注
原创 Oracle编程测试案例
测试案例使用Oracle函数实现当前时间减五分钟的效果使用Oracle函数实现当前时间减五分钟的效果create or replace function getSysdatereturn date is l_sysdate date;beginselect sysdate - 5/(24*60) into l_sysdate from dual ; return l_sysdate;end;/select getSysdate() from dual;...
2021-04-25 10:48:25
856
原创 数据仓库Hive
目录什么是HiveHive的数据存储Hive的系统架构MetastoreHive vs MySQLOLTP vs OLAPHive中数据库的操作什么是HiveHive是建立在Hadoop上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载,可以简称为ETL。 Hive 定义了简单的类SQL查询语言,称为HQL,它允许熟悉SQL的用户直接查询Hadoop中的数据,同时,这个语言也允许熟悉MapReduce的开发者开发自定义的MapReduce任务来处理内建的SQL函数无法完成的复杂的分
2021-04-20 18:55:58
508
原创 Linux常用命令总结
目录标题文件查看创建、重命名文件\文件夹链接文件切换目录删除文件\文件夹(目录)复制\粘贴\剪切远程复制文件属性chmod分配权限内容查看压缩、解压输出及显示软件安装和卸载查看操作历史清屏小命令查看内存使用情况关机重启快捷命令Linux高级命令之文件相关vi文件编辑利器的使用文件内容统计相关命令sort:排序unip:检查重复的行列head:取前N条数据Linux高级命令之日期相关Linux高级命令之进程相关Linux三剑客之grepLinux三剑客之sedLinux三剑客之awkLinux常用命令总结:
2021-04-20 16:43:33
766
原创 JWT简介
JWT介绍JWT是一种用于双方之间传递安全信息的简洁的、URL安全的表述性声明规范。JWT作为一个开放的标准(RFC 7519),定义了一种简洁的,自包含的方法用于通信双方之间以Json对象的形式安全的传递信息。因为数字签名的存在,这些信息是可信的,JWT可以使用HMAC算法或者是RSA的公私秘钥对进行签名。简洁(Compact): 可以通过URL,POST参数或者在HTTP header发送,因为数据量小,传输速度也很快自包含(Self-contained):负载中包含了所有用户所需要的信息,避免
2020-09-27 11:42:29
797
1
原创 Redis常见面试题知识点整合
Redis对比Memcached优势?redis数据结构比memcached更丰富,基本可以完全替换;redis社区比较活跃,性能也强大,也支持持久化等功能;Redis五大数据结构以及使用场景String:简单的key-value存储hash:存储对象,一个key有多个值list:列表型数据、消息队列等set:无序集合、去重,交集、并集等,比如查看共同好友,在社交关系方面、数据排重等可以使用sroted set(zset):有序集合,去重,做榜单Redis是单线程,为什么这么快?
2020-09-12 16:49:03
450
原创 互联网架构之Java虚拟机JVM
JVM内存模型的概述Java语⾔为什么优势巨⼤,因为⼀处编译随处运⾏在内存管理机制之下,不再需要为每⼀个new操作去写配对的内存分配和回收等代码, 不容易出现内存泄漏和内存溢出等问题JVM运⾏时数据区分布图讲解线程共享数据区:⽅法区、堆线程隔离数据区:虚拟机栈、本地⽅法栈、堆、程序计数器JVM内存模型之程序计数器是什么?程序计数器是⼀块较⼩的内存空间,它可以看作是当前线程所执⾏的字节码的⾏号指示器线程是⼀个独⽴的执⾏单元,是由CPU控制执⾏的字节码解释器⼯作时就是通过改变这个
2020-09-05 20:37:45
392
原创 MyBatis多级缓存和懒加载
前言玩转MyBatis多级缓存和懒加载Mybatis一级缓存介绍和验证什么是缓存?答:程序经常要调用的对象存储在内存中,方便其使用时可以快速调用,不必去数据库或者其他持久化设备中查询,主要就是提高性能。Mybatis一级缓存简介:一级缓存的作用域是SQLSession,同一个SqlSession中执行相同的SQL查询(相同的SQL和参数),第一次会去查询数据库并写在缓存中,第二次会直接从缓存中读取。基于PerpetualCache 的 HashMap本地缓存,默认开启一级缓存。失效策略:当
2020-08-24 22:32:30
709
原创 Java并发编程技术点总结
前言并发编程技术在Java中属于重要知识点,对于以下内容你有了解多少?进程、线程、协程关系概述进程:本质上是一个独立执行的程序,进程是操作系统进行资源分配和调度的基本概念,操作系统进行资源分配和调度的一个独立单位。线程:操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一个进程中可以并发多个线程,每条线程执行不同的任务,切换受系统控制。协程:又称为微线程,是一种用户态的轻量级线程,协程不像线程和进程需要进行系统内核上的上下文切换,协程的上下文切换是由用户自己决
2020-08-18 18:16:34
367
原创 解决 start.spring.io 无法访问
快速构建SpringBoot项目时无法访问 start.spring.io ,解决办法有两个:1.关闭防火墙、关闭浏览器代理。(不建议使用)2.使用阿里云 https://start.aliyun.com/bootstrap.html.地址直接替代(建议使用、最佳方案)...
2020-07-29 17:31:09
5992
3
原创 如何使用码云Gitee上传本地项目
前言相信很多同学在gitee中上传项目时会遇到了各种小问题,接下来我将介绍一种简单粗暴的方式来上传项目。执行以下步骤之前首先要在本地安装并配置Git并且在gitee中配置SSH公钥,如果不知道如何配置可以搜索一下相关博文进行学习配置。上传本地项目第一步:注册完账号之后点击+新建仓库第二步:设置仓库名称,填写仓库介绍,设置是否公开,添加语言,添加开源许可证。开源许可证测试时可以不用填写,具体想了解开源许可证可以看相关资料进行了解学习。默认按我的配置进行设置即可。第三步:在本地新建文件夹Test
2020-07-28 11:28:51
1534
1
原创 使用Maven创建Spring项目
前言之前写SpringBoot项目写习惯了,项目创建、各种依赖包都是在网站一键生成的。刚刚写了一个Spring的小demo,发现自己去创建一个Spring的项目竟有些生疏…尴尬。接下来我就介绍一下如何使用Maven创建Spring项目。当然创建Spring项目有多种方式,但我还是觉得使用Maven创建是最简单的,因为不用手动导包,Maven仓库会给我们提供各种依赖包。创建项目第一步:创建Maven项目,默认点击下一步就好。第二步:项目创建完成后如下图,问题有两个:一是缺少 src/main/r
2020-07-27 19:10:46
1167
原创 Http协议知识点整合
常见的Http、Methodhttp1.0定义了三种:GET: 向服务器获取资源,比如常见的查询请求POST: 向服务器提交数据而发送的请求Head: 和get类似,返回的响应中没有具体的内容,用于获取报头http1.1定义了六种:PUT:一般是用于更新请求,比如更新个人信息、商品信息全量更新PATCH:PUT 方法的补充,更新指定资源的部分数据DELETE:用于删除指定的资源OPTIONS: 获取服务器支持的HTTP请求方法,服务器性能、跨域检查等CONNECT: 方法的作用就是
2020-07-22 21:51:34
153
原创 数据库性能监控和优化
生产环境的数据库,哪些操作保证安全业务性能1、应用上线前审查业务新增的sql,分析sql执行计划。比如是否存在 select * ,索引建立是否合理等。2、开启慢查询日志,定期分析慢查询日志。3、监控CPU/内存利用率,读写、网关IO、流量带宽随着时间的变化统计图。4、吞吐量QPS/TPS,一天内读写随着时间的变化统计图。数据安全1、短期增量备份,比如一周一次。 定期全量备份,比如一月一次。2、检查是否有非授权用户,是否存在弱口令,网络防火墙检查。3、导出数据是否进行脱敏处理,防止数据泄露
2020-07-21 17:26:28
1080
原创 MySQL数据库知识点整合
事务ACID是什么Mysql事务的四大特性是指原子性(Atomicity): 事务是不可分割的最小工作单元,整个操作要么全部成功,要么全部失败,一般就是通过commit和rollback来控制。一致性(Consistency):数据库总能从一个一致性的状态转换到另一个一致性的状态,只要有任何一方发生异常就不会成功提交事务。隔离性(Isolation): 一个事务相对于另一个事务是隔离的,一个事务所做的修改是在最终提交以前,对其他事务是不可见的。持久性(Durability):一旦事务提交,则其所做
2020-07-20 22:00:03
222
原创 VSCode编辑器和开发环境搭建
前端主流编辑器VSCode安装前端编辑器vscode:免费开源的现代化轻量级代码编辑器,支持大部分主流的开发语言的语法高亮、智能代码补全、自定义热键、代码对比 Diff、GIT 等特性,支持插件扩展,软件跨平台支持 Win、Mac 以及 Linux。其他编辑器:sublime、hbuilder、webstormvscode安装地址: https://code.visualstudio.com/Download.设置编译器为中文语言环境,这里需要使用快捷键来实现windows系统:【Ctrl+Sh
2020-07-12 18:52:48
607
原创 SpringBoot开启跨域配置
什么是浏览器跨域浏览器同源策略 ,同源政策由 Netscape 公司引入浏览器。目前,所有浏览器都实行这个政策。 最初,它的含义是指:A网页设置的 Cookie,B网页不能打开,除非这两个网页"同源"。所谓"同源"指的是"三个相同":协议相同 http https域名相同 http://a.gw.cn http://gw.cn端口相同 8080 8081总之,浏览器从一个域名的网页去请求另一个域名的资源时,域名、端口、协议有一个不同,都是跨域。浏览器控制台跨域提示:No ‘Acces
2020-07-12 09:48:07
378
原创 压力测试工具Jmeter5.X快速入门实战
接口压测和常用压力测试工具对比LoadRunner性能稳定,压测结果及细粒度大,可以自定义脚本进行压测,但是太过于笨重,功能比较繁多。Apache AB(单接口压测最方便)模拟多线程并发请求,ab命令对发出负载的计算机要求很低,既不会占用很多CPU,也不会占用太多的内存,但却会给目标服务器造成巨大的负载, 简单DDOS攻击等。Webbenchwebbench首先fork出多个子进程,每个子进程都循环做web访问测试。子进程把访问的结果通过pipe告诉父进程,父进程做最终的统计结果。
2020-07-11 22:31:45
755
原创 Java系统的学习路线(新手阅读)
前言今天浏览博客的时候,无意间看到很多人问:“新手该如何学习Java”,“怎样快速入门Java”之类的问题。现在想想,当初我在学习Java的时候也确实走了不少弯路,虽然当时也在各大网站搜索Java的学习路线,但是每个人说法不一,搞得我眼花缭乱,结果也不如意…所以我决定结合我的经历与经验去写一篇文章,告诉那些零基础学习Java的同学们–怎样去系统的学习Java。废话不多说,我们直接上内容!(注:本文适合初学者阅读,大牛可留言补充)如何系统学习Java首先学习Java可分为四个阶段:第一阶段:Java核
2020-07-08 22:31:43
326
原创 快速入门Spring Boot之开发你的第一个JSON接口
前言Spring Boot开发项目常见的交互使用形式有两种:一种是后端接口直接返回页面,另外一种是返回JSON数据。前者在常见的传统IT公司比较多,配合模板引擎,由后端页面渲染返回。而后者则是互联网公司用的比较多,比如微服务接口,前后端分离项目,手机app等,基本都是通过JSON数据交互。后端接口直接返回页面现在用的比较少了,主流还是使用JSON数据交互。所以今天我们做前后端分离项目的第一步,写我们的第一个JSON接口。开发你的第一个JSON接口首先创建Spring Boot项目,创建controll
2020-07-06 23:17:35
1089
原创 关于集合框架Map,你所不知道的知识!
目录前言你知道哪些Map?HashMap和Hashtable 的区别hashCode()和equals()的含义与使用场景HashMap和TreeMap应该怎么选择,使用场景是什么?解析Set和Map的关系如果需要线程安全,且效率高的Map,应该怎么做?为什么Collections.synchronizedMap是线程安全的?从源码分析HashMap什么是Hash碰撞?常见的解决办法有哪些?HashMap为什么用数组+链表+红黑树这几类结构呢?为什么选择红黑树而不用其他树,比如二叉查找树,为啥不一直开始就用
2020-07-05 22:23:57
241
原创 关于集合框架List,你所不知道的知识!
目录前言解析ArrayList解析Vector解析LinkedListVector和ArrayList、LinkedList联系与区别是什么?分别的使用场景是什么?如果让ArrayList保证线程安全,应该怎么做?CopyOnWriteArrayList与Collections.synchronizedList实现线程安全有什么区别? 使用场景是怎样的?CopyOnWriteArrayList有什么缺点?ArrayList的扩容机制结语前言相信很多同学们都了解集合框架List,但是你们真的掌握List了
2020-07-03 22:15:15
1204
原创 快速入门Spring Boot之初识Spring Boot
目录前言什么是Spring Boot?Spring Boot的优点Spring Boot与Spring Cloud有什么关系?Spring Boot项目的环境依赖教你如何快速搭建你的第一个Spring Boot项目总结前言如果你不知道如何搭建一个Spring Boot项目,不妨看看我的这篇文章。今天,我来教你如何快速入门Spring Boot,搭建你的第一个Spring Boot项目!什么是Spring Boot?Spring Boot是Spring开源组织下的子项目,是Spring组件一站式解决方
2020-07-02 22:20:16
379
原创 你的Java基础怎么样?不妨做做下面这些题!
目录前言float f=3.4;是否正确?short s1 = 1; s1 = s1 + 1;有错吗?short s1 = 1; s1 += 1;有错吗?你知道运算符&和&&、|和||的区别吗?了解位运算吗?Java的基础数据类型有哪些?== 和equals的区别是什么?i++与++i最终的结果是什么?String str = new String("abc"); 创建了几个对象?String、StringBuffer与StringBuilder的区别?它们的使用场景是什么?面向对象
2020-07-01 21:28:13
452
原创 开启我的CSDN之路--为什么我要写博客?
目录前言初见Springboot感想前言学习编程这么久,之前在调试程序出BUG的时候总在CSDN上查阅资料,看看前辈们遇到我的这种问题是怎么解决的,不过好在每次都能找到解决的办法,在这里十分感谢CSDN这个平台,让我们这些小白们学到了很多的知识点,前辈们也为我们解决了许多坑。之前从未想过去写博客,在我眼里,能在CSDN上博客的都是大牛,业界精英。后来,慢慢发现其实很多人写博客是为了巩固自己的知识点,很多东西写下来,当自己忘了的时候可以拿出来再看看,这确实是一个学习的好办法,当然作为程序员,你一定得有一种
2020-07-01 15:34:19
708
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人