- 博客(65)
- 资源 (8)
- 收藏
- 关注
转载 hibernate 的@Column注解在的字段上不生效
问题:hibernate 的@Column注解在的字段上不生效原因:@Column的作用范围是根据@Id的作用范围来的,即如果@Id标签放在字段上的,那么@Column就只能作用在字段上,如果@Id放在getter方法上的,那么@Column也得放到getter上。...
2022-04-07 10:25:12 732
原创 Linux下解压.tar.gz 和.gz文件解压的方式
tar.gz 使用tar命令进行解压tar -zxvf java.tar.gzgz文件的解压 gzip 命令gzip -d java.gz解压gz文件到特定目录,tar.gz包内提取某个文件在指定目录下tar包tar tvf yourtarfile |grep fileyouwant,tar xvf yourtarfile fileyouwant(copy上面的全路径用绝对路径)tar.gz包tar ztvf yourtargzfile |grep fileyouwant,tar
2022-02-24 15:39:59 31449
转载 IP地址介绍,子网划分(VLSM),构造超网(CIDR) 详解
概述IPv4地址从被设计开始一直到现今,一共经历了三次重大变化:分类的IPv4地址 子网划分 构造超网1、分类的IPv4地址IP地址是路由器用来跨网段转发IP数据报,寻找路线的32位 二进制代码,由网络地址(网络号)和主机地址(主机号)构成,分为四段每段8位二进制数,每一段最大值是255,每一段用句点隔开,如:11000000.10101000.00000001.00000001。但是因为二进制代码让网络设计、开发人员难以理解和接受,所以我们在计算机上面能看到的IP地址都以点分十进制表
2022-02-11 11:48:45 4499
转载 CIDR地址块及其子网划分(内含原始IP地址分类及其子网划分的介绍)
1. 原始的IP地址表示方法及其分类(近几年慢慢淘汰) IP地址是由4字节,32位表示的,为了表示方便,通常用点分十进制表示法,例如大家常见的:192.168.0.52,四个字节,通过点进行分隔,看起来十分清晰。IP地址的32位是由网络号+主机号组成的,也就是说这32位中,左边的某些连续位表示网络号,右边的某些连续位表示主机号,那么我们平常在讨论这一系列问题的时候,会有一个“网络地址”的概念,一般来说网络地址并不等于IP地址,网络地址就是IP地址中的网络号,然后主机号全部取0。IP地址可以表示为:..
2022-02-11 11:26:02 15129 2
原创 微服务中的服务的熔断和限流
前言在目前的互联网中,一个互联网的云产品,会有很多突发性的高并发访问场景,这些场景最大的特点就是访问量会远远超出系统所能够处理的并发数。如果没有任何保护机制,所有的流量一旦流入服务器,很可能造成服务器宕机,从而整个系统不可用,造成巨大的损失。面对这些场景,为保证平台的稳定运行,需要采取一定的系统保护策略,常见的策略有服务降级、限流和熔断等。服务限流限流:限制并发访问数或者限制一个时间窗口内允许处理的请求数量来保护系统,一旦达到限制数量则对当前请求进行处理采取对应的拒绝策略,比如:跳转到错误页面拒绝
2022-01-27 12:06:37 364
原创 国产数据库的简单了解
文章目录前言国产数据库总结前言自从阿里提出“去IOE”的概念之后,掀起了一波狂潮。「IOE」即:IBM、Oracle 和 EMC。去IOE不是单纯的不使用IBM、Oracle、EMC的产品。去IOE,其中的I指的是IBM的小型机,O指的是Oracle的数据库,E指的是EMC的高端存储。这三家公司长久以来,处于垄断的绝对优势,成本高昂,很多受限。所以国内目前大家都在推动,是政府和行业的共同需要,有助于推动国内IT的产业发展,并在某些领域进行国产化。本文主要是就自己了解的国产数据库信息进行汇总。国
2022-01-26 11:51:46 1341
原创 对产品研发过程中的一些关系的梳理
一个公司会有多个产品线(product_line);一个产品线下有多个产品(product);一个产品的研发过程中,会分为多个迭代/项目(iteration/project)来进行;一个项目,会分配解决一些用户故事(userStory),这个项目有负责人sm和团队成员;项目研发,会拆分成一个个小的工作任务(task),落实到具体成员。项目的生命周期内,会涉及到各种评审(evaluation)和风险(risk),同样会涉及到缺陷(defect)的发现、修复、回归。...
2022-01-24 09:46:46 408
原创 对轮询的总结,注意是Web端即时通讯技术
Web端即时通讯技术因受限于浏览器的设计限制,一直以来实现起来并不容易,下面是对目前常用的轮询的方式进行汇总:几种方式短轮询(ajax短轮询)客户端,每隔一段时间,请求服务端获取数据。好处:实现最为简单缺点:实时性不高、频繁请求对服务端有很大压力长轮询(Comet: 一种hack技术)服务端收到客户端的请求后,hold住一段时间,有变化提前返回,否则到达指定时间再返回。这里做一个补充:Comet在浏览器端有两种实现方式,一种就是这里的长轮询,还有一种是基于 Iframe 及 html
2022-01-22 17:28:46 1854
原创 nacos的研究
注册中心:注册和发现的原理服务注册的完整过程Nacos客户端通过Open API 的形式发送服务注册请求。Nacos服务端收到请求后,做以下三件事:构建一个Service对象保存到ConcurrentHashMap集合中使用定时任务对当前服务下的所有实例建立心跳检测机制基于数据一致性协议将服务数据进行同步。分析Nacos服务地址动态感知原理服务消费者不仅需要获取服务提供者的地址列表,还需要在服务实例出现异常时监听服务地址的变化。Nacos客户端有一个HostReactor类,它的
2022-01-22 16:10:51 918 1
原创 分布式一致性协议/算法
Nacos使用的Raft算法,使用类似算法的中间件还有Etcd、Redis哨兵选举。Zookeeper使用的Zab 协议。Paxos 是理论,Zab 是实践,Paxos 是论文性质的,目的是设计一种通用的分布式一致性算法,而 Zab 协议应用在 ZooKeeper 中,是一个特别设计的崩溃可恢复的原子消息广播算法。...
2022-01-22 14:18:01 1523
原创 java中udp的使用
在java中如何使用udp,下面一个例子进行演示,关键: DatagramSocket、DatagramPacket服务端package com.luoq.udp;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.nio.charset.StandardCharsets;public class UDPServer { private static final int MAX_SI.
2022-01-21 17:43:13 1086
转载 弄个python写对联,来点春节的气息
弄个python写对联,来点春节的气息python写对联代码: codeWrite.py# -*- coding: utf-8 -*-import iofrom PIL import Imageimport numpy as npimport requestsimport sysdef get_word(ch, quality): """获取单个汉字(字符)的图片 ch - 单个汉字或英文字母(仅支持大写) quality - 单字分
2022-01-21 15:12:39 522
原创 java 的 SPI 机制
简介SPI 全称是 Service Provider Interface, 原本是JDK内置的一种服务发现机制,它主要是用来做服务的扩展实现。应用场景SPI在很多场景中都有使用,比如数据库连接,JDK提供的java.sql.Driver接口,这个接口的实现在jdk中并没有实现,而是由不同厂商来实现,比如oracle、mysql等,这些数据库驱动都会实现这个接口,然后jdk利用spi机制从classpath下找到相应的驱动来获得指定的数据库的连接。这种插拔式的扩展加载方式,遵循一定的约定:所有
2022-01-18 17:55:51 553
原创 algorithm-visualizer的使用
1、从github或gitee上检查代码国内推荐直接从gitee上下载2、npm 安装npm install这里有个注意事项,这个工程需要用到python2,所以先在本地安装python2.7,并配置成环境变量,配置好环境变量后,命令窗口或开发工具重启下,这样才能识别最新的环境变量。3、修改里面的package.json配置里面的proxy为:https://algorithm-visualizer.org/4、启动npm run start5、效果.
2022-01-18 16:56:12 3131 1
原创 为什么Spring Cloud称为java的首选技术方案?
Spring Cloud 为java环境解决微服务问题提供了非常完整的方案,我们可以享受Spring Cloud生态中的技术支持和标准化输出。
2022-01-17 17:22:10 262
原创 vue3使用element-plus的icon,并且组件汉化
main.jsimport '@/assets/styles/index.scss';import 'element-plus/dist/index.css';import ElementPlus from 'element-plus';import locale from 'element-plus/lib/locale/lang/zh-cn'; //中文import * as ElIconModules from '@element-plus/icons';import App fr
2022-01-14 10:20:04 435
转载 面向中后台复杂场景的低代码实践思路
一 中后台前端研发复杂度背景做中后台前端开发,会经常碰到复杂交互和复杂逻辑问题:你负责的业务中,规则是不是很多?是不是会不自觉的试图用if...else解决一切问题,逻辑是不是在迭代过程中变得越来越乱?最后彻底变成一个看不懂改不动的黑盒子,没有人能搞清楚黑盒子里面到底发生了什么。现实中,业务场景多,迭代频繁,变化快到跟不上,规则可能由多人掌握,无法通过一个人了解全貌;还有业务所在行业固有的复杂度和历史包袱,这些问题都会让我们感到痛苦。除了逻辑问题,我们还关注.
2022-01-10 10:19:15 116
原创 knife4j 显示 swagger 的注意事项
jar包导入<dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>knife4j-spring-boot-starter</artifactId> <version>3.0.3</version></dependency>配置@Configuration@EnableSwagger2public
2022-01-08 14:48:31 852
转载 Vue的开发规范
Vue 开发规范目录及说明本文档为前端 vue 开发规范规范目的 命名规范 结构化规范 注释规范 编码规范 CSS 规范规范目的为提高团队协作效率便于后台人员添加功能及前端后期优化维护输出高质量的文档命名规范为了让大家书写可维护的代码,而不是一次性的代码让团队当中其他人看你的代码能一目了然甚至一段时间时候后你再看你某个时候写的代码也能看普通变量命名规范 命名方法 :驼峰命名法 命名规范 : 命名必须是跟需求的内容相关的词,比如说我
2022-01-08 09:17:09 2948
原创 对应场景的解决方案的收集(持续更新)
Apache Guacamole(实现浏览器进行远程桌面和SSH)WebSocket + WebRTC (实现视频通话)
2022-01-05 08:47:06 832
原创 关于细粒度控制接口权限的设计思路
前言:目前安全问题越来越重要,以前只需要前端权限控制,目前前端的权限控制已经无法满足当前的安全需要了,一个更细粒度的控制,也就是接口粒度的控制变得越来越重要。思路:权限控制还是传统的RBAC(Role-Based Access Control: 基于角色访问控制)思想,添加了给角色绑定某个菜单的某些行为的能力。用户,角色,菜单,行为用户和角色绑定。角色决定 有哪些菜单的哪些行为。比如。 拥有某个菜单的行为( 添加、删除、修改、导出、导入、打印)每个菜单在设计时,必须指定一个id,如xxxx
2021-09-06 10:41:44 534
原创 SVN异常时,处理方法
方案一wc.db 是sqlite数据库,用一个数据库软件打开,执行下面两条sql语句delete from WORK_QUEUE;delete from WC_LOCK;方案二
2021-08-03 09:21:13 134
原创 TestNG的使用
pom.xml<dependencies> <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>7.4.0</version> <scope>test</scope> </depend
2021-07-19 17:59:22 270 1
原创 客户端和服务端进行数据同步的初步思路
服务端:【增量日志记录表】:添加了,删除了,更新了,都进行记录。记录主键id 变更的业务表 变更的业务Key 变更时间 变更类型(添加、删除、修改)记录创建时间 变更序号(数字类型,不断递增) 【客户端同步记录表】:每个客户端最新的变更序号和获取时间客户端唯一标志变更序号更新时间 创建时间客户端:首次进入(本地没有存储【变更序号】):...
2021-07-15 12:11:54 1407
转载 RocketMQ消费位置
RocketMQ创建消费者的时指定了Topic主题及Tag,我们发现新创建的消费者消费不了历史的数据,只能消费掉创建以后消费者发送的数据。这是什么原因,我们能把所有的消息都消费吗?,我们可以指定需要消费的消息的时间吗?答案是肯定的,下面我们具体分析一下。前提:我们讨论是集群模式下的,广播模式也是一样的,只是示例代码我们用集群模式来讨论。消息消费的位置目前提供了三种方式CONSUME_FROM_LAST_OFFSET(队列尾部消费)、CONSUME_FROM_FIRST_OFFSET(队列头部消费)、
2021-07-14 13:47:27 1840 2
原创 VirtualBox在nat下,虚拟机和宿主机双向连接
VirtualBox在nat下,虚拟机和宿主机双向连接配置NAT网络和端口转发虚拟机配置双网卡,NAT网络 + 仅主机(Host-Only)网络虚拟机安装SSH服务,并允许外部连接配置NAT网络和端口转发虚拟机配置双网卡,NAT网络 + 仅主机(Host-Only)网络虚拟机安装SSH服务,并允许外部连接...
2021-04-21 17:35:50 338
原创 IDEA 自带的非常实用的功能
IDEA 自带的非常实用的功能 maven jar 的搜索api的测试maven jar 的搜索自从maven官方仓库使用人类校验后,查询一点也不方便了,使用下面的方式,快捷又高效。Alter + Insertapi的测试以前api测试,大家都习惯使用postman,现在idea自身就带http api的测试,测试可以更快捷了,特别是有springboot项目时,更可以直接测试我们的接口。...
2021-04-20 22:28:06 228
转载 Java Attach API
看见阿里的arthas,了解下其底层的原理,搜索到下面的文章,原来底层使用的是java的attach的api转载:https://www.cnblogs.com/LittleHann/p/4783581.html阅读目录(Content)1. instrucment与Attach API 2. BTrace: VM Attach的两种方式 0x1: 指定javaagent参数 0x2: 动态Attach,load指定Agent 3. Sun JVM Attach API 0x1.
2021-03-31 13:54:31 1974
原创 修改Mysql所有表,所有字段排序规则
修改Mysql每个字段的排序规则组装修改sqlSELECT TABLE_SCHEMA '数据库', TABLE_NAME '表', COLUMN_NAME '字段', CHARACTER_SET_NAME '原字符集', COLLATION_NAME '原排序规则', CONCAT( 'ALTER TABLE ', TABLE_SCHEMA, '.', TABLE_NAME, ' MODIFY COLUMN ', COLUMN_NAME, ' ', COLUMN_TYPE
2020-11-03 10:39:56 1361
原创 计算机基础知识杂记 2020-08-21
计算机基础知识杂记1、位移转换为二进制,右移、右移右移1位相当于除以2一次,左移1位相当于乘以2一次。public void testBitMove() { int i = 1; System.out.println("i = " + i); System.out.println(i >> 1); // 0 System.out.println(i << 1); // 2 i = 2; System.out.println("i
2020-08-21 09:07:51 123
原创 RockeMQ的使用
RocketMQ的使用RocketMQ的一些术语介绍RocektMQ里面有四个角色:ProducerConsumerBrokerNameServer启动顺序,先启动NameServer,再启动Broker,这时服务端就已经准备好了,需要发送消息,就使用Producer发送,需要接受消息就使用Consumer.NameServer和Broker都支持部署多个,来增加吞吐量和可靠性。两个名词:TopicMessage Queue不同消息类型,可以使用Topic进行区分,发送和接收
2020-07-21 21:24:45 411
转载 国内高速下载Docker 以及 docker-compose
国内高速下载Docker 以及 docker-compose 地址下载地址:http://get.daocloud.iohttps://blog.csdn.net/nklinsirui/article/details/80610058
2020-02-25 20:57:22 823
原创 解决线上 java.lang.NoSuchMethodError
解决线上 java.lang.NoSuchMethodError,昨晚阿里云提供了几个class,今天突然发现后台出现java.lang.NoSuchMethodError异常。反编译源码,发现方法始终存在。借助百度发现:出现java.lang.NoSuchMethodError的问题,究其原因有很多:1、包冲突,在引包时,引用了不匹配的包版本2、开发环境和运行环境的不一致...
2020-02-23 19:06:32 267
原创 Springboot中异步
Springboot中实现方法的异步特别容易:1.使用@EnableAsync开启异步;2.在service的方法上使用@Async异步注解代理的方法可以有一个返回值Future<T>,可以用isCancelled判断异步任务是否取消,isDone判断任务是否执行结束,get获取返回结果。个人看法:我们不使用springboot异步,也可以实现异步,但这时我们自己要...
2020-02-17 10:27:23 353
原创 安装好centos7后,正式使用前需要干的事
1、配置好网络,其他机器可以ping到本机,本机也可以上外网。2、安装ssh,配置ssh,方便其他机器可以ssh到这台机器。3、配置国内的yum源。cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bakcurl -O /etc/yum.repos.d/CentOS-Base.repo h...
2020-02-16 16:37:41 760
原创 node vue 项目开发实践
1、安装node官网下载,安装2、搭建vue的开发环境,安装vue的脚手架工具在windows终端里:npm install vue-cli -gvue init webpack demo接下来 进入到你的项目cd demo然后运行npm run dev3、打包修改配置:修改build/build.js修改config/index.js运行 np...
2020-02-07 13:43:06 196
原创 springboot替换里面的引用jar
Caused by: java.io.IOException: Unable to open nested jar file 'BOOT-INF/lib/a.jar'解决1、可通过jar命令先将jar包解压,解压:jar -xvf .\my-test.jar2、替换引用jar3、替换完成后重新压缩打包:jar -cfM0 my-test.jar ./...
2020-02-03 21:40:25 929
原创 windows下安装Mysql8
1、下载mysql8国内不要官网下,太慢了,推荐中科大的:http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-8.0 下载,速度杠杠的。2、解压3、自己在mysql-8.0.17-winx64下创建my.ini文件,里面内容如下:[mysqld]# 设置3306端口port=3306# 设置mysql的安装目录ba...
2020-01-30 16:39:23 81
转载 MySQL国内镜像下载地址
今天在下载MySQL的时候,Oracle官网下载简直是龟速。。。可以使用sohu的镜像:http://mirrors.sohu.com/mysql/MySQL-8.0/Ctrl+F调出搜索框,输入winx64,选你喜欢的版本下就完了~速度对比,比官网还是快些的或者用中科大的:http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-...
2020-01-30 16:01:02 4350 2
ResolveSvnFail.zip
2021-08-03
使用WIN10需要的一个工具.zip
2020-01-02
dlib-人脸识别68个特征点的训练数据
2018-08-31
Notepad++的所有插件
2017-09-01
spring-framework-4.0.0.M2-dist.zip
2014-08-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人