自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Darren的博客

学习笔记积累

  • 博客(63)
  • 收藏
  • 关注

原创 Nginx

文章目录背景什么是nginxnginx作用Nginx安装Nginx 虚拟主机配置解析静态资源部署反向代理设置背景网站上线初期,用户量小,并发量小,只需要一台服务器即可。随着用户量增加,一台服务器已经不能适应需要 -> 横向扩展服务器。中间件做反向代理 -> nginx架构:没有什么是加一层解决不了的。如果不行就加两层。什么是nginxnginx是一个高性能的HTTP和反向代理服务器。同时也提供了IMAP/POP3/SMTP服务。特点:占有内存小,并发能力强!n

2022-03-05 17:38:18 2268

原创 RabbitMQ ReturnCallback没有执行

项目场景:测试RabbitMQ 消息确认机制中的ReturnCallback。已经按照要求做了如下配置:application.yml中配置:spring: rabbitmq: host: 远程ip port: 5672 virtual-host: /xzk username: ****** password: ****** publisher-confirm-type: correlated publisher-returns: tr

2022-02-26 10:56:26 3565 2

原创 Nacos Config远程配置读取失败

项目场景:测试Springboot整合RabbitMQ的时候,使用Nacos做远程配置中心问题描述:使用Nacos做远程配置中心,在bootstrap.yml中已经配置好相关信息如下:spring: application: name: rabbitmq-producer profiles: active: dev cloud: nacos: config: server-addr: 远程ip:1111 file-ex

2022-02-25 23:30:38 2286 1

原创 Docker数据卷数据覆盖的问题

1. 结论参考博客:https://www.cnblogs.com/sparkdev/p/8504050.html数据覆盖的两条规则:如果挂载一个空的数据卷到容器中的一个非空目录中,那么这个目录下的文件会被复制到数据卷中。如果挂载一个非空的数据卷到容器中的一个目录中,那么容器中的目录中会显示数据卷中的数据。如果原来容器中的目录中有数据,那么这些原始数据会被隐藏掉。【覆盖】我的测试结论:规则1:按路径挂载:如果容器中的非空目录是其Dockerfile中使用VOLUME命令声明过的,则容器

2022-02-22 16:38:39 7009 1

原创 Nacos高可用集群配置

