java
文章平均质量分 67
BUG弄潮儿
专业IT金融10年以上
展开
-
建木CI自定义节点说明
建木CI原创 2023-01-19 22:17:47 · 1912 阅读 · 0 评论 -
Windows中安装 MySQL8.0.30 数据库
mysql 安装原创 2023-01-15 12:57:12 · 1056 阅读 · 0 评论 -
GitLab 服务搭建
1. GitLab 概述GitLab 是一个用于仓库管理系统的开源项目,使用 Git 作为代码管理工具,并在此基础上搭建起来的 web 服务。GitLab 产品将分为三个发行版本 CE(社区版):发行版将继续在全球范围内提供 EE(企业版):发行版仅在中国境外出售 JH(JiHu版):发行版仅在中国销售 GitLab 的架构图(来源官网:https://docs.gitlab.com/ee/development/architecture.html)2. 安装 Gi原创 2022-04-06 09:32:33 · 608 阅读 · 0 评论 -
非常不错的springboot启动shell脚本
#!/bin/bashJAVA_OPTIONS_INITIAL=-Xms256MJAVA_OPTIONS_MAX=-Xmx256M_JAR_KEYWORDS=/wls/appsystem/ruoyi/apps/ruoyi-admin.jarAPP_NAME=ruoyi-adminAPPLICATION_FILE=/wls/appsystem/ruoyi/config/application.propertiesAPPLICATION_YAML_FILE=/wls/appsystem/ruoyi.原创 2021-12-03 21:19:58 · 594 阅读 · 0 评论 -
生产环境 OOM 与 GC 问题的处理思路
有一定 Java 工作经验的朋友们,免不了要遇到过,或者处理过 OOM 和 GC 问题。OOM 和 GC 问题也是面试时,经常被面试官问题的问题。分享一下多年积累的一些小经验,共同进步。0x01:未雨绸缪 部署到生产环境的应用,无论是 C/S 结构,还是 B/S 结构的应用服务。肯定有基于 Shell 脚本编写的启动脚本。C/S 结构的应用服务的 Shell 脚本一般是公司内部开发人员编写的;以下一个 C/S 结构应用服务的简单启动脚本。java -Xms1024m -Xmx1024m -XX原创 2021-03-15 20:58:44 · 808 阅读 · 2 评论 -
浅谈导出Execl的报表数据解决方案
项目中免不了要做一些数据导出功能,比如导出前一天的订单记录。涉及导出功能可大可小,根据系统具体的用户量、一天的订单量等情况。今天就讨论一下怎么设计一个合理的导出功能。0x01:同步导出这个方案最简单,就只需一个导出接口。这个接口只需实现根据用户条件到数据库查询相关数据,然后在应用程序中生成Execl电子表格,最后通过Response把生成的Execl电子表格回写到客户端即可该方案简单,因为是同步导出,所以不适用大量数据导出。如果使用该方案进行大量数据导出的话,存在客户端(浏览器)超时的情况,导致导出原创 2021-02-20 12:25:12 · 422 阅读 · 0 评论 -
深入理解浅拷贝和深拷贝
0x01:概述Java中的对象拷贝 ( Object Copy ) 是指将一个对象的所有属性(成员变量)拷贝到另一个有着相同类类型的对象中去。例如,对象 A 和对象 B 都属于类 S,具有属性 a 和 b。那么对对象 A 进行拷贝操作赋值给对象 B 就是:B.a = A.a;B.b = A.b;拷贝对象是很常见的,主要是为了在新的上下文环境中复用现有对象的部分或全部数据。Java中的对象拷贝主要分为浅拷贝( Shallow Copy )深拷贝( Deep Copy )Java中的数原创 2021-01-25 20:45:41 · 315 阅读 · 0 评论 -
操作 PDF 文件的常用JAR包
操作PDF在很多业务场景都要用到,例如电子发票,电子处方笺。为什么需要使用PDF呢?主要是因为可以使用RSA加密算法对PDF进行电子加签,只要经过电子加签的PDF文件,就会在PDF文件产生电子签章;经过加签的PDF是不允许修改的,如果加签后,再次对内容就行修改的话,就会显示PDF文件失效。这样的话就能验证该PDF是不是合法的。以下盘点一下常用的PDF工具JAR包。0x01:iText 5iText 5是最早一个提供对PDF进行操作的JAR包,不过目前该JAR已经不再进行后续开发。可以从官网看到如下一段话原创 2020-12-01 10:11:32 · 2600 阅读 · 0 评论 -
操作MS Execl电子表格的常用JAR包
在做报表开发时,免不了要导出数据。除了简单的循环列表数据导出外,还有基于模板的数据导出。比如生成运营周报或者月报之类的,甚是符合使用模板导出方式。今天总结一些常用的Execl导出JAR包。0x01:jxl支持Excel 95-2000的所有版本;生成Excel 2000标准格式;支持字体、数字、日期操作;能够修饰单元格属性;支持图像和图表。jxl是纯Java的,不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。另外需要说明的是,jxl对图形和图表的支持很有限,而且仅原创 2020-11-29 20:13:49 · 719 阅读 · 0 评论 -
撬动offer:寻找丢失的数字
0x01:算法题目Missing DigitHave the function MissingDigit(str) take the str parameter, which will be a simple mathematical formula with three numbers, a single operator (+, -, *, or /) and an equal sign (=) and return the digit that completes the equation. In原创 2021-01-14 17:28:01 · 350 阅读 · 2 评论 -
撬动offer:图的着色问题
0x01:说明时长:两小时考察点:算法实现能力,代码风格注意,本题考察的是算法的实现而不是算法设计,算法的具体步骤已经在后面给出,只需实现给出的算法即可0x02: 问题图的着色问题图论和计算机科学的一个经典问题。 给定一个无向图 G,为图中的每一个节点着色。一个合法的图着色方案必须要满足条件:任意两相邻节点的颜色不同。问题是,希望找到使用颜色数尽可能少的着色方案。如下图所示,一个包含 4 个节点的图,以及一种着色方案。这个着色方案使用了 3 种颜色,但不是最优的,可以找到只使用 2 种颜色的着原创 2020-10-31 20:42:18 · 318 阅读 · 0 评论 -
撬动offer:两个长字符串数字相加
算法题千奇百怪,今天分享的这样一道算法题。0x01:题目题目一:有两个字符串分别如下:String a = “10101001101010100110”;String b = “1011011101100”;字符串里的数字或者是0,或者是1。编写一个函数实现这两个数的二进制字符串相加。考虑都是无符号数字相加。题目变种有两个字符串分别如下:String a = “1879987637894818799876378948”;String b = “176898”;字符串里的数字是0到9的任意原创 2020-10-27 21:20:44 · 411 阅读 · 0 评论 -
分享头条面试题,是不是又凉了呢
算法题给定无序数组arr,返回其中最长的连续序列的长度(要求值连续,位置可以不连续,例如 1,2,3,4为连续的自然数)示例1输入 {100,4,200,1,3,2}输出 4示例2 输入 {200,201,202,100,4,200,1,3,2,204,203}输出 5import java.util.Scanner;import java.util.*;import java.lang.Integer;public class Main { public static void原创 2020-10-17 20:37:49 · 237 阅读 · 1 评论 -
分享三道面试的算法题
第一道(B):在北京有N个工区,形成一个环状,Bytebus是往返在各个工区的通勤车,按工区的顺序行驶,其中第 i 个工区有汽油 gas[i] 升。你有一辆油箱容量无限的的Bytebus,从第 i 个工区开往第 i+1 个工区需要消耗汽油 cost[i] 升。你从其中的一个工区出发,开始时油箱为空。如果你可以绕环路行驶一周,则返回出发时工区的编号,否则返回 -1。输入:gas = [1,2,3,4,5]cost = [3,4,5,1,2]输出: 3第二道:现有1000瓶药,其中999瓶无毒,原创 2020-10-11 13:43:31 · 344 阅读 · 0 评论 -
手动整理数据库文档已过期?看看这个工具
职业生涯一路走来,待过的公司也不下三家。就没见过有特别规范的数据库设计文档的企业,今天给大家介绍一个非常好用的工具。它就是screwhttps://toscode.gitee.com/leshalv/screwscrew具有以下特点:简洁、轻量、设计良好多数据库支持多种格式文档灵活扩展支持自定义模板从官方说明知道已经支持的数据,以及准备支持的数据0x01:新建项目新建项目com-screw,并引入screw <!--数据库文档核心依赖-->&l原创 2020-09-09 22:28:28 · 359 阅读 · 0 评论 -
27、Spring Cloud整合网关zuul入门
公众号: java乐园基于Spring的微服务结点在能力上没有高低贵贱之分,但是在角色上会分为边缘服务和内部服务两部分。内部服务是为对内暴露服务的结点,供架构内部来调用;边缘服务是对外部网络暴露的服务结点,也就是对外API接口。开发人员为了防止服务被黑客攻击,需要编写各种权限机制,这些机制在每个微服务结点都要实现一次。一旦鉴权上有什么bug,又要全部节点上推倒重来,噩梦;运维人员在边缘服务前段...原创 2019-05-03 11:18:02 · 445 阅读 · 0 评论 -
JAVA爬数据也是杠杠的,爬下杜大哥
上篇分析的网站是国家级,没有真正编写代码爬取对应的数据,今天以“1药网”为例来爬一爬药品数据https://www.111.com.cn/1、 分析网站进入网站首页2、 点击一下“所有商品分类”,对应的网站地址如下https://www.111.com.cn/categories/ 先爬取所有的“分类”,然后在根据“分类”获取分类下的所有商品。发起Get请求的方法publ...原创 2019-05-03 11:12:53 · 557 阅读 · 0 评论 -
23、springboot集成quartz
公众号: java乐园在做项目时有时候会有定时器任务的功能,比如某某时间应该做什么,多少秒应该怎么样之类的。定时任务常用的业务场景是进行数据统计。spring支持多种定时任务的实现,今天介绍一下spring定时器和quartz定时器的使用。一、 spring定时器spring自带支持定时器的任务实现。其可通过简单配置来实现定时任务。主要用到如下两注解: @EnableScheduli...原创 2019-05-02 23:11:28 · 398 阅读 · 0 评论 -
22、springboot集成freemarker
springboot 中自带的页面渲染工具为thymeleaf ,freemarker这种模板引擎用的也比较多。一、在spring中springMVC代表着view层组件二、为什么使用freemarker:简单容易学、逻辑分明三、freemarker优点:不依赖servlet、网络或者web环境1、 新建maven项目,对应的pom.xml文件如下<project xmlns="...原创 2019-05-02 23:08:31 · 369 阅读 · 0 评论 -
12、Feign整合断路器Hystrix
公众号: java 乐园源码: https://gitee.com/hjj520/spring-cloud-2.x上编说了《RestTemplate+Ribbon整合断路器Hystrix》,这篇来看看如何Feign整合断路器Hystrix,Feign整合断路器Hystrix也是相对比较简单的。Feign默认已经自带断路器Hystrix,所以不需要像RestTemplate+Ribbon整合断路...原创 2019-04-30 21:12:14 · 445 阅读 · 0 评论 -
21、断路器集群监控Turbine
公众号: java乐园前几篇已经实现了对单个服务实例的监控,当然在实际应用中,单个实例的监控数据没有多大的价值,我们其实更需要的是一个集群系统的监控信息,这时就需要引入Turbine。Turbine能够汇集监控信息,并将聚合后的信息提供给Hystrix Dashboard来集中展示和监控。本文将结合之前学习的注册中心Eureka、服务提供者Provider、断路器Hystrix和仪表盘Dash...原创 2019-05-02 23:06:27 · 359 阅读 · 0 评论 -
20、springcloud如何使用spring-cache
公众号: java乐园学了springcloud如何操作数据库进行增删改查,又学了springcloud如何操作reids把数据存储到redis。今天结合数据库操作和reids操作,来看看如何使用SpringCache。SpringCache提供了基于注解的缓存配置方法。它本质上不是一个具体的缓存实现方案(例如EHCache),而是一个对缓存使用的抽象和封装,通过在已有代码中打上几个预定义的注释...原创 2019-05-02 09:36:59 · 1534 阅读 · 0 评论 -
17、springcloud整合lettuce使用redis
公众号: java乐园Redis是一种nosql数据库,以键值对<key,value>的形式存储数据,其速度相比于MySQL之类的数据库,相当于内存读写与硬盘读写的差别,所以常常用作缓存,用于少写多读的场景下,直接从缓存拿数据比从数据库(数据库要I/O操作)拿要快得多。Redis目前几乎无处不在,大公司小公司都在用。Spring cloud 2.x版本后默认Redis客户端连接池...原创 2019-05-02 09:29:45 · 1929 阅读 · 0 评论 -
35、Activiti整合规则引擎Drools
公众号:java乐园日常生活是由规则驱动的。红灯停绿灯行,这是我们的交通规则;我们站着往上跳,最终还是要落下来,这是地球的引力规则。规则在生活中无处不在。软件开发中我们也需要规则,满足什么规则应该进入什么分支。如果做过风控系统,就知道风控系统里存在非常多的规则(比如:age < 16 || age > 50 -> REJECT )。最便捷的实现就是用 if-else 来写,但是...原创 2019-05-11 20:29:55 · 3280 阅读 · 0 评论 -
15、Feign整合断路器监控Hystrix Dashboard
公众号: java乐园Ribbon可以整合整合断路器监控Hystrix Dashboard,Feign也不能少, 本篇讲解一下Feign如何整合断路器监控Hystrix Dashboard。本篇主要整合sc-eureka-client-consumer-feign-hystrix项目和sc-hystrix-dashboard项目。1、 新建项目sc-feign-hystrix-dashboar...原创 2019-05-01 21:13:47 · 1058 阅读 · 0 评论 -
13、如何使用断路器监控Hystrix Dashboard
公众号: java 乐园源码: https://gitee.com/hjj520/spring-cloud-2.x在微服务架构中如何去监控服务的状态是否正常,非常重要。为例保证微服务的可用性,防止程序断路器模型。运维人员需要一个友好的程序来监控微服务的状态, Hystrix Dashboard作为断路器监控的一个重要组件,提供了数据监控及非常友好的图形化界面,方便运维人员对服务进行监控;,通过...原创 2019-04-30 21:15:22 · 532 阅读 · 0 评论 -
29、网关zuul入门三
公众号: Java乐园网关zuul配置的最后一种方式给微服务名指定path,这种方式也是zuul默认时,内置的方式。1、 打开上篇的sc-zuul-towway项目的配置文件application.yml,作如下修改2、 分别启动如下项目注册中心:sc-eureka-server服务消费者:sc-zuul-consumer网关:sc-zuul-towway3、 验证先看看注册中...原创 2019-05-11 20:17:59 · 447 阅读 · 0 评论 -
eclipse常用方法
插件开发 eclipse转载 2017-11-28 21:01:26 · 403 阅读 · 0 评论 -
eclipse集成Java性能分析神器JProfiler
JProfiler是一款功能强大的Java开发分析工具,能帮助从事编程工作的朋友们分析你们的代码数据,确定内存泄漏并了解线程问题。1、下载JProfilerhttps://www.ej-technologies.com/download/jprofiler/files可以根据系统位数选择具体版本的JProfiler2、安装JProfiler下载绿色版本JProfiler3、启动JP...原创 2019-08-06 21:17:56 · 1407 阅读 · 0 评论 -
Java内存泄漏分析工具Memory Analyzer Tool
一个大型的Java项目也许从开发到测试结束并可能不能未发现一些重大的问题,但是在生产环境中还是会出现一些非常棘手的问题,如内存泄漏直接导致服务宕机,遇到这样的问题对于一个经验尚浅的开发人员来说难度非常大,好的一点是JVM 能够记录下问题发生时系统的部分运行状态,并将其存储在堆转储 (Heap Dump) 文件中,从而为我们分析和诊断问题提供了重要的依据。要生存Heap Dump文件的前提是需要在服...原创 2019-08-02 21:46:23 · 3640 阅读 · 0 评论 -
Oracle CDC撤编,SUN嫁给Oracle后还剩哪些家伙
1989 年,Oracle 正式进入中国市场,是第一家进入中国的世界软件巨头。2002年该公司在深圳建立第一家研发中心,随后在北京、上海、苏州、南京相继成立研发中心。最近惊现Oracle中国区研发中心(CDC)进行裁员撤编。Oralce裁员然而给我们并没半毛钱关系,但是Orace收购SUN后成为JAVA语言的拥有者,这却关系到我们这一类主要以JAVA混饭吃得码农们。Oracle收购SUN已经过去快...原创 2019-05-12 15:01:57 · 309 阅读 · 0 评论 -
34、Spring Cloud 2.x之整合工作流Activiti
公众号:java乐园https://gitee.com/hjj520/spring-cloud-2.x工作流在项目中非常常用,这里先来看两张图:第一张:第二张:对以上两张图进行说明:假设这两张图就是华谊兄弟的请假流程图图的组成部分: 人物:范冰冰、冯小刚、王中军 事件(动作):请假、批准、不批准工作流(Workflow):就是“业务过程的部分...原创 2019-05-11 20:27:02 · 638 阅读 · 1 评论 -
33、Spring Cloud网关Gateway
公众号: java乐园Spring Cloud Gateway是由spring官方基于Spring5.0、Spring Boot2.x、Project Reactor等技术开发的网关,目的是代替原先版本中的Spring Cloud Netfilx Zuul,目前Netfilx已经开源了Zuul2.0,但Spring 没有考虑集成,而是推出了自己开发的Spring Cloud GateWay。该项...原创 2019-05-11 20:24:39 · 836 阅读 · 0 评论 -
32、Spring Cloud 服务跟踪总结
公众号: java乐园上两篇讲解了zipkin,这篇总结一下。其实Spring Cloud实施分布式跟踪解决方案所用的技术不仅仅是zipkin。在spring官网:http://spring.io/projects/spring-cloud-sleuth有这么一段话:翻译过来:Spring Cloud Sleuth是Spring Cloud实施分布式跟踪解决方案,大量借用Dapper,...原创 2019-05-11 20:23:06 · 568 阅读 · 0 评论 -
31、Spring Cloud 中整合Zipkin进行服务跟踪zipkin-client
公众号: java乐园上一篇简介了Zipkin Server的搭建,但是从Spring boot 2.x版本后,Zipkin官网已经不再推荐自己搭建定制Zipkin,而是直接提供了编译好的jar包。详情可以查看官网:https://zipkin.io/pages/quickstart.html有了Zipkin Server还不能对微服务的调用链路进行人祸监控,Zipkin Server可以...原创 2019-05-11 20:21:51 · 3598 阅读 · 3 评论 -
30、Spring Cloud 中整合Zipkin进行服务跟踪zipkin-server
随着业务发展,系统拆分导致系统调用链路愈发复杂一个前端请求可能最终需要调用很多次后端服务才能完成,当整个请求变慢或不可用时,是无法得知该请求是由某个或某些后端服务引起的,这时就需要解决如何快读定位服务故障点,以对症下药。于是就有了分布式系统调用跟踪的诞生。现今业界分布式服务跟踪的理论基础主要来自于 Google 的一篇论文《Dapper, a Large-Scale Distributed Sys...原创 2019-05-11 20:19:11 · 11156 阅读 · 8 评论 -
二、eureka注册中心集群
Spring Cloud 2.x系列之 eureka注册中心集群1、 Eureka作为spring cloud的服务发现与注册中心,在整个的微服务体系中,处于核心位置。单机模式下的eureka服务,显然不能满足高可用的实际生产环境,这就要求配置一个能够应对各种突发情况,具有较强容灾能力的eureka服务。Eureka通过“伙伴机制”实现高可用。每一台Eureka都需要在配置中指定另外两个Eure...原创 2018-11-13 19:58:02 · 408 阅读 · 0 评论 -
一大波视频分享
1.ps 链接: https://pan.baidu.com/s/1mjYbcJA 2.HTML5+CSS3从入门到精通.iso 链接: https://pan.baidu.com/s/1cUHz3o 3.Javascript视频教程 链接: https://pan.baidu.com/s/1i6eC5YP 4.Jquery视频教程 链接:https://pan.baidu.c...原创 2018-06-09 09:39:44 · 1135 阅读 · 1 评论 -
如何把jar发布到中央仓库
java maven 发布jar到中央仓库原创 2017-12-27 20:06:11 · 3855 阅读 · 1 评论 -
基于aes的加解密方案
加密 解密 方案 aes java原创 2018-01-01 09:43:27 · 597 阅读 · 0 评论