自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 面试题总结

应届毕业异地找工作,加油

2022-07-15 00:05:32 410 1

原创 Day26Redisson分布锁

Day 26Redis分布式锁分析这里介绍Redisson如何实现分布式锁的原理。其它的会在接下来的博客讲,最后有关Redisson实现分布式锁的项目代码的博客中会放上项目源码到GitHub上。一、高效分布式锁当我们在设计分布式锁的时候,我们应该考虑分布式锁至少要满足的一些条件,同时考虑如何高效的设计分布式锁,这里我认为以下几点是必须要考虑的。1、互斥在分布式高并发的条件下,我们最需要保证,同一时刻只能有一个线程获得锁,这是最基本的一点。2、防止死锁在分布式高并发的条件下,比如有个线程获得锁的

2021-11-23 17:59:48 495

原创 Day21

权限控制之越权访问漏洞越权访问是web应用程序中一种常见的漏洞,由于奇存在范围广、危害大,被OWASP列为Web应用十大安全隐患的第二名。垂直越权访问越权访问漏洞防范措施前后端同时对用户输入信息进行校验,双重验证机制调用功能前,验证用户是否有权限调用相关功能执行关键操作前必须验证用户身份,验证用户是否具备操作数据的权限直接对象引用的资源ID要加密,防止攻击者枚举ID,敏感数据特殊化处理永远不要相信用户的输入水平越权访问漏洞水平越权是一种“基于数据的访问控制” 设计缺陷引起

2021-11-18 16:38:51 234

原创 Day15Java代码避坑指南

Day15 Java代码避坑指南理论T31系统工程结构梳理日期时间编写规范高并发下的控制语句设计基于OOP设计原则落地时间产出项目系统架构图项目编码规范笔记精确的小数存储-decimalMySQL: decimal(M,D)M:指定小数点左边和右边可以存储的十进制数字的最大个数,MySQL中范围可以为【1~65】D:浮点数据必坑(一)浮点数之间的等值判断,基本数据类型不能 == 比较, 包装数据类型不能用 equals 来判断日期格式化需要注意的问题小写的 y

2021-11-17 19:59:32 936

原创 Day17集合并发编程笔记

集合与并发编程用例图和功能树用例图关注有哪些角色,角色能干什么。功能树关注有哪些大的功能模块,功能模块能够实现什么能力。先有用例图,再有功能树用例图对需求分析的再次结构化,功能树是对用例图的重新聚合比如:系统管理员和乘客在实名认证上的管理与申请实名都是从属实名认证模块。T31用例图:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kBbbfelH-1637148050103)(C:\Users\Zyf\Desktop\T31作业\Day17 系统功能规划文档集合

2021-11-17 19:21:45 406

原创 T31Day19学习笔记OAuth2

OAuth2学习内容·理论前后端分离下的SSO设计基于RBAC的权限系统设计spring security oauth2产出结果项目购票功能接口文档Oauth用在哪?快递小哥送货上门快递员授权机制设计[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pwIjNiF8-1637041127276)(C:\Users\Zyf\Desktop\T31作业\Day19笔记\19.assets\image-20211113200931040.png)]滴滴管

2021-11-16 13:39:18 240

原创 T31项目编码规范笔记

项目编码规范笔记学习内容理论Java编码规范前后端设计规范产出结果项目编码规范笔记前后端设计笔记Java编码规约编码规约缘起代码格式与命名风格如何定义常量注释的误区前后端设计与规约编码规约缘起熵增定律:只要我们没有外力干预代码规范,我们的代码总有一天会无可救药。也被称之为宇宙中最绝望的定律,任何系统在没有外力有序干预下,一定会往混乱无序的方向发展!Tab和空格到底哪个好,规约里面支持的是空格帕金森琐碎定理:无聊的事情讨论的太多,没有效率编码规约存在的意义为

2021-11-08 21:37:57 207

原创 T31项目架构选型方案

服务选型曾经的技术选型[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GjyeLuSg-1636378253985)(C:\Users\Zyf\Desktop\T31作业\Day11 项目架构选型方案\项目架构选型方案.assets\image-20211106155802533.png)]微服务微服务架构的产生——巨石应用第一代单体应用,所有的War包放到一个Tomcat下运行。这种架构也叫巨石型应用架构,在开发小型项目上有独特优势:易于调试、部署,运维方便。缺点

2021-11-08 21:31:09 238

原创 T31 Day8 工程结构规约

