- 博客(75)
- 收藏
- 关注
原创 面试题-每日5道
66.throw和throws的区别?throw:是真实抛出一个异常 throws:是声明可能会抛出一个异常67.final,finally,finalize有什么区别?final:是修饰符,如果修饰符类,此类不能被继承;如果修饰方法和变量,则表示此方法和此变量不能在被改变,只能使用 finally:是try{}catch{}finally{}最后一部分,表示不论发生任何情况都会执行,finally部分可以省略,但如果finally部分存在,则一定会执行finally里面的代码 fi
2024-08-30 10:00:04
349
原创 面试题-每日5道
XSS 攻击:即跨站脚本攻击,它是 Web 程序中常见的漏洞。原理是攻击者往 Web 页面 里插入恶意的脚本代码(css 代码、Javascript 代码等),当用户浏览该页面时,嵌入其 中的脚本代码会被执行,从而达到恶意攻击用户的目的,如盗取用户 cookie、破坏页面结 构、重定向到其他网站等。预防 XSS 的核心是必须对输入的数据做过滤处理。
2024-08-29 14:45:51
452
原创 Docker
Docker是基于Go语言实现的云开源项目。Docker的主要目标是“Build,Ship and Run Any App,Anywhere”,也就是通过对应用组件的封装、分 发、部署、运行等生命周期的管理,使用户的APP(可以是一个WEB应用或数据库应用等等)及其运行 环境能够做到“一次镜像,处处运行”。
2024-08-28 10:48:23
1444
原创 面试题-每日5道
反射就是类在运行期间把类中成员抽取为其他类的过程。Java序列化是为了保存各种对象在内存中的状态,并且可以把保存的对象状态在读取出来想把内存中的对象状态保存到一个文件中或者数据库中时候想用嵌套字在网络上传送对象的时候想通过RMI(远程方法调用)传输对象的时候。
2024-08-27 14:33:39
396
原创 微服务-spring cloud隔离和降级
把原来的sentinel关掉,启动别人写好的带有持久化的jar包。在这里设置各种模式就会保存下来。再重新访问sentinel。
2024-08-09 20:36:05
630
原创 面试题-每日5道
在Java6之前,monitor的实现完全依靠操作系统内部的互斥锁,因为需要进行用户态到内核态的切换,所以同步操作是一个无差别的重量级操作,性能也很低。但在Java6的时候,Java虚拟机对此进行了大刀阔斧地改进,提供了三种不同的monitor实现,也就是常说的三种不同的锁:偏向锁(Biased Locking),轻量级锁和重量级锁,大大改进了其性能。ThreadLocal为每个使用该变量的线程提供独立的变量副本,所有每一个线程都可以独立的改变自己的副本,而不会影响其他线程所对应的副本。
2024-08-08 20:48:03
227
原创 面试题-每日5道
分为ThreadPoolExecutor手动创建程序池和Executors自动创建线程池,具体又分为7种:newFixedThreadPool():创建固定线程池,控制并发的线程数,超出线程池的线程会在等待列队中。newCachedThreadPool():创建可缓存的线程池,超出线程池的线程会缓存一会回收,线程池中的线程不够会创建线程。newSingleThreadExector():创建单个线程的线程池,可保证先进先出的顺序。
2024-08-07 21:06:37
461
原创 Gateway网关
创建网关模块添加gateway依赖前提:不能引入spring-boot-starter-web依赖,否则回报错,因为web内置了tomcat服务器,而gateway内置了netty服务器配置文件server:port: 89spring:#配置路由转发cloud:gateway:routes:- id: product #路由id,没有实际意义。如果不定义UUID随机生成uri: http://localhost:8002 # 表示路由真实转发的微服务的地址。
2024-08-07 20:34:00
465
原创 Nacos集群模式-window版
先创建一个名为nacos的数据库,再直接把表拖进去即可。把该文件名该为cluster.conf并修改里的内容。把bin/starup.cmd改为集群模式。
2024-08-07 18:51:22
396
原创 微服务架构
有两个版本:spring cloud netflix【停止更新】和spring cloud alibaba。spring cloud就是一系列框架的集合,为了解决微服务的挑战。
2024-08-05 17:16:31
503
原创 面试题-每日5道
可以使用Collections.unmodifiableCollection()创建一个只读集合,这样对集合有任何操作抛出了Java.lang.UnsupportedOperationException异常。
2024-08-05 16:39:41
295
原创 org.springframework.web.client.HttpClientErrorException$NotFound异常
注入RestTmeplate类时,改类需要@RestController或@ResponseBody。
2024-08-05 16:05:04
1495
原创 面试题-每日5道
相同点:都是删除第一个元素并返回。不同点:如果没有元素poll()会返回null,而remove()会抛出NoSuchElementException异常。
2024-08-02 18:42:43
442
原创 面试题-每日5道
HashMap是基于hash值实现的,通过put存储数据,get获取数据。当传入key时,HashMap会根据key.HashCode()来计算hash值,根据hash值将value保存道bucket中。当计算出的hash值有相同的时候,我们称之为哈希冲突,可以使用链表或红黑树来存储相同hash值的value。
2024-08-01 19:01:44
504
原创 面试题-每日5到
Files.exists():检测文件路径是否存在Files.createFile():创建文件Files.createDirectory():创建文件夹Files.delete():删除一个文件或目录Files.copy():复制文件Files.move():移动文件Files.size():查看文件个数Files.read():读取文件Files.write():写入文件。
2024-07-31 20:12:04
555
原创 组件化开发
三部分构成template:结构 (有且只能一个根元素)script: js逻辑style: 样式 (可支持less,需要装包)让组件支持lessstyle标签,lang=“less” 开启less功能装包: yarn add less less-loader -D 或者npm i less less-loader -D定义组件路由渲染配置路由。
2024-07-31 19:51:03
1806
原创 安装nodejs服务器
Java项目可以运行在tomcat服务器,开始完成前后端完全分离。前端有自己独立的工程。我们需要把前端独立的工程运行起来。运行在nodejs服务器下。验证是否安装成功:敲cmd--输入node --version。
2024-07-31 16:24:15
477
原创 面试题-每日5道
JDK:Java Development Kit 的简称,Java开发工具包,提供了Java的开发环境和运行环境。JRE:Java Runtime Environment 的简称,Java运行环境,为Java的运行提供了所需环境。具体来说JDK其实包含了JRE,同时还包含了编译Java源码的编译器Javac,还包含了很多Java程序调试和分析的工具。简单来说:如果你需要运行Java程序,只需安装JRE就可以了,如果需要编写Java程序,需要安装JDK。
2024-07-27 16:33:26
225
原创 Jenkins持续集成软件
jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,提供一个开放易用的软件平台,时软件项目可以进行持续集成。通俗来说:Jenkins软件就是自动拉取git远程仓库所提交的项目,不用自己动手拉取等一些操作。
2024-07-26 18:26:47
900
原创 Redis应用场景-分布式锁
12.安装window版的nginx,把配置文件修改为集群模式-nginx.conf。1.创建springboot项目。13.安装jmeter进行压测。9.使用Apipost测试。
2024-07-26 14:49:20
516
原创 Redis使用场景-热点数据缓存
为了把一些经常访问的数据放入缓存中已减少对数据库的访问,从而减少数据库的压力,提高程序的性能。【内存中存储】-效率快。
2024-07-25 11:19:11
564
原创 Springboot整合redis
springboot整合redis是封装了两个工具类:StringRedisTemplate和RedisTemplate。StringRedisTemplate是RedisTemplate的子类。StringRedisTemplate里面只能放字符串的内容。
2024-07-24 18:34:17
360
原创 redis的集群模式
1.如果某个slave宕机了,再重新启动会变成单个主节点并,需要重新配置主从关系。2.master宕机后,slave不会自动选取master节点。导致主节点宕机后,无法进行写操作。
2024-07-23 10:34:33
882
原创 redis的使用场景和持久化方式
bgsave会在后台异步进行快照模式,快照的同时还能响应客户端请求。bgsave在执行该命令时会fork出一个新的线程,单独执行rdb持久化操作,而不影响其他客户对redis服务的操作。save该命令会阻塞当前redis服务器,执行saveml期间,redis不能处理其他命令,直到rbd过程完成为止。什么是RDB:【redis database】快照模式,每隔一段时间对内存中的数据进行快照存储,保存数据。什么是持久化:把内存中的数据存储到磁盘的过程,同时也可以把磁盘中的数据加载到内存中。
2024-07-22 15:16:03
711
原创 linux安装redis
启动redis服务:redis-server redis.conf。安装c语言:yum install -y gcc-c++编译安装:make install-也自动配置了环境变量。进入解压后的目录:cd redis-7.2.3。在官网上下载redis源码安装包。再关闭redis,再启动。放入app目录下并解压。防火墙放行6379端口。
2024-07-19 17:14:09
449
1
原创 redis
nosql[not only sql]不仅仅是SQL,所有非关系型数据库的统称。redisredis是一种开放源代码(BSD许可)的内存中数据结构存储,用作数据库,缓存和信息代理。redis提供数据结构,例如字符串,哈希,列表,集合,带范围查询的排序集合,位图,超日志,地理空间索引和流。redis具有内置的复制,lua脚本,lru驱逐,事务和不同级别的磁盘持久性,并通过redis sentinel和redis cluster自动分区提供了高可用性。
2024-07-19 15:21:24
1077
原创 Linux安装nginx
重新加载nginx:nginx -s reload。关闭nginx:nginx -s stop。启动nginx:./nginx。放在专门放软件的app下。
2024-07-18 11:38:00
442
原创 Linux安装MySQL
发现root用户只允许localhost主机登录登录。进入先修改密码,然后再退出:exit;再重新退出进入看看密码是否能用。这样就代表MySQL安装成功了。(这个过程会有点慢)
2024-07-18 11:09:48
338
原创 linux安装tomcat
浏览器访问tomcat前需要防火墙放行tomcat,不然访问不到。把下载好的tomcat拖入到专门存放软件app的目录下。这样tomcat就安装好了。这里为了方便我给修改的名字。注意:需要重启防火墙。
2024-07-17 09:17:12
344
原创 Linux安装jdk
下载好的jdk压缩包是放在window系统文件里的,我们需要专门建一个存放这些软件的目录。这里我就放如usr下,在usr里创建一个app目录,再切换到app目录下。把window里的jdk直接拖入到app目录下就好。一定要下载带有.tar.gz后缀的。这里为了方便我给它改为jdk8。官网地址:jdk下载官网。出现jdk版本就是成功了。
2024-07-17 08:57:09
204
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人