自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 springboot mybatis 后台框架平台模块设计方案

1.模型管理 :web在线流程设计器、预览流程xml、导出xml、部署流程2.流程管理 ** :导入导出流程资源文件、查看流程图、根据流程实例反射出流程模型、激活挂起 、自由跳转**3.运行中流程:查看流程信息、当前任务节点、当前流程图、作废暂停流程、指派待办人4.历史的流程:查看流程信息、流程用时、流程状态、查看任务发起人信息5.待办任务 :查看本人个人任务以及本角色下的任务、办理、驳回、作废、指派一下代理人6.已办任务 :查看自己办理过的任务以及流程信息、流程图、流程状态(作

2021-10-19 15:54:01 205

原创 php mysql扩展安装

背景WSL2(ubuntu20.04)中源码编译安装的PHP,安装 mysqli 扩展报错 mysqli.so: undefined symbol: mysqlnd_global_stats解决方案网上搜索了很多,排名前列的都没有解决我的问题,经过多番查找,最终找到了问题的原因,特记录在此,希望对其他人有所帮助。mysqli扩展依赖mysqlnd扩展,如果在编译php时没有开启,后续配置php.ini时需要注意先后顺序,mysqlnd要在前面。在尝试的过程中发现,如果是通过php源码来编译扩展,m

2021-10-15 17:53:36 1012

原创 pflag - 更好的PHP命令行选项解析库

php-toolkit/pflag 是一个PHP编写的,通用的命令行标志(选项和参数)解析库。Github 仓库: php-toolkit/pflag功能说明通用的命令行选项和参数解析器支持设置值数据类型(int,string,bool,array),将自动格式化输入值支持为选项/参数设置默认值支持为一个选项设置多个短名称支持从环境变量读取标志值支持设置选项/参数为必须的(required)支持设置验证器以检查输入值支持自动渲染漂亮的帮助信息。命令行选项:选项以 - 或者 -- 开头的,且

2021-10-15 17:38:29 265

原创 java springboot spring cloud 设计方案

——————————————- 系统模块1. 权限管理:点开二级菜单进入三级菜单显示 角色(基础权限)和按钮权限角色(基础权限): 分角色组和角色,独立分配菜单权限和增删改查权限。(一个用户可以多个角色)按钮权限: 给角色分配按钮权限。2. 按钮管理:自定义按钮管理,维护按钮shiro权限标识等3. 菜单管理:N级别自定义菜单,选择菜单图标,菜单状态显示隐藏(递归处理)4. 数据字典:N级别,支持多级别分类。内设编号,排序等5. 日志管理:记录用户登录退出和一些重要操作记录6. 在线管理:w

2021-10-14 17:43:55 122

原创 普通springcloud eureka 和 spring cloud Alibaba nacos 注册中心

————————————-普通springcloud eureka1 .eureka 注册中心:做了两个eureka服务,以此类推可以做多个,互相注册,高可用,集群部署zipkin跟踪服务:分布式跟踪日志,基于内存存储记录3 .zuul网关路由服务:分发请求,统一管理过滤,结合 ribbon 负载均衡、 hystrix断路器springboot-admin 监控中心服务:统一界面管理,查看各个服务运行状态 actuator健康检查———————————spring clou..

2021-10-14 17:00:27 109

原创 微信网页登录授权流程都不清楚,还说自己3年前端?

下面是来自微信开发文档步骤如图:第一步:用户同意授权,获取code第二步:通过code换取网页授权access_token第三步:刷新access_token第四步:拉取用户信息接下来我将实际项目的代码粘出来, 前端nuxt.js前端部分在插件plugins 下app.js中封装方法export default ({ app }, inject) => { inject('wxLogin', (pageURI) => { let url = "http

2021-10-13 18:06:09 142

原创 使用 Roadrunner 为 PHP 程序加速

最近发布了 Laravel Octane包。 它的创建使 Laravel 对 Swoole 和 RoadRunner 更加友好。 我们在 dev.family中使用 RoadRunner 而不是 php-fpm 已经有一段时间了, 我们决定分享我们的经验并揭示它具有什么优势。RoadRunner 是一个用 Go 编写的高性能、开源的 PHP 应用服务器。 与 php-fpm 的主要区别在于 RoadRunner 与 php 的常驻进程交互, 不像 php-fpm, 会在每次请求时创建并杀掉一个新的 ph

2021-10-13 16:47:49 538

原创 JAVA 考试系统模块设计方案

————————————————-题库管理22. 图片库:创建文件目录,维护图片,供题库选择调用23. 单选题:维护单选试题,试题题目,选项,答案,类型,级别,状态,解析24. 多选题:维护多选试题,试题题目,选项,答案,类型,级别,状态,解析25. 判断题:维护判断试题,试题题目,答案,类型,级别,状态,解析26. 填空题:维护填空试题,试题题目,答案,类型,级别,状态,解析27. 问答题:维护问答试题,试题题目,答案,类型,级别,状态,解析28. 复合题:维护复合试题,富文本编辑器,试题题

2021-10-12 18:26:28 152

原创 java springcloud 微服务设计方案

springcloud *+ *springcloud **Alibaba + **flowable 流程引擎1.代码生成器: **正反双向freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面、建表sql脚本、处理类、service等完整模块**2.多数据源:(支持同时连接无数个数据库,可以不同的模块连接不同数的据库)支持N个数据源3.阿里数据库连接池druid,安全权限框架 shiro(菜单权限和按钮权限), 缓存框架 ehcache4.**代码编辑器,在线模版编辑,仿开发工具编辑器

2021-10-12 17:00:38 125

转载 Linux安装MariaDB数据库

# 搜索的作用: 显示可安装程序包 yum search mariadb #安装 yum install -y mariadb mariadb-server #启动服务 3306 端口 systemctl start mariadb systemctl stop mariadb #查看端口号是否被占用 netstat -nap | grep 3306 #登录数据库 mysql -u root -p # 按两下回车,跳过密码 # 显示所有数据库

2021-10-12 16:39:41 60

原创 Mysql各种锁机制

一、mysql锁介绍锁来源在存在并发操作的时候,必然需要一种机制来保证数据的完整性与一致性。锁就是这一技术的实现。锁种类根据概念分:悲观锁和乐观锁根据粒度分:表锁、页锁、行锁,最常见的就是表锁和行锁。其中,MyISAM引擎只有表锁,而InooDB既有表锁也有行锁。根据功能分:共享锁、排它锁(独占锁)、意向锁等。其中,共享锁被称为S锁。排它锁称为X锁。锁名称特点表锁加锁快,不会出现死锁,锁定粒度大,发生锁冲突的概率最高,并发度最低。行锁开销大,发生锁冲突概率低。

2021-10-11 15:22:36 163

原创 MySQL Explain执行计划

Explain有什么用当Explain与SQL语句一起使用时,MySQL会显示来自优化器关于SQL执行的信息。也就是说,MySQL解释了它将如何处理该语句,包括如何连接表以及什么顺序连接表等。表的加载顺序sql的查询类型可能用到哪些索引,哪些索引又被实际使用表与表之间的引用关系一个表中有多少行被优化器查询…..Explain有哪些信息Explain执行计划包含字段信息如下:分别是id、select_type、table、partitions、type、possible_keys、key、key_l

2021-10-11 15:02:50 512

原创 java 导入到EXCEL表格

package com.fh.util;import java.util.Date;import java.util.List;import java.util.Map;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.poi.hssf.usermodel.HSSFCellStyle;import org.apache.poi.

2021-10-10 17:27:22 70

原创 交换两个整型变量

使用一个中间变量这种是最容易理解的$a = 1;$b = 2;$temp = $a;$a = $b;$b = $temp;var_dump($a, $b);不使用中间变量,就靠几次加减巧妙转换$a = 10;$b = 5;$a = $a + $b;$b = $a - $b;$a = $a - $b;var_dump($a, $b);使用位运算中的多次异或这种最不好理解$a = 1;$b = 3;$a = $a ^ $b;$b = $a ^ $b;$a = $a ^

2021-10-10 16:41:54 48

原创 为什么条件判断结果与预期不符?

本人新手,想制作一个简单的登录程序(用JFrame实现),但判断输入语句与正确密码是否相符时出现问题,输入正确密码但判断为false,求解。代码如下:/** * */package jinjie;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.KeyAdapter;import java.awt.event.KeyE

2021-10-09 17:04:03 130

原创 JAVA oa 系统模块设计方案

1.模型管理 :web在线流程设计器、预览流程xml、导出xml、部署流程2.流程管理 :导入导出流程资源文件、查看流程图、根据流程实例反射出流程模型、激活挂起 、自由跳转3.运行中流程:查看流程信息、当前任务节点、当前流程图、作废暂停流程、指派待办人4.历史的流程:查看流程信息、流程用时、流程状态、查看任务发起人信息5.待办任务 :查看本人个人任务以及本角色下的任务、办理、驳回、作废、指派一下代理人6.已办任务 :查看自己办理过的任务以及流程信息、流程图、流程状态(作废 驳回

2021-10-09 16:21:45 245

转载 用PHP轻松完成一个分布式事务TCC

什么是TCC,TCC是Try、Confirm、Cancel三个词语的缩写,最早是由 Pat Helland 于 2007 年发表的一篇名为《Life beyond Distributed Transactions:an Apostate’s Opinion》的论文提出。TCC组成TCC分为3个阶段Try 阶段:尝试执行,完成所有业务检查(一致性), 预留必须业务资源(准隔离性)Confirm 阶段:如果所有分支的Try都成功了,则走到Confirm阶段。Confirm真正执行业务,不作任何业务检查,

2021-10-08 18:18:56 379

原创 PHP+Redis解决实际问题一:订单限流

如何用Redis给订单限流,如每M秒允许N个访问解决方案:<?php /** * 是否允许放行 * @param string $key redis键前缀 * @param int $timeInterval 时间间隔(秒) * @param int $max 时间间隔内最大放行数 * @return bool 是否放行 * @throws Exception *

2021-10-08 16:48:10 69

原创 java 根据经纬度计算圆周

package com.fh.util;/**说明:圆周作者:FH Adminfrom:www.dhtzpx.com*/public class LatLonUtil {private static final double PI = 3.14159265; // 圆周率private static final double EARTH_RADIUS = 6378137; // 地球半径private static final double RAD = Math.PI / 18

2021-10-08 15:53:32 141

原创 PHP 中的运算符 “? :“ (三元表达式)有什么作用?

PHP 运算符 “? :” 如何使用,效果如何?PHP 中 ? 和 : 运算符是什么样的?如下:(($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER)它是一个条件运算符。$x ? $y : $z表示 “如果 $x 是 true,那么采用 $y;如果不是则采用 $z” 。它还可以简化。$x ?: $z表示 “如果 $x 是 true,那么采用 $x;如果不是则采用 $z” 。有人会说 ?: 是 “三元运算符” 。这是不对的。 ?: 如

2021-09-30 16:26:58 767

转载 java 文件处理 工具类

package com.fh.util;import java.io.BufferedInputStream;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.RandomAccessFile;import j

2021-09-30 14:24:36 190

原创 hyperf配置yasd调试环境

hyperf的环境采用docker构建DockerDockerfile采用hyperf的镜像文件,额外添加了yasd的扩展。# hyperf/hyperf:7.4## @link https://www.hyperf.io# @document https://doc.hyperf.io# @contact [email protected]# @license https://github.com/hyperf/hyperf/blob/master/LICENSEARG ALPI

2021-09-29 15:20:33 1087

原创 java BigInteger 对权限进行2的权的和计算

package com.fh.util;import java.math.BigInteger;/** * 说明:权限计算帮助类 * 作者:FH Admin * 官网:fhadmin.cn */public class RightsHelper { /** * 利用BigInteger对权限进行2的权的和计算 * @param rights int型权限编码数组 * @return 2的权的和 */ public static Big

2021-09-29 14:01:21 58

原创 运维相关 如何解决504报错

504原因分析:PHP运行时间超时,导致程序报错504;Nginx运行时间超时,导致程序报错504;php-fpm运行超时,导致程序报错504。1. PHP代码导致程序报错首先确认PHP版本,PHP5.4版本下有一个叫做safe_mode安全模式的运行模式,一旦开启后,一些函数将会失效,例如我们解决PHP运行时间限制的函数 set_time_limit以及 php.ini中的max_execution_time 如果你开启了这一模式 请关闭后重启PHP。PHP默认安全模式是关闭的 所以如果你没有开启

2021-09-28 17:39:26 1638

原创 java 从EXCEL导入到数据库

package com.fh.util;import java.io.File;import java.io.FileInputStream;import java.util.ArrayList;import java.util.List;import org.apache.poi.hssf.usermodel.HSSFCell;import org.apache.poi.hssf.usermodel.HSSFRow;import org.apache.poi.hssf.usermodel.H

2021-09-28 14:58:24 74

原创 自定义一个kaniko镜像

工具与资源中心帮助开发者更加高效的工作,提供围绕开发者全生命周期的工具与资源背景kaniko是一款方便我们从K8S内部构建docker容器的工具,以前我们在CI过程中,使用的是docker-in-docker技术,这种技术最主要的缺陷就是当一台机器上同时运行多个docker build流水线时,会出现阻塞的情况,因为这一批流水线用的是宿主机上的同一个docker进程。基于这种情况,我们在droneCI流水线中换用了kaniko来进行docker镜像的创建。遇到的难题kaniko是基于scrat

2021-09-26 17:26:33 319

原创 java 爬取网页内容、 标题、图片

package com.fh.util;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.net.URL;import java.net.URLConnection;import java.util.ArrayList;import java.util.List;import java

2021-09-26 16:31:10 341

原创 php 处理 浮点数 精度运算 数字处理等

前言1. php浮点类型数字进行运算 稍微不留神就会出现偏差 特别是金融行业,电子商户订单,商城类项目。2. 浮点数的精度有限。尽管取决于系统,PHP 通常使用 IEEE 754 双精度格式,则由于取整而导致的最大相对误差为 1.11e-16。非基本数学运算可能会给出更大误差,并且要考虑到进行复合运算时的误差传递。永远不要相信浮点数结果精确到了最后一位,也永远不要比较两个浮点数是否相等。如果确实需要更高的精度,应该使用任意精度数学函数 或者 gmp 函数。一 . 运算错误 //加 $a = 0.

2021-09-25 17:44:15 217

转载 Java 的运算系统

一:基本运算符+,+=-,-=*,*=/,/=%,%=-(取反)基本运算符非常简单,涉及到的无非是加,减,乘,除,取模运算。值得一提的是取模运算是带符号运算,初学者很容易踩到这个坑。示例:// 判断一个整数是不是奇数public static boolean isOdd(int num){ return num % 2 == 1;}初学者很有可能写出这样的代码,对于判断一个整数是否为基数,我们还要考虑输入为负数的情况如果 num 为负数,譬如 -3 ,那么 -3 % 2

2021-09-25 17:20:23 158

原创 Java爬虫批量爬取图片

Java 爬取图片现在开始学习爬虫,对于爬虫的入门来说,图片相对来说是比较容易获取的,因为大部分图片都不是敏感数据,所以不会遇到什么反爬措施,对于入门爬虫来说是比较合适的。使用技术:Java 基础知识、HttpClient 4.x 、Jsoup学习目标:下载静态资源图片。爬取思路对于这种图片的获取,其实本质上就是就是文件的下载(HttpClient)。但是因为不只是获取一张图片,所以还会有一个页面解析的处理过程(Jsoup)。Jsoup:解析 html 页面,获取图片的链接。HttpClien

2021-09-24 17:40:15 130

转载 PHP常见数组函数与实例

一、数组的一些关于键名和值的基础操作函数1.获取数组所有的键或值:array_keys() array_values()$arr_keys = array_keys($array);$arr_values = array_values($arr);2.交换数组中键和值的位置,若重复前面的会被后面的覆盖:array_flip()$arr2 = array_flip($arr);3.给定的值是否在数组中:in_array(value,array)$bool = in_array('hello',$ar

2021-09-24 16:40:31 114

原创 java 操作数据库备份

/**用于执行某表的备份(内部类)线程 * @from fhadmin.cn * Callable 有返回值的线程接口 */ class DbBackUpCallable implements Callable<Object>{ String tableName = null; public DbBackUpCallable(String tableName){ this.tableNam...

2021-09-23 17:53:23 282

转载 分布式系统的数据一致性问题,你是如何解决的?

1、一致性概念:指分布式服务系统之间的弱一致性,包括应用系统的一致性和数据的一致性.数据量大,高并发要求高,强计算能力,响应速度要求快,等的互联网要求场景下,服务节点开始池化,开始出现容器应用和数据拆分,分而治之的思想和逻辑水平拆分和垂直拆分 2、解决一致性问题的模式和思路(1)酸碱平衡理论①ACID(酸)原子性,一致性,隔离性,持久性。关系型数据库事务处理保证强一致性通常是通过多版本控制协议(MVCC)来实现的下订单和扣库存不一致问题可以将订单和库存放入同一数据库分片,通过关系型数据库事务处理的4个基本

2021-09-23 17:21:59 2095

原创 mysql inner jion查询时遇到的问题

在开发的时候使用MYSQL的inner join语句发现了一个很奇怪的问题,直接上表建表a表结构和数据如下SET NAMES utf8mb4;SET FOREIGN_KEY_CHECKS = 0;-- ------------------------------ Table structure for a-- ----------------------------DROP TABLE IF EXISTS `a`;CREATE TABLE `a` ( `id` int(11) UNS

2021-09-23 16:52:02 495

原创 浅谈函数式编程与 Java Stream

LearnKu 社区的小伙伴们大家好啊,许久不见~在这一篇文章中,我将介绍函数式编程的基本概念,如何使用函数式编程的思想编写代码以及 Java Stream 的基本使用方法。本文不会涉及到任何晦涩难懂的数学概念,函数式编程的理论以及函数式编程的高阶特性,譬如:惰性求值(Lazy Evaluation),模式匹配等。所以,请放心食用。这篇文章对于以下的人群或许有一定的帮助:说不清什么是函数式编程的人不知道什么时候可以使用 Java Stream 的人Java8 出来了这么久,还是无法写好 Strea

2021-09-22 16:52:37 113

原创 java 常用工具类

package org.fh.util;import java.util.Random;import java.util.regex.Matcher;import java.util.regex.Pattern;/** * 说明:常用工具 * 作者:FH Admin * from:admin */public class Tools { /** * 随机生成六位数验证码 * @return */ public static int ge

2021-09-22 16:33:51 42

原创 使用 spatie/async 库来写异步的 PHP 代码

对于大多数用 PHP 编写的程序,它的唯一目的是执行由多个任务组成的简单进程,其中任务必须按顺序执行,如数据处理。我们总是不得不忍受同步编程的停止和等待。代码执行的同步风格被称为阻塞,这意味着任务将一个接一个地执行。那么,如果我们想要运行任务而不让它们相互阻塞,这意味着我们需要一个非阻塞进程,那该怎么办呢?这种方法需要在 PHP 中应用异步编程方法,这里的任务将在不相互依赖的情况下执行。在 PHP 中实现非阻塞执行的一种常见方法是实现队列处理。任务被持久保存到 MySQL、Redis、Amazon SQ.

2021-09-18 17:26:24 230

原创 PHP高级面试重点回顾

由于疫情的原因,是视频面试,甲方阵容hr主管一人,产品经理一人,本次面试直接负责人技术总监A,另外两人好像是同岗位不同部门负责人(B和C)(嗯,年龄都是35+)。话不多说直接上题。(有些想用冒号分隔的,奈何键盘的冒号键和tab好像坏了)开场时,hr介绍了本次参与面试的各成员即职位,然后了解他的疑问,产品经理询问了本辞职的原因和想要了解的问题。接下来正戏开始了。总监A:看你对MySQL掌握的很熟练,说说MySQL的隔离级别。。我:MySQL事务的隔离级别从第到高分别是读未提交,读已提交

2021-09-18 17:19:02 203

原创 请问下如何遍历展示数据表?

自己尝试制作一个简单的datatables的展示示例,30万条的数据无法在前端页面展示环境:PHP MySQL Apache 虚拟机配置内存:2GB数据表:数据量30万(包含首行)数据示例test.PHP 代码<?php/*定义读写超时常量*/if (!defined('MYSQL_OPT_READ_TIMEOUT')) { define('MYSQL_OPT_READ_TIMEOUT', 11);}if (!defined('MYSQL_OPT_WRITE_TIM

2021-09-16 15:52:24 105

转载 理解位运算|php

原码,反码,补码我们以整数来说,php中整型数据占内存8byte,也就是64bit位,每个位要么是0,要么是1;我们用左边第一位作为符号位,0为正,1为负;原码:十进制转换成的二进制10000000 ... 00000101 -5原码反码则是在原码基础上,符号位不变,其它位取反11111111 ... 11111010 -5反码补码则是在反码的基础上+111111111 ... 11111011 -5补码可以看到负数是以补码形式存储总结正数的原码,反码,补码,都是原码;负数以补码的形式

2021-09-16 15:39:27 48

空空如也

空空如也

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

TA关注的人

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