Day8 工程结构规约应用分层分层有什么好处?隐藏下层业务逻辑的复杂性提高系统的组件化和可维护性为什么要分层?个人买杂粮煎饼和一个有引导员、服务员、厨师的饭店比,哪个效率高可扩展性 可维护性计算机领域的任何问题都可以通过增加一个中间层解决MVC 模式MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式。这种模式用于应用程序的分层开发。Model(模型) - 模型代表一个存取数据的对象或 JAVA POJO。它也可以带有逻辑,在数据变化时

2021-11-04 15:25:20 149

原创 T31 购票系统的需求与设计实现心得

在经历了开班仪式之后,孤尽带我们走了一遍T31系统架构设计,然后我们第一天的作业就是系统设计方案笔记。内容如下购票系统的需求与设计实现购票系统需求分析购票系统用例图订单模块类图订单的状态类图订单的状态图购买车票的活动图购买车票的时序图车票改签的协作图购买系统部署图产出结果系统用例图系统状态图系统时序图关键类图活动图最后完成作业的时候有点拖,最后赶时间把图画完和组员交流分享将好的图汇总到一切就交了。其实这个作业最终的需求是需求分析,应该将文档也写好,然后再将

2021-11-01 16:26:39 278

原创 第一周学习总结

T31Day0开班仪式开始了,跟着程序员天花板坚持一个月,相信自己,不轻贱不放弃。开局五问孤尽孤帆远影碧空尽独孤九剑,破尽天下武功Java东南方向的旅游胜地巴厘岛Java工具包里经常能看见的东西:Jakarta训练营31天二进制 11111一月31天(改变要多久?)21天真心学不会(不是21天养成一个习惯?)杭州到北京的T31次列车手掌的意思张开的五根手指对应五个1钢铁侠的科技元素拯救地球(我不觉得,如果拯救地球需要一个人那也太悲哀了,这个人不是应该受到

2021-11-01 16:14:14 1494

原创 T31Java异常处理和日志

Java异常体系Java异常机制使用异常、日志为系统保驾护航道路千万条,安全第一条日志不规范,排查两行泪异常应当描述导致当前异常发生的原因根据异常栈快速定位倒异常发生的位置结合异常描述和异常栈解决异常日志记录规约系统应依赖使用日志框架(SLF4J、JCL)的API而不是具体日志库中的APISLF4j绑定具体日志框架的过程系统应依赖使用日志框架(SLF4J、JCL)的API而不是具体日志库中的API在日志输出时,字符串变量之间的拼接使用占位符的方式日志打印时禁止直接用JSON工

2021-11-01 16:10:57 392

原创 Day3MySQL设计

Day3MySQL设计建表规约解决数据库相关名称的纠结选择合适的数据类型和长度表、字段命名必须使用小写字母或数字禁止出现数字开头禁止两个下划线中间只出现数字不使用复数名字禁用保留字是与否概念性的字段,必须使用is_xxx的方式命名数据类型小数类型为 decimal货币数据使用最小货币单位,数据类型我bigint字符串长度几乎相等使用char,一般定长是charvarchar长度不要超过5000(本身6553),不定长数据用varchar建表强制规约表必备三字

2021-10-30 13:10:50 117

原创 T31Day2需求分析与设计

Day11、T31 项目简介T31项目是类似于12306的售票网站从查票、下单、付钱、通知的主流程抽象商品、订单、支付的核心模型处理票务异常和日志了解架构设计背后的方法论以战促练,全面提升代码能力、设计能力、交付能力和协作能力2、需求分析理解和挖掘用户的诉求、以及背后的逻辑,准换成可行性的分析结果。从非结构化到结构化,确定系统的职责、模块的过程。边界、用户故事、用户路径分析背后的人性:人性是提出需求的本源需求产品化:模块化、配置化、有逻辑需求落地分析需求分析

2021-10-28 16:12:41 300

原创 T31Day1

T31Day0开班仪式开始了,跟着程序员天花板坚持一个月,相信自己,不轻贱不放弃。开局五问孤尽孤帆远影碧空尽独孤九剑,破尽天下武功Java东南方向的旅游胜地巴厘岛Java工具包里经常能看见的东西:Jakarta训练营31天二进制 11111一月31天(改变要多久?)21天真心学不会(不是21天养成一个习惯?)杭州到北京的T31次列车手掌的意思张开的五根手指对应五个1钢铁侠的科技元素拯救地球(我不觉得,如果拯救地球需要一个人那也太悲哀了,这个人不是应该受到

2021-10-27 17:52:56 162

原创 孤尽T31项目

T31Day0开班仪式开始了,跟着程序员天花板坚持一个月,相信自己,不轻贱不放弃。开局五问孤尽孤帆远影碧空尽独孤九剑,破尽天下武功Java东南方向的旅游胜地巴厘岛Java工具包里经常能看见的东西:Jakarta训练营31天二进制 11111一月31天(改变要多久?)21天真心学不会(不是21天养成一个习惯?)杭州到北京的T31次列车手掌的意思张开的五根手指对应五个1钢铁侠的科技元素拯救地球(我不觉得,如果拯救地球需要一个人那也太悲哀了,这个人不是应该受到

2021-10-25 18:58:02 224

原创 Excel VBA宏

一、宏与VBA什么是宏与VBAVBA(Visual Basic for Applications)是[Visual Basic](https://baike.baidu.com/item/Visual Basic)的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。主要能用来扩展Windows的应用程序功能,特别是[Microsoft Office](https://baike.baidu.com/item/Microsoft Office)软件。它也可说是一种应用程式视觉化

2021-10-13 11:45:57 5733

原创 力扣刷题3.无重复字符的最长子串

力扣3.无重复字符的最长子串题目描述:给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。实例:输入: s = “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不是子串。题解思路:使用HsahMap集合来记录每个字符是否出现代码:package com.zyf.day6;import java.util.HashMap;/** * @author zy

2021-08-30 11:49:07 148

原创 **Centos7.5安装gcc时yum在锁定状态**

yum提示Another app is currently holding the yum lock; waiting for it to exit...要么kill掉它kill -s 9 25960要么强制关掉yum进程:rm -f /var/run/yum.pid

2021-08-05 14:23:34 102

原创 电影推荐系统

项目介绍1、推荐系统根据用户的历史数据发掘用户的潜在需求。2、长尾商品区别于热门商品,热门商品代表用户们的普遍需求,而长尾商品代表用户的个性化需求。3、推荐方法1)专家推荐(人工推荐):资深专家根据经验给出推荐。2)统计推荐(热门推荐):根据历史记录进行统计,得出推荐结果,简单有效。3)内容推荐:利用机器学习,根据物品的特性,找出相似物品。4)协同过滤推荐:根据本用户的历史数据,找出最相近的用户,根据最近用户对某物品的喜好,计算本用户对该物品的喜好程度。5)混合推荐:多种方法结合进行推荐

2021-07-02 15:22:20 5052

原创 初识Spring

1、Spring1.1、简介ssh:struts2+spring+Hibernatessm:SpringMvc+Spring+Mybatis文档:https://docs.spring.io/spring-framework/docs/4.3.24.RELEASE/spring-framework-reference/html/官网:https://docs.spring.io/spring-framework/docs/current/reference/html/overview.html#o

2021-06-03 11:55:28 92

原创 Zookeeper

Zookeeper1.1 概述Zookeeper是一个开源的分布式的,为分布式应用提供协调服务的Apache项目。Zookeeper工作机制Zookeeper从设计模式来理解是一个基于观察者模式设计的分布式服务框架,负责和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发送变化,Zookeeper就将负责通知已经在Zookeeper上注册的那些观察者做出相应的反应。1.2 特点Zookeeper:一个领导者(Leader),多个追随者(Follower)组成的集群。集群中只要有

2021-06-03 11:52:13 57

原创 Windows10 spark-shell读写csv文件

spark-shell读写csv文件文件:{“name”:“Michael”}{“name”:“Andy”, “age”:30}{“name”:“Justin”, “age”:19}在D:\Opt下创建json文件,然后打开spark命令行终端读取文件scala> val jsonStr=sc.textFile("D:\\Opt\\people.json")jsonStr: org.apache.spark.rdd.RDD[String] = D:\Opt\people.json Map

2021-05-27 08:40:55 1002

原创 Hadoop3.0集群安装配置

centos7.5的搭建官网https://www.centos.org/下拉进入Older Version往下拉找到Base Distribution,选择自己的版本,点击Tree选择CentOs的ISO镜像文件(isos目录)选择对应电脑的版本进行下载选择你需要的,一般下载DVD标准安装版就行各个版本的ISO镜像文件说明:CentOS-7-x86_64-DVD-1810.iso 标准安装版(推荐)CentOS-7-x86_64-Everything-1810

2021-05-26 19:50:29 281

原创 Spark集群安装

spark所在hadoop环境参照这里spark-standlone模式安装​​ 真实工作中还是要将应用提交到对应的 集群中去执行,这里我们来看看只使用 Spark 自身节点运行的集群模式,也就是我们所谓的 独立部署(Standalone)模式。Spark 的 Standalone 模式体现了经典的 master-slave 模式。集群规划如下所示:1.解压缩文件将 spark-3.0.0-bin-hadoop3.2.tgz 文件上传到 Linux 并解压缩在指定位置tar -zxvf sp

2021-05-26 18:59:02 67

原创 Mybatis使用#{} 和${} 的区别

#{} 和¥{} 的区别预编译 没有预编译#{}与JDBC一样创建prearedStatement参数占位符并安全设置参数(就像使用 ? 一样),安全迅速,转义字符${} 采用的是字符串拼接参数的形式,不太安全,当传入参数为字段名,表名,排序方式,固定常量则可以使用。不转义字符串,有风险,同时存在sql注入,一般设置固定变量,例如字段名。用 ${} 方式传入数据直接显示在生成的sql中,且${}无法防止sql注入,${}一般用来传入数据库的对象,比如数据库表名注意:mybatis排序的时候使用or

2021-05-25 12:16:02 211

原创 win10下安装Spark3.0和Hadoop3.1.3

1、spark win10安装(1)解压文件到无空格的安装目录,安装到的目录为D:\Enviroment\Spark\spark-3.0.0-bin-hadoop3.2(2)添加环境变量SPARK_HOME :D:\Enviroment\Spark\spark-3.0.0-bin-hadoop3.2%SPARK_HOME%\bin%SPARK_HOME%\sbin(3)测试cmd下输入spark-shell2、Hadoop win10下安装本安装用的是Linux下的hado

2021-05-24 23:14:25 2847 1

原创 Mybatis快速上手教程

1、简介1.1什么是MybatisMyBatis 是一款优秀的持久层框架它支持定制化 SQL、存储过程以及高级映射MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache softw.

2021-05-21 19:41:15 342

原创 IDEA连接MySQL服务器返回无效时区。转到“高级”选项卡

IDEA连接MySQL数据库报错Server returns invalid timezone. Go to ‘Advanced’ tab and set ‘serverTimezone’ property manually.**服务器返回无效时区。转到“高级”选项卡并手动设置“服务器时区”属性。进入命令窗口(Win + R),连接数据库 后输入show variables like'%time_zone';​ 如图显示 SYSTEM 就是没有设置时区。继续输入 show variabl

2021-05-19 20:53:02 579

原创 MySQL5.7安装包安装

MySQL5.7.19下载地址https://downloads.mysql.com/archives/community/解压到自己想安装的bin目录 D:\Enviroment\mysql-5.7.19-winx64\bin添加环境变量在D:\Enviroment\mysql-5.7.19-winx64下新建 my.ini 文件编辑文件,注意替换路径[client]port=3306default-character-set=utf8[mysqld]ba

2021-05-19 19:25:36 1239

原创 Spark学习之scala基础

Sparkscalamaven项目——添加scala框架支持——设置项目目录——新建代码——配置pom.xml——运行——打成jar包——提交到sparkwinDownload | The Scala Programming Language (scala-lang.org)[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XbAUjckX-1621340079228)(C:\Users\Zyf\AppData\Roaming\Typora\typora-user-im

2021-05-18 20:15:36 180

原创 Docker基础命令

Docker基础命令docker images可以根据repository来判断镜像来自哪个服务器,如果没有“/”表示官方镜像;如果类似username/repos_name则表示DockerHub的个人公共库;如果类似regsistory.example.com:5000/repos_name则表示是私服。image id 其实是缩写,如果响应表示的完整则应该加上–no-trunc选项1、docker search spark-lab-env搜索范围是官方镜像和所有和人公共镜像,在NAME列中/后

2021-04-25 17:07:40 131

原创 Centos7.2的Docker安装+Spark镜像

Docker安装过程Centos7.2安装Docker1、卸载旧版本安装包yum remove docker docker-common docker-selinux docker-engine2、安装依赖包yum install -y yum-utils device-mapper-persistent-data lvm23、添加yum 源仓库yum-config-manager --add-repo https://download.docker.com/linux/centos/dock

2021-04-25 17:04:07 372

空空如也

空空如也

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

TA关注的人

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