- 博客(52)
- 收藏
- 关注
原创 MySql面试题
配置完毕之后,通过以下指令重新启动MySQL服务器进行测试,查看慢日志文件中记录的信息/var/lib/mysql/localhost-slow.log。运维工具: Prometheus 、Skywalking。表象:页面加载过慢、接口压测响应时间过长(超过1s)调试工具:Arthas。
2023-08-05 13:15:50
244
原创 Redis相关面试题
解决方案:1、缓存不存在的数据,这会消耗内存 2、使用布隆过滤器,redis中的一种数据结构 bitmap 位图结构,对它先进行预热(多次hash算法),当key不存在一定不存在,当key存在可能不存在,会存在一定的误判,误判率可以设置为5%。缓存穿透:查询一个不存在的数据,数据库查不到数据也不会直接写入缓存,就会导致每次请求都查询数据库,一般都是恶意攻击。
2023-08-04 19:55:27
664
原创 gateway
gateway相当于所有服务的门户,将客户端请求与服务端应用相分离,客户端请求通过gateway后由定义的路由和断言进行转发,路由代表需要转发请求的地址,断言相当于请求这些地址时所满足的条件,只有同时符合路由和断言才给予转发。
2022-09-10 02:19:05
267
原创 支付平台系统
普及一个概念 1、第一方支付:即从一方到另一方,常见的就是买家到商家的过程,也就是现金支付,自己拿“现金”向卖家的一种支付行为,其本质的意义就是指货币支付。 2、第二方支付:第二方支付是指依托于银行的支付,支付原理就是买家直接通过银行去完成支付的过程。 3、第三方支付:第三方支付是指具备一定实力和信誉保障的独立机构,采用与各大银行签约的方式,通过与银行支付结算系统接口对接而促成交易双方进行交易的网络支付模式。 在第三方支付模式,买方选购商品后,使用第三方平台提供的账户进行货款支付(支付给第三方),并由第三方
2021-09-02 16:11:07
1013
原创 tomcat操作
1.tomcat部署在idea上 1.1创建一个JAVAEE项目,jdk选1.8以上,勾选webapplication 1.2在idea里run->edit Configurations添加Tomcat Server 有远程和本地的 前提是安装了tomcat 1.3配置好Server访问网址和Deployment的虚拟目录 1.4在web目录下创建WEB-INF目录,此目录下的web.xml用于配置访问路径,用于实现servlet接口的类. servlet: 运行在服务器端的小程序 * Servlet
2020-12-20 22:26:12
176
原创 记录一个坑
前端发送一个ajax请求,访问不到后台,报错原因:No mapping found for HTTP request with URI [/checkItem/add.do] in DispatcherServlet with name ‘springmvc’ 是因为springmvc.xml配置文件中扫描路径出错,导致一直请求不到数据 ...
2020-08-28 00:09:04
197
原创 Spring的学习
Spring是什么(理解) Spring是分层的 Java SE/EE应用 full-stack 轻量级开源框架,以 IoC(Inverse Of Control:反转控制)和 AOP(Aspect Oriented Programming:面向切面编程)为内核。 提供了展现层 SpringMVC和持久层 Spring JDBCTemplate以及业务层事务管理等众多的企业级应用技术,还能整合开源...
2019-12-18 11:21:50
146
原创 学习Xml
Java用Jsoup解析 * Jsoup:jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。 * 快速入门: * 步骤: 1. 导入jar包 2. 获取Document对象 3. 获取对应的标签Element对象 4....
2019-12-16 14:17:16
115
原创 学习一波SSH
Spring+Struts2+Hibernate 之前用jdbc和DButils,表字段特别多,把人都给整吐了,持久层框架的好处就在这; 运用ORM思想,实体类与数据库表建立联系,此时用什么来建立联系呢, 用配置文件来建立联系,properties是键值对的,而xml文件具有子父层级结构,所以用xml好. ...
2019-12-16 11:50:20
171
原创 linux常用操作命令
查看端口被占用监听情况 netstat -nap |grep 10086 grep ‘关键字’ 目标文件 -A 10 -B 10 查看日志文件的关键字出现的前10行,后10行; ps -ef |grep java 查看java进程; ps -ef |grep ‘关键字’ 按关键字查找服务进程情况 ps aux |grep java 也可以; less 文件名称; /关键字 ...
2019-12-06 21:57:38
225
原创 Redis总结一波
Redis是用c语言写的 Redis读写分离,保证了数据的一致性 主表写,保证数据准确性,从表读; redis-benchmark官方自带性能测试工具,正常一台redis的并发量为5.2万QPS; RT:响应时间,一般指系统所有功能平均时间或者所有功能的最大响应时间; TPS:吞吐量, 系统单位时间内处理请求的数量,当处理多个请求时,如果资源配置合理,每个用户看到的平均响应时间并不随用户数的增加而...
2019-12-05 00:45:30
140
原创 DNS内网ip设置例如nginx
在C:\Windows\System32\drivers\etc下修改配置 例如 127.0.0.1 www.xuecheng.com 都是先访问内网的这个配置,如果没有,就去外网访问
2019-11-14 11:01:48
243
原创 docker
Docker启动与停止命令 启动docker服务: systemctl start docker 停止docker服务: systemctl stop docker 重启docker服务: systemctl restart docker 查看docker服务状态: systemctl status docker 设置开机启动docker服务: systemctl enable docker 查看...
2019-11-14 09:02:18
309
原创 多线程锁的问题
public class SyncTest { public static void main(String[] args) { A a = new A(); // A a2 = new A(); new Thread(new Runnable() { @Override public void ...
2019-11-11 20:44:10
244
原创 二十一种设计模式
1.单例模式 分为懒汉和饿汉; 懒汉: public class Singleton { // 私有的、静态的成员保存唯一的实例 private static Singleton singleton; // 私有构造器,避免被创建实例 private Singleton(){} // 提供一个公共的、静态的方法,获取唯一的实例 public st...
2019-11-10 16:35:51
236
原创 RabbitMQ的作用
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Ma...
2019-11-07 23:49:34
624
原创 每天三道面试题,10K不是梦
1.JDK 和 JRE 有什么区别? JRE是个运行环境,JDK是个开发环境。因此,开发程序时,写的Java程序就是在JDK上,而运行Java程序的时候,就 需要JRE。 2.== 和 equals 的区别是什么? 在JVM中,内存分为堆内存跟栈内存,对象存储在堆内存中,基本类型存储在栈内存, 用等于的时候,数据为基本类型时,比较的时值,数据为对象时,比较的是地址值, equals比较的是对象的内...
2019-11-07 22:03:00
1798
2
原创 springcloud1基础
Spring RestTemplate 三种http客户端工具类包都可以方便的进行http服务调用: httpClient okHttp JDK原生URLConnection spring 提供了RestTemplate的工具类对上述的3种http客户端工具类进行了封装,可在spring项目中使用RestTemplate进行服务调用。 @RunWith(SpringRunner.class) ...
2019-11-04 20:14:18
266
原创 SOA服务,微服务优势
SOA服务优势 容错率高,各个服务互相不受影响 便于维护 解耦 代码复用高 可拓展性高,哪个服务处于低峰,可关闭,哪个服务用的多,可多开几台 数据库分布式处理,压力减小 微服务架构:是一套使用小服务或者单一业务来开发单个应用的方式或途径。 微服务架构特点: 单一职责 服务粒度小(多细看并发量) 面向服务(对外暴露REST api) 服务之间相互独立 与使用ESB的SOA架构的区别:微服务架构没...
2019-11-04 10:20:47
280
原创 Redis缓存穿透、缓存雪崩和缓存击穿
缓存穿透 是指查询一个数据库一定不存在的数据。正常的使用缓存流程大致是,数据查询先进行缓存查询,如果key不存在或者key已经过期,再对数据库进行查询,并把查询到的对象,放进缓存。如果数据库查询对象为空,则不放进缓存。 解决方案 布隆过滤:对所有可能查询的参数以hash形式存储,在控制层先进行校验,不符合则丢弃,从而避免了对底层存储系统的查询压力; 缓存空对象:当存储层不命中后,即使返回的空对象也...
2019-11-03 14:30:06
106
原创 POI操作excel表格
加载文件 第一种 // 使用POI读取Excel文件中的数据 @Test public void test1() throws Exception{ //加载指定文件,创建一个Excel对象(工作簿) XSSFWorkbook workbook = new XSSFWorkbook("E:\\abc.xlsx"); //读取Excel...
2019-10-22 23:15:21
273
原创 Maven高级
Maven高级 1.maven基础知识回顾 1.1 maven介绍 maven 是一个项目管理工具,主要作用是在项目开发阶段对Java项目进行依赖管理和项目构建。 依赖管理:就是对jar包的管理。通过导入maven坐标,就相当于将仓库中的jar包导入了当前项目中。 项目构建:通过maven的一个命令就可以完成项目从清理、编译、测试、报告、打包,部署整个过程。 [外链图...
2019-10-13 21:14:16
242
原创 Zookeeper的安装
3.2 安装Zookeeper 下载地址:http://archive.apache.org/dist/zookeeper/ 本课程使用的Zookeeper版本为3.4.6,下载完成后可以获得名称为zookeeper-3.4.6.tar.gz的压缩文件。 安装步骤: 第一步:安装 jdk(略) 第二步:把 zookeeper 的压缩包(zookeeper-3.4.6.tar.gz)上传到 linu...
2019-10-12 18:48:44
212
原创 linux上传文件及解压
首先复制要上传的文件的全路径名(不要中文名), 打开虚拟机上的linux的系统,使用SecureCRT或者shell连接到linxu上,使用软件自带的SFTP 工具通过下面命令来上传以 put 文件全路径名 此时会默认上传linux系统的当前用户主目录下用cd ~ 显示 解压文件: tar -zxvf 名称 -C /user/local/ -C为指定解压到哪里,y一般用户安装的目录为us...
2019-10-12 18:40:28
1018
原创 Maven设置本地仓库及依赖包下载不全的解决方法
1.maven设置本地仓库的方法,在apache-maven-3.3.9-bin/conf/setting.xml中加入E:\m2\repository 2.当你在pom.xml中加入坐标后,maven自动下载相应的jar包,完成后发现pom.xml内容没有报错但是就是有一个红叉,应该就是有个别jar包缺失,可以在Maven Denpendencies右键BuildPath选择configure里...
2019-10-11 08:54:14
1417
原创 多表查询和事务
多表查询 查询语法: select 列名列表 from 表名列表 where… 准备sql创建部门表 CREATE TABLE dept( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(20) ); INSERT INTO dept (NAME) VALUES (‘开发部’),(‘市场部’),(‘财务部’);创建员工表 CREATE TABLE ...
2019-10-05 11:49:53
345
原创 数据库查询语句以及约束
DQL:查询语句 排序查询 语法:order by 子句 order by 排序字段1 排序方式1 , 排序字段2 排序方式2… 排序方式: ASC:升序,默认的。 DESC:降序。 注意: 如果有多个排序条件,则当前边的条件值一样时,才会判断第二条件。 聚合函数:将一列数据作为一个整体,进行纵向的计算。 count:计算个数 一般选择非空的列:主键 co...
2019-10-05 11:18:03
259
原创 MySql数据库基础
数据库的基本概念 就是用于存储数据的仓库; 用表来分类; 数据库的英文单词: DataBase 简称 : DB DBA(数据库管理员) 什么数据库? 用于存储和管理数据的仓库。 文件 数据库的特点: 持久化存储数据的。其实数据库就是一个文件系统 方便存储和管理、操作数据 使用了统一的方式操作数据库 – SQL 安装 自行查找安装 卸载 去mysql的安装目录找到m...
2019-10-05 09:52:26
219
原创 反射
类加载器 类加载 当程序要使用某个类时,如果该类还未加载到内存中,则系统会通过类的加载,类的连接,类的初始化这三个步骤来对类进行初始化,如果不出现意外情况,JVM会连这三个步骤,所以有时也把这三个步骤统称为类加载或者类初始化 类加载 就是指将class文件读入内存中,并为之创建一个java.lang.Class对象 任何类被使用时,系统都会为之建立一个java.lang.Class对象 类的连接 ...
2019-10-04 12:02:28
138
原创 多线程
进程和线程【理解】 进程:是正在运行的程序 是系统进行资源分配和调用的独立单位 每一个进程都有它自己的内存空间和系统资源 线程:是进程中的单个顺序控制流,是一条执行路径 单线程:一个进程如果只有一条执行路径,则称为单线程程序 多线程:一个进程如果有多条执行路径,则称为多线程程序 实现多线程方式一:继承Thread类【应用】 方法介绍 方法名 说明 v...
2019-10-04 11:19:39
219
原创 IO续集
字节缓冲流 BufferedInputStream(InputStream in)字节缓冲输入流 BufferedOutputStream(OutputStream out)字节缓冲输出流 InputStreamReader(InputStream in)字节流到字符流的桥梁:它读取字节 OutputStreamWriter(OutputStream out)从字符流到字节流的桥梁 字符缓...
2019-10-03 18:58:04
300
1
原创 File类以及IO流
File类概述和构造方法【应用】 File类介绍 它是文件和目录路径名的抽象表示 文件和目录是可以通过File封装成对象的 对于File而言,其封装的并不是一个真正存在的文件,仅仅是一个路径名而已。它可以是存在的,也可以是不存在的。将来是要通过具体的操作把这个路径的内容转换为具体存在的 File类的构造方法 方法名 说明 File(String pathname) ...
2019-10-03 17:31:20
126
原创 Map集合
Map集合概述和特点【理解】 Map集合概述 interface Map<K,V> K:键的类型;V:值的类型 Map集合的特点 键值对映射关系 一个键对应一个值 键不能重复,值可以重复 元素存取无序 Map集合的遍历(方式1)【应用】 遍历思路 我们刚才存储的元素都是成对出现的,所以我们把Map看成是一个夫妻对的集合 把所有的丈夫给集中起来 遍历丈夫的集合,获取到每...
2019-10-02 19:42:36
120
原创 集合
集合体系结构【记忆】 集合类的特点 提供一种存储空间可变的存储模型,存储的数据容量可以随时发生改变 集合类的体系图 Collection集合概述和基本使用【应用】 Collection集合概述 是单例集合的顶层接口,它表示一组对象,这些对象也称为Collection的元素 JDK 不提供此接口的任何直接实现,它提供更具体的子接口(如Set和List)实现 Collecti...
2019-10-01 20:15:14
371
原创 手写冒泡排序
冒泡排序概述 一种排序的方式,对要进行排序的数据中相邻的数据进行两两比较,将较大的数据放在后面,依次对所有的数据进行操作,直至所有数据按要求完成排序 如果有n个数据进行排序,总共需要比较n-1次 每一次比较完毕,下一次的比较就会少一个数据参与 public static void main(String[] args) { //手写冒泡排序法 //定义一...
2019-10-01 17:12:49
270
原创 常用API
Math(应用) 1、Math类概述 Math 包含执行基本数字运算的方法 2、Math中方法的调用方式 Math类中无构造方法,但内部的方法都是静态的,则可以通过 类名.进行调用 3、Math类的常用方法 public static int abs(int a)返回参数的绝对值 public static double pow (double a,double b)返...
2019-10-01 16:53:51
205
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