自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 史上最全MySql数据库

第一章 数据库概述1.1 数据库概述DBMS:数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件,例如建立、使用和维护数据库。DB:数据库(Database)SQL:结构化查询语言,(Structure Query Language),专门用来操作/访问数据库的通用语言。如果把数据库比作盘子,那数据就是盘子里的菜,SQL则是你的筷子。数据库类型:数据库经过几十年的发展,出现了多种类型。目前最常见的数据库模型主要是:关系型数据库和(noSQL)非

2020-11-25 09:30:52 4968 19

原创 springboot-mybatis-plus-clickhouse

ClickHouse JDBC驱动最新版本:0.3.2。MyBatis-Plus最新版本:3.4.3。

2023-06-01 11:25:05 626 1

原创 docker安装minio

【代码】docker安装minio。

2023-05-24 15:47:33 148

原创 docker安装minio

【代码】docker安装minio。

2023-05-24 15:38:52 134

原创 如何优化网站的性能

7、测试完毕发布项目,由运维人员进行部署安装。5、将接口文档给到前端人员,前后端分离开发。、产品人员设计产品原型。6、开发完毕进行测试。3、分模块设计接口。

2023-04-12 17:15:47 96

原创 项目的开发流程是什么?

7、测试完毕发布项目,由运维人员进行部署安装。5、将接口文档给到前端人员,前后端分离开发。、产品人员设计产品原型。6、开发完毕进行测试。3、分模块设计接口。

2023-03-01 17:35:17 429

原创 SpringBoot接口开发的常用注解有哪些

RestController 相当于@ResponseBody加 @Controller,实现rest接口开发,返回json数据,不能返回html页面。@RequestMapping 定义接口地址,可以标记在类上也可以标记在方法上,支持http的post、put、get等方法。@PostMapping 定义post接口,只能标记在方法上,用于添加记录,复杂条件的查询接口。@GetMapping 定义get接口,只能标记在方法上,用于查询接口的定义。@Api wagger注解,对接口类进行说明。

2023-03-01 17:31:44 595

原创 Java读取csv文件

【代码】Java读取csv文件。

2023-02-28 17:01:35 583

原创 LocalDateTime类型的数据转json后数据格式

【代码】LocalDateTime类型的数据转json后数据格式。

2023-02-27 17:18:04 988 1

原创 1.Go语言_安装环境

Go 也称为 Golang,是由 Google 开发的一种开源、编译和静态类型的编程语言。Go 语言的创造者们包括 Unix 操作系统和 B 语言(C 语言的前身)的创造者、UTF-8 编码的发明者 Ken Thompson,Unix 项目的参与者、UTF-8编码的联合创始人和 Limbo 编程语言(Go 语言的前身)的创造者 Rob Pike,以及著名的 Javascript 引擎V8的创造者 Robert Griesemer。Go 于 2009 年 11 月公开发布。Go 是一种语法简单的通用编程语言,

2023-01-09 10:35:03 335

原创 简化操作---stream流试编程

【代码】简化操作---stream流试编程。

2022-12-01 19:45:55 100

原创 springboot操作ES之ElasticSearch_EasyEs

/ 初始化-> 创建索引,相当于MySQL建表 | 此接口须首先调用,只调用一次即可 // documentMapper.createIndex();// 初始化-> 新增数据 Document document = new Document();document . setTitle("嵌套查询");document . setContent("这是一条内容");document . setCreator("二叔");

2022-10-24 17:35:20 2901

原创 JSR303 数据效验

NotEmpty(messsage = "logo不能为空") @URL(message = "logo必须是一个合法的url地址") private String logo;编写一个自定义的效验注解编写一个自定义的效验器何自定义的效验注解ListValueConstraintValidator . class }) //【可以指定多个不同的效验器,适配不同类型的效验】 @Target({

2022-10-09 16:31:17 355

原创 JVM原理及优化_调优原则与工具

在实际工作中,我们可以直接将初始的堆大小与最大堆大小相等,这样的好处是可以减少程序运行时垃圾回收次数,从而提高效率。初始堆值和最大堆内存内存越大,吞吐量就越高,但是也要根据自己电脑(服务器)的实际内存来比较。最好使用并行收集器,因为并行收集器速度比串行吞吐量高,速度快。当然,服务器一定要是多线程的设置堆内存新生代的比例和老年代的比例最好为1:2或者1:3。默认的就是1:2减少GC对老年代的回收。