0 准备0.1 环境Nacos集群和数据库均部署在阿里云ECS服务器上。版本:nacos:1.4.2mysql:8nginx:0.2 下载1 配置Nacos集群1.1 配置Mysql数据库1.1.1 安装Mysql数据库安装过程略。参考:Mysql安装教程配置数据库。创建一个数据库名为nacos。下载好nacos-server安装包(地址在1.2节),使用nacos/conf/nacos-mysql.sql文件初始化数据库。创建结果如下1.2 搭建集群(三个节

2022-02-12 21:08:27 2773

原创 nacos远程服务器部署,总是显示localhost:8848而不是远程ip

背景学习nacos时,首先在本地windows环境上部署了一个nacos服务器,成功从本地nacos上取得配置信息并且实现服务注册。后面想把nacos部署到远程linux上。照道理只需要修改bootstrap.yml文件中的serverAddr,改为远程ip。但这样修改之后无论怎样运行服务,都会报错 com.alibaba.nacos.api.exception.NacosException: Request nacos server failed: at com.alibaba.nacos.clie

2022-02-09 11:27:42 5772

原创 Dubbo学习踩坑记录

1 服务无法注册到zookeeper1.1 现象在idea创建好服务,启动后在zookeeper客户端没有找到注册的服务。1.2 原因虚拟机没有关闭防火墙1.3 解决方案关闭防火墙即可。systemctl stop firewalld 关闭防火墙服务systemctl disable firewalld 禁止防火墙开机自启动2 dubbo-admin部署到tomcat后,tomcat无法启动2.1 现象tomcat启动时,控制台报错:org.springframework.be

2022-01-13 15:53:14 224 1

原创 VMware虚拟机(centos7)设置固定ip

网上其他教程多少有点问题,因此这里自己成功设置一遍做记录。文章目录0 环境1 查看虚拟网络设置1.1 编辑->虚拟网络编辑器1.2 VMnet8 -> NAT设置1.3 查看NAT设置,记住子网掩码、网关2 在宿主机端配置虚拟网络2.1 Windows+X -> 网络连接2.2 进入高级网络设置2.3 找到虚拟网络适配器VMnet8,查看其他属性2.4 编辑ip地址,参照1.3处的信息3 修改虚拟机网络配置4 重启虚拟机,查看当前虚拟机ip已生效5 修改虚拟机DNS保证虚拟机可以连外网

2022-01-12 12:46:01 1329

原创 MySQL存储引擎原理深入剖析

文章目录1 InnoDB存储引擎原理2 内存管理2.1 内存淘汰算法2.1.1 移动的规则3 事务3.1 MVCC3.1.1 快照读如何实现了RR?3.2 undolog3.3 redolog4 锁4.1 如何加锁?RR/RC * 唯一索引/非唯一索引4.1.1 RC & 非唯一索引4.1.2 RR & 非唯一索引间隙锁4.1.3 表级锁4.1.4 加锁过程死锁问题1 InnoDB存储引擎原理以Page为单位存储,每个Page的结构如下:(每个页的大小为16KB)页头记录页面

2021-10-22 18:02:41 482

原创 jvm性能优化

文章目录1 JVM内存模型2 调优诊断工具2.1 jvisualvm2.2 阿里arthas2.2.1 直接下载jar包运行2.2.2 常用命令3 垃圾回收过程3.1 垃圾回收机制3.2 回收过程3.2.1 minor gc:当Eden区放满,回收新生代空间3.2.2 新生代转移到老年代3.2.2.1 长期存活的对象3.2.2.2 Survivor区域存满,会把这些对象拷贝老年代3.2.2.3 大对象进入老年代3.2.2.4 对象动态年龄判断3.2.3 full gc:回收整个堆空间4 调优目的:减少ful

2021-09-29 15:48:00 67

原创 多线程与高并发笔记

文章目录1 CAS2 synchronized与volatile的硬件级实现2.1 一个Object在内存中的结构分布?2.2 锁2.2.1 锁升级过程2.2.2 锁消除2.2.3 锁粗化3 synchronized实现过程4 超线程5 volatile5.1 可见性与cacheline缓存行案例1:没有做缓存行对齐案例2:做缓存行对齐5.2 禁止重排序5.2.1 重排序的根源5.2.2 饿汉式单例模式必须要加volatile吗?5.2.3 volatile底层原理5.2.3.1 内存屏障5.2.3.2 j

2021-09-29 15:47:14 95

原创 ReentrantLock底层原理分析

文章目录1 使用1.1 tryLock1.2 lockInteruptibly2 底层原理2.1 lock()2.1.1 sync.acquire方法2.1.1.1 tryAcquire方法(以FairSync子类(公平锁)实现为例)2.1.1.2 addWaiter方法2.1.1.3 acquireQueued方法3 总结1 使用ReentrantLock是Java并发包中互斥锁,它有公平锁和非公平锁两种实现方式,以lock()为例,其使用方式为: ReentrantLock takeLock

2021-09-29 15:37:32 1247

原创 山东医院项目经验汇总

文章目录1 如何实现a标签禁用2 快速将form标签中的输入进行序列化3 通过jquery操作某个select选中某个选项4 页面之间传递中文参数乱码5 页面之间传递参数的读取6 带有文件以及常规字段的form如何提交7 多个ajax顺序执行的问题7.1 设置async=false7.2 嵌套ajax或者设置在回调函数中8 ajax中的return9 前端传递数组,后台如何接收1 如何实现a标签禁用a标签没有disabled属性,因此需要通过其他方式禁用。这里提供一种方式:$(".praise").

2021-09-14 11:17:55 280

原创 SSM项目配置文件

文章目录1 pom.xml2 spring.xml3 springmvc.xml4 web.xml1 pom.xml导入依赖,插件等<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLoc

2021-08-25 23:24:15 169

原创 SSM项目踩坑点

文章目录1 静态资源访问1.1 扩展:上述都配置了但是还是无法访问静态资源:因为配置文件没有打包进项目2 springmvc从客户端接收日期和向客户端发送日期2.1 接收日期:@DateFormat2.2 发送日期:@JsonFormat2.3 通过在controller中追加initDateFormatBinder方法3 前端disabled的数据无法获取1 静态资源访问因为代码需要Restful风格,因此在dispatcherServlet中需要配置请求url-pattern为/。但这样静态资源也

2021-08-25 22:24:32 283

原创 Spring操作JDBC

文章目录1 使用到的类1.1 数据操作1.2 事务管理2 范例2.1 数据操作2.2 事务管理2.2.1 基于注解的事务管理2.2.2 基于xml的事务管理1 使用到的类1.1 数据操作JdbcTemplate:jdbc模板,传入dataSource作为参数,可以直接通过update或者query方法执行sql语句(包括有占位符的预通道语句)JdbcDaoSupport:Jdbc对数据操作的支持。我们通常自定义一个数据操作类继承自此类。通过它的getJdbcTemplate()方法可以拿到它的j

2021-08-21 12:14:00 147

原创 Spring-AOP实现

文章目录1 基于CGLib的动态代理设计1.1 配置cglib依赖1.2 原理与实现1.2.1 自定义拦截器(实现Interceptor接口),实现intercept方法。1.2.2 通过Enhancer获得代理对象2 SpringAOP2.1 Spring AOP相关概念2.1.1 AOP的相关术语2.2 AspectJ对AOP的实现2.2.1 导入依赖2.3 实现真实业务接口和业务类2.4 注解实现切面类2.4.0 声明spring配置文件2.4.1 @Aspect声明为切面类2.4.2 @***指定切

2021-08-18 10:58:38 83

原创 Spring-IOC实现

文章目录1 导入依赖和插件2 实现2.1 bean标签2.1.1 构造对象2.1.1.1 调用无参构造2.1.1.2 调用有参构造2.1.2 通过工厂创建对象2.1.2.1 通过工厂的静态方法2.1.2.2 通过工厂的实例方法2.1.3 基于XML的依赖注入2.1.3.1 通过有参的构造函数2.1.3.2 通过property标签(普通注入和自动注入)2.2 基于注解实现IoC2.2.1 声明bean的注解:@Component、@Repository、@Service、@Controller2.2.2 包

2021-08-16 20:50:37 83

原创 Redis哨兵模式及集群配置

文章目录1 Redis安装和配置1.1 编译环境配置1.2 Redis安装1.2.1 使用SecureFX把Redis安装包传到centos1.2.2 解压redis安装包1.2.3 编译1.2.4 安装1.2.5 Copy文件2 启动Redis以及客户端2.1 配置redis.conf文件2.2 后台启动2.3 开启客户端2.4 退出客户端2.5 关闭redis服务3 Redis主从复制3.1 配置方法3.1.1 创建从机3.1.2 启动从机和客户端3.1.3 通过info replication指令查看

2021-08-15 17:14:28 607

原创 Maven构建web项目过程

文章目录1 新建项目1.1 新建1.2 指定groupId、artifactId、version2 配置项目(在pom.xml中)2.1 配置打包信息2.2 添加依赖信息3 添加并配置web框架3.1 添加3.2 配置3.2.1 配置web资源目录3.2.2 配置web.xml所在位置4 配置artifacts5 添加tomcat插件6 添加tomcat配置7 测试8 相关问题8.1 tomcat点击运行后直接退出,在console里显示Skipping non-war project8.2 web目录下无

2021-08-13 17:57:55 1431

原创 idea项目打包并部署到centos虚拟机上

文章目录1 项目打包war1.1 在Project Structure里,添加项目构建war包1.2 build项目2 项目部署2.1 重要前提:请保证linux上安装的jdk版本与项目实际jdk版本一致。否则将无法访问项目文件夹,报404错误。2.1.1 如何修改centos上的jdk版本?2.2 部署2.3 重启服务器1 项目打包war参考:https://blog.csdn.net/github_38336924/article/details/824228881.1 在Project Str

2021-08-13 00:45:47 1234

原创 二维码快速生成方法

下载资源文件步骤: 1. 引入Jquery.js文件 2. 引入jquery.qrcode.js文件 3. 引入支持中文的编码js文件 (utf.js) 4. 在网页中编写一个div 用于显示二维码 <div id="div1"></div> 5. 准备二维码的规格对象(JSON) var config = { width:数字,//值是number类型, 表示的单位

2021-08-03 18:03:48 222

原创 MVC框架实现

1 背景之前编写的项目,每个请求都需要一个servlet来响应。我们可以优化代码结构,让多个请求可以被一个servlet接收,然后分发给不同的方法进行处理。2 原理定义一个servlet,接收某一大类的请求(比如*.do);定义一个分发处理类,保存请求地址uri和处理方法之间的映射关系;由servlet接收请求,调用分发处理类的get方法,找到能够处理此请求的对象(注意java是面向对象的,因此能够处理请求的方法一定是封装在对象里的)由对象.方法进行请求处理。2.1 方法绑定请求地址通过

2021-08-02 22:32:53 336 1

原创 JavaWeb-项目实战心得和经验

文章目录1 对转发的新理解2 JSTL标签库中定义的变量保存到哪里3 如何实现页面跳转并同时弹出对话框4 关于请求路径5 服务器报错:com.alibaba.druid.pool.GetConnectionTimeoutException5.1 问题背景:5.2 产生原因:5.3 解决方法:6 关于EL表达式直接获得对象的私有属性7 关于AJAX得到服务器返回值8 数据库操作错误:java.sql.SQLSyntaxErrorException: You have an error in your SQL

2021-08-02 00:59:53 2213

原创 版本控制工具git和远程服务器

文章目录1 git相关操作1.1 初始化1.2 创建用户名和邮箱1.3 添加/修改文件1.4 删除文件(本地的文件被删除)1.4.1 去除文件的版本控制但不删除本地文件1.5 删除文件夹1.5.1 删除文件夹1.6 提交到版本库2 远程服务器进行版本控制的相关概念2.1 仓库(Repository)2.2 收藏(star)2.3 复制克隆项目(fork)2.4 发起请求(pull request,简称PR)2.5 关注(watch)2.6 事务卡片(Issue)2.7 Gitee主页2.8 仓库主页3 id

2021-07-26 23:41:53 226

原创 JavaWeb-文件上传与下载

文章目录1 文件上传1.0 首页准备1.1 创建文件上传对象1.2 初始化文件上传对象1.3 设置编码1.4 文件上传1.5 获取文件信息和表单上的其他信息1.6 设置文件保存路径1.7 将上传的文件保存到服务器1.7.1 解释1.8 跳转页面1.9 完整代码2 下载文件1 文件上传使用SmartUpload类进行操作。分为以下几个步骤1.0 首页准备首页需要有一个表单。表单必须设置:enctype="multipart/form-data",以及提交方式:method="post"文件输入框

2021-07-26 17:40:07 111

原创 JavaWeb- AJAX

文章目录1 AJAX原理2 AJAX包含的技术3 AJAX工作原理4 AJAX编程步骤4.1 JS实现4.1.1 创建XMLHttpRequest对象4.1.2 设置请求方式4.1.3 注册回调函数4.1.4 发送请求4.2 Jquery实现4.2.1 `$.ajax()` 实现4.2.2 `$.get()`方法4.2.3 `$.post()`方法5 JSON以及对象转换5.1 bean对象转换为JSON字符串5.2 JSON字符串转换为bean对象5.3 bean对象集合转化为JSON数组5.4 JSON

2021-07-26 02:04:51 156

原创 JavaWeb-Session、cookie、过滤器、监听器

文章目录1 Session和Cookie1.1 Cookie1.1.2 Cookie的应⽤1.1.2.1 保持⽤户登录状态1.1.2.2 记录⽤户名1.1.3 具体方法1.1.4 实现案例1.1.5 cookie的相关方法1.2 Session1.3 session和cookie的区别(面试会考)2 Filter过滤器2.1 定义2.2 语法格式2.3 使用场景2.3.1 设置每个request的characterEncoding2.3.2 防止用户未登录就访问到某个页面2.3.3 加密解密(密码的加密和解

2021-07-24 11:17:39 324

原创 JavaWeb-用户登录实现V2与踩坑点

文章目录1 实现代码1.1 思路1.2 login.html1.3 login_result.jsp1.4 invalidate_session.jsp2 注意点2.1 不能在javascript标签中通过jsp进行session失效操作2.2 表单数据接收2.3 使用JSTL操作数据库1 实现代码实现要求:前面我们实现了用户登录功能,当时我们要求用户登录成功后,跳转到success.html 页面,现在需要做需求迭代,用户登录成功后,要求跳转到success.jsp 页面,这个页面展示登录成功

2021-07-23 19:58:08 501

原创 JavaWeb-JSP

文章目录1 什么是JSP2 JSP为什么会出现3 JSP语法格式3.1 JSP中的注释4 JSP原理5 JSP内置对象5.1 page5.2 pageContext5.3 request:HttpServletRequest5.4 response:HttpServletResponse5.5 session:HttpSession5.6 application5.7 config5.8 out:PrintWriter5.9 exception5.10 JSP内置对象作用域6 JSP指令6.1 page指令

2021-07-23 19:12:42 110

原创 JavaWeb-用户登录实现V1与踩坑点

文章目录1 项目实现1.1 HTML页面(基于bootstrap)1.1.1 login.html1.1.2 success.html、failure.html1.1.3 web.xml1.2 数据库连接与验证类1.3 MyServlet1.4 其他配置1.5 项目结构图2 踩坑点2.1 ClassNotFoundException2.1.1 问题背景2.1.2 产生原因2.1.3 解决方法2.2 名为xx和xx的servlet不能映射为一个url模式(url-pattern) [/xxx]2.2.1 问题

2021-07-22 22:05:32 745

原创 JavaWeb-Servlet

文章目录1 概念1.1 Servlet⼯作模式:2 servlet API3 第一个servlet程序3.1 自定义servlet类3.2 通过web.xml文件把自定义的servlet类和html页面上的相关请求关联起来3.3 启动tomcat,在浏览器输⼊http://localhost:8080/⼯程名/访问服务器的路径。4 Servlet⼯作原理5 servlet生命周期(重要)6 请求6.1 客户端如何向服务器发送数据6.1.1 通过表单 get/post提交6.1.2 通过a标签发送数据(get

2021-07-22 20:36:13 176

原创 JavaWeb-入门

文章目录1 HTTP 协议2 HTTP请求/响应步骤2.1 客户端连接到Web服务器2.2 发送HTTP请求2.3 服务器接受请求并返回HTTP响应2.4 释放TCP连接2.5 客户端浏览器解析HTML内容3 HTTP请求⽅法4 两种开发模型4.1 概念4.2 各自优缺点5 Web服务器分类5.1 Tomcat 服务器5.2 Resin 服务器5.3 JBoss服务器5.4 WebSphere 服务器5.5 WebLogic 服务器6 Tomcat6.1 安装步骤6.2 Tomcat目录(重要!)7 IDE

2021-07-21 22:54:13 103

原创 前端-jQuery

文章目录1 概念2 jQuery安装2.1 版本2.2 下载2.3 使用3 语法结构3.1 基础语法:`$(selector).action()`3.2 文档就绪事件4 选择器4.1 标签、#id、.class、全局、并集、后代、子选择器4.2 相邻、同辈选择器4.3 属性选择器 [selector 1][selector 2]...[selctor n]4.4 可见性选择器 :visiable, :hidden5 jQuery常用函数5.1 与标签内容相关的函数5.2 与标签属性相关的函数5.3 与css

2021-07-20 21:27:28 133

原创 HTML、JavaScript、jQuery容易踩坑的点

文章目录1 关于居中1.1 水平居中1.2 垂直居中2 关于命名1 关于居中在介绍HTML元素的时候我们提到过,块状元素和行级元素的主要区别:块级元素会独占一行,其宽度自动填满其父元素宽度;行内元素会排列到同一行里,其宽度随元素的内容变化而变化。块级元素可以设置宽高;行内元素设置宽高无效。块级元素可以设置margin,padding属性;行内元素的水平方向的padding会有边距效果,但是竖直方向的padding没有效果。总结:块状元素宽度默认是父元素的宽度,高度默认是所有元素叠加在一

2021-07-18 15:36:05 70

原创 前端-JavaScript

文章目录1 概述1.1 什么是JavaScript1.2 作用1.3 用法1.3.1 HTML页面中的JS1.3.2 外部的JS文件1.3.3 写在标签内的js1.4 显示数据2 基本语法2.1 变量声明2.2 运算符2.3 字符串String2.4 数组2.4.1 声明数组2.4.2 数组的长度2.5 Date对象2.5.1 创建日期对象2.5.2 常用方法2.6 Math对象2.7 函数2.7.1 常用全局函数2.7.2 自定义函数和匿名函数2.8 全局变量和局部变量2.9 自定义对象2.10 wind

2021-07-17 00:44:03 164

原创 前端-CSS与CSS3美化界面

文章目录1. CSS的概念2. CSS样式分类2.1 行内样式2.2 内部样式2.3 外部样式3. CSS语法3.1 选择器分类3.1.1 id选择器3.1.2 class选择器3.1.3 标签选择器3.2 复合选择器3.2.1 全局选择器3.2.2 并集选择器3.2.3 交集选择器3.2.4 后代选择器3.2.5 子元素选择器3.2.6 伪类选择器3.2.7 复合选择器比对3.2.8 注意事项4 CSS常用样式4.1 color:字体颜色4.2 width height:宽高4.3 背景样式4.4 文本样

2021-07-14 16:40:08 606

原创 前端-HTML和HTML5常用标签

文章目录1 HTML基本结构2 常用标签2.1 文本标签2.2 图片标签2.2.1 基本标签2.2.2 设置图片的热点区域(了解)2.3 列表标签2.4 定义描述标签2.5 div标签2.6 标签分类2.7 超链接2.7.1 页面间跳转2.7.2 锚链接2.8 表格2.9 表单(重要)2.9.1 文本框2.9.2 密码框2.9.3 单选框2.9.4 复选框2.9.5 文件域2.9.6 日期(h5新特性)2.9.7 下拉列表框2.9.8 文本域2.9.9 按钮2.9.10 label标签2.9.11 隐藏域2

2021-07-12 17:35:22 231

原创 Java操作数据库-JDBC

1. 操作步骤1.1 导入包1.2 加载驱动程序:Class.forName("com.mysql.cj.jdbc.Driver");1.3 取得连接RDBMS JDBC驱动程序名称网址格式RDBMSJDBC驱动程序名称网址格式MySQLcom.mysql.jdbc.Driverjdbc:mysql://hostname:3306/databaseNameMYSQL8com.mysql.cj.jdbc.Driverjdbc:mysql://hostname:

2021-07-10 00:55:58 428

转载 数据库进阶-事务

文章目录1 事务的语法2 事务的特性3 事务的并发问题4 事务隔离级别4.1 读未提交READ UNCOMMITED4.2 读已提交4.3 可重复读4.4 顺序读事务(Transaction)是由一系列对系统中数据进⾏访问与更新的操作所组成的⼀个程序执行逻辑单元。(1) 事务的语法 (2) 事务的特性 (3) 事务并发问题 (4) 事务隔离级别 (5) 不同隔离级别的锁的情况(了解) (6) 隐式提交(了解)1 事务的语法1. start transaction; begin; 开始一个事务,

2021-07-07 19:18:43 109

空空如也

空空如也

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

TA关注的人

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