2022-09-19 16:19:17 416

原创 JVM原理及优化_垃圾回收器

垃圾收集器是垃圾回收算法(引用计数法、标记清除法、标记整理法、复制算法)的具体实现,不同垃圾收集器、不同版本的JVM所提供的垃圾收集器可能会有很在差别。新生代收集器:Serial、ParNew、Parallel Scavenge老年代收集器:CMS、Serial Old、Parallel Old整堆收集器:G1。

2022-09-19 15:24:14 220

原创 JVM原理及优化_垃圾回收算法

不同的是,在第二个阶段,该算法并没有直接对死亡的对象进行清理,而是将所有存活的对象整理一下,放到另一处空间,然后把剩下的所有对象全部清除。该算法将内存平均分成两部分,然后每次只使用其中的一部分,当这部分内存满的时候,将内存中所有存活的对象复制到另一个内存中,然后将之前的内存清空,只使用这部分内存,循环下去。这种算法,根据对象的存活周期的不同将内存划分成几块,新生代和老年代,这样就可以根据各个年代的特点采用最适当的收集算法。分为两个阶段,一个是标记阶段,这个阶段内,为每个对象更新标记位,检查对象是否死亡;

2022-09-19 14:48:31 252

原创 JVM原理及优化_垃圾回收机制

程序在运行过程中,会产生大量的内存垃圾(一些没有引用指向的内存对象都属于内存垃圾,因为这些对象已经无法访问,程序用不了它们了,对程序而言它们已经死亡),为了确保程序运行时的性能,java虚拟机在程序运行的过程中不断地进行自动的垃圾回收(GC)。垃圾收集系统是Java的核心,也是不可少的,Java有一套自己进行垃圾清理的机制,开发人员无需手工清理垃圾回收机制简称GCGC主要用于Java堆的管理。Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象。程序在运行过程中,会产生大量的

2022-09-19 11:49:13 282

原创 Mysql学习_ShardingSphere_分库分表

官网:https://shardingsphere.apache.org/index_zh.html文档:https://shardingsphere.apache.org/document/5.1.1/cn/overview/Apache ShardingSphere 由 JDBC、Proxy 和 Sidecar(规划中)这 3 款既能够独立部署,又支持混合部署配合使用的产品组成。指所有的分片数据源中都存在的表,表结构及其数据在每个数据库中均完全一致。

2022-09-17 16:55:46 1422

原创 Docker学习_docker安装redis

自己在宿主机建立后挂载映射)创建并修改/usr/local/redis/redis.confbind 0.0.0.0 开启远程权限appendonly yes 开启aof持久化。

2022-09-17 14:33:16 88

原创 Docker学习_docker安装mysql

docker exec -it 容器名称|容器id bin/bash。4 进入mysql容器。

2022-09-17 14:29:49 387

原创 Docker学习_安装docker

【代码】Docker学习_安装docker。

2022-09-17 14:25:03 92

原创 Java基础_JDK安装

tar -zxvf jdk-8u281-linux-x64.tar.gz(检查本机有没有jdk有的话卸载掉。安装上自己的jdk)2 配上环境变量。

2022-09-17 14:21:30 117

原创 JVM原理及优化_子系统

初始化是为类的静态变量赋予正确的初始值。

2022-09-15 11:54:17 249

原创 JVM原理及优化_运行时数据区

在java中最小的执行单位是线程,线程是要执行指令的,执行的指令最终操作的就是我们的电脑,就是 CPU。操作数栈:操作数栈就是用来操作的,例如代码中有个 i = 6*6,他在一开始的时候就会进行操作,读取我们的代码,进行计算后再放入局部变量表中去。如果一个栈中有动态链接调用别的方法,就会去创建新的栈帧,栈中是由顺序的,一个栈帧调用另一个栈帧,另一个栈帧就会排在调用者下面。栈指向堆是什么意思,就是栈中要使用成员变量怎么办,栈中不会存储成员变量,只会存储一个应用地址,堆中的数据等下讲。栈指向堆是什么意思?

2022-09-14 15:50:32 82

原创 消息队列_kafka简介

kafka是一种消息队列,主要用来处理大量数据状态下的消息队列,一般用来做日志的处理,既然是消息队列,那么kafka必然有消息队列通用的特性。

2022-09-09 15:50:22 995

原创 Java基础之IO流操作

File类是java.io包下代表与平台无关的文件和目录,也就是说如果希望在程序中操作文件和目录都可以通过File类来完成,File类能新建、删除、重命名文件和目录。在API中File的解释是文件和目录路径名的抽象表示形式,即File类是文件或目录的路径,而不是文件本身,因此File类不能直接访问文件内容本身,如果需要访问文件内容本身,则需要使用输入/输出流。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VKQJx56h-1659797923014)(imgs/1563809

2022-08-06 23:00:09 402

原创 使用docker-compose启动springboot项目

1.先建立springboot项目2.编写application-docker.yml3.编写Dockerfile文件4.将三个文件上传同一目录下Dockerfile docker-compose.yml xxx.jar5.启动命令 docker-compose up

2022-07-12 10:00:38 901

原创 docker镜像--springboot

docker pull java:8docker run -itd --name cyw -p 1998:1998 java:8docker exec -it cyw bashdocker cp 项目文件 cyw:/传脚本 docker cp C:\Users\admin\Desktop\run.sh cyw:/到本地项目根目录 docker save multimodal:v1 > multi.tar

2022-05-16 15:13:09 233

原创 Spring最全工具类

Assert// 要求参数 object 必须为非空(Not Null),否则抛出异常,不予放行// 参数 message 参数用于定制异常信息。void notNull(Object object, String message)// 要求参数必须空(Null),否则抛出异常,不予『放行』。// 和 notNull() 方法断言规则相反void isNull(Object object, String message)// 要求参数必须为真(True),否则抛出异常,不予『放行』。void

2022-04-07 17:00:41 120

原创 工具_JSONUtil

常用JSON工具类JsonUtil封装 <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-mapper-asl</artifactId> <version>1.9.13</version> </dependency>package com.cyw.util;i

2022-01-25 15:57:52 367

原创 大数据-2022

2022,大数据

2022-01-24 09:53:53 1435

原创 Java多线程-线程通信

正常情况下,每个子线程完成各自的任务就可以结束了。不过有的时候,我们希望多个线程协同工作来完成某个任务,这时就涉及到了线程间通信了。涉及以下方法thread.join(),object.wait(),object.notify(),CountdownLatch,CyclicBarrier,FutureTask,Callable 有如下几个问题说明Java 里有哪些方法来实现线程间通信如何让两个线程依次执行?那如何让 两个线程按照指定方式有序交叉运行呢?四个线程 A B C D,其

2021-11-15 14:54:42 91

原创 对象转化成json字符串,出现$ref引用处理

使用fastjson将数据结果转成JSON字符串,字符串中包含引用对象,不符合要求;在调用toString()方法时,增加参数SerializerFeature.DisableCircularReferenceDetect, String resultMsg = JSONObject.toJSONString(detectionResultDto, SerializerFeature.DisableCircularReferenceDetect);DisableCircularRe

2021-11-15 14:30:27 723

原创 Springboot项目优化

在SpringBoot的Web项目中,默认采用的是内置Tomcat,当然也可以配置支持内置的jetty,内置有什么好处呢?方便微服务部署。方便项目启动,不需要下载Tomcat或者Jetty针对目前的容器优化,目前来说没有太多地方,需要考虑如下几个点线程数超时时间jvm优化针对上述的优化点来说,首先线程数是一个重点,初始线程数和最大线程数,初始线程数保障启动的时候,如果有大量用户访问,能够很稳定的接受请求。而最大线程数量用来保证系统的稳定性,而超时时间用来保障连接数不容易被压垮,如果大

2021-11-05 16:18:28 353

原创 Linux下载配置Redis

1.关闭防火墙//-----------------------------------关闭Firewalld防火墙//1、停止firewalld服务systemctl stop firewalld //2、禁止firewalld开机启动systemctl disable firewalld //-----------------------------------关闭SELinux//1、临时关闭setenforce 0 //2、永久关闭SELinuxsed -i "s/

2021-10-18 11:35:34 185 2

原创 Linux下JDK的下载安装配置

JDK下载安装官网下载jdk linux版本1.查看当前Linux系统是否已经安装JDK rpm -qa | grep jdk2.如果有,卸载rpm -e --nodeps jdkyum remove jdk3.新建目录 mkdir /usr/java4.解压jdktar –xvf jdk-8u144-linux-x64.tar.gz -C /usr/java5.设置环境变量vi /etc/profile 6.按i编辑,进入,输入JAVA_HOME=/usr/j

2021-10-15 10:25:51 100 1

原创 大数据中间件之Kafka04(kafka的下载与安装)

Kafka单机版搭建官网下载安装包进行解压即可1.首先去修改config目录下的zookeeper.properties其中dataDir是快照存放地址,clientPort是客户端连接zookeeper服务的端口。2.修改config目录下的server.properties,修改log.dirs和zookeeper.connect。log.dirs是日志存放文件夹,zookeeper.connect是zookeeper连接地址(端口和clientPort保持一致)。3.启动kafka自带的zo

2021-10-15 10:24:03 124

原创 23种设计模式_原则与简介

Single Responsibility Principle:单一职责原则单一职责原则有什么好处:类的复杂性降低,实现什么职责都有清晰明确的定义;可读性提高,复杂性降低,那当然可读性提高了;可维护性提高,可读性提高,那当然更容易维护了;变更引起的风险降低,变更是必不可少的,如果接口的单一职责做得好,一个接口修改只对相应的实现类有影响,对其他的接口无影响,这对系统的扩展性、维护性都有非常大的帮助。ps:接口一定要做到单一职责,类的设计尽量做到只有一个原因引起变化。单一职责原则提出了一个编写

2021-10-14 11:22:25 61

原创 大数据消息中间件之Kafka03(Springboot操作Kafka)

文章目录Java操作Kafka导入依赖配置文件application.yml生产者producer代码Kafka消费者代码Java操作Kafka我们使用的是springboot导入依赖<dependency> <groupId>org.springframework.kafka</groupId> <artifactId>spring-kafka</artifactId></dependency>配

2021-10-14 09:47:13 172 2

原创 大数据消息中间件之Kafka02

文章目录一.Kafka生产者1.1什么是生产者1.2Kafka分区策略分区原因分区原则如何保证数据传输的可靠性二.消费者消费方式Kafka高效读取数据下一篇讲述Java操作Kafka一.Kafka生产者1.1什么是生产者生产者就是producer,负责生产消息,并把消息放入到队列中1.2Kafka分区策略分区原因方便在集群中扩展,因为每个topic中有多个partition,partition可以适应相对应的机器,从而适应任意大小的数据提高并发度,可以以partition为单位进行读写分

2021-10-13 17:27:54 414 2

JVM原理与调优实战下载即用

在实际工作中,我们可以直接将初始的堆大小与最大堆大小相等, 这样的好处是可以减少程序运行时垃圾回收次数,从而提高效率。 初始堆值和最大堆内存内存越大,吞吐量就越高, 但是也要根据自己电脑(服务器)的实际内存来比较。 最好使用并行收集器,因为并行收集器速度比串行吞吐量高,速度快。 当然,服务器一定要是多线程的 设置堆内存新生代的比例和老年代的比例最好为1:2或者1:3。 默认的就是1:2 减少GC对老年代的回收。设置生代带垃圾对象最大年龄,进量不要有大量连续内存空间的java对象,因为会直接到老年代,内存不够就会执行GC 开发大型 Java 应用程序的过程中难免遇到内存泄露、性能瓶颈等问题,比如文件、网络、数据库的连接未释放,未优化的算法等。随着应用程序的持续运行,可能会造成整个系统运行效率下降,严重的则会造成系统崩溃。为了找出程序中隐藏的这些问题,在项目开发后期往往会使用性能分析工具来对应用程序的性能进行分析和优化。

2023-02-27

JVM相关知识完整版下载吧

JVM全称是Java Virtual Machine,Java虚拟机,也就是在计算机上再虚拟一个计算机,这和我们使用 VMWare不一样,那个虚拟的东西你是可以看到的,这个JVM你是看不到的,它存在内存中。我们知道计算机的基本构成是:运算器、控制器、存储器、输入和输出设备,那这个JVM也是有这成套的元素,运算器是当然是交给硬件CPU还处理了,只是为了适应“一次编译,随处运行”的情况,需要做一个翻译动作,于是就用了JVM自己的命令集,这与汇编的命令集有点类似,每一种汇编命令集针对一个系列的CPU,比如8086系列的汇编也是可以用在8088上的,但是就不能跑在8051上,而JVM的命令集则是可以到处运行的,因为JVM做了翻译,根据不同的CPU,翻译成不同的机器语言。Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在

2023-02-27

空空如也

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

TA关注的人

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