自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

main方法

Java技术分享,个人微信公众号:main方法,个人网站地址:http://javakfz.com

  • 博客(83)
  • 资源 (4)
  • 收藏
  • 关注

原创 缓存之双写一致性

文章目录前言一、数据库、缓存双写问题1.先删除缓存再更新数据库2.先更新数据库再删除缓存二、解决方案1.延时双删2.消息队列总结前言今天要写的是缓存之双写一致性问题(双写一致是指:缓存与数据库写入保持一致。),什么情况下会产生双写一致性问题,以及解决问题的方案。一、数据库、缓存双写问题1.先删除缓存再更新数据库在缓存删除之后,数据库更新之前的间隙,又有人读取旧数据更新了缓存,数据库更新完数据库,此时数据库和缓存的数据又不一致了。2.先更新数据库再删除缓存通过调换顺序确实可以解决问题1,但是更

2022-05-30 23:14:56 659 1

原创 mysql数据库更改表名

ALTER TABLE 旧表名 RENAME TO 新表名;

2021-03-26 15:20:43 3557

原创 mysql新增字段带注释

alter table 表名 add COLUMN 字段名 类型长度 DEFAULT NULL COMMENT ‘注释内容’;

2021-03-26 15:19:46 1556

原创 java进程占用windows查看端口占用并杀掉进程命令

前言在开发项目中经常启动项目后突然开发工具崩溃了,然后重新打开开发工具后启动项目,发现!!!!!纳尼!!!!端口被占用了,于是乎开始寻找占用程序,找到之后一顿kill操作,直接送走。window+R—->cmd,打开命令窗口查看占用端口的进程PID,输入命令:netstat -aon|findstr“8080”,回车,最后一列就是进程PID继续输入tasklist|findstr “11964”,回车,查看是哪个进程或者程序占用了8080端口,结果是:java.exe

2021-03-25 17:44:31 1112

原创 java语言好用工具合集

一、FreeMarkerFreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页、电子邮件、配置文件、源代码等)的通用工具。 它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件。...

2021-03-17 15:26:37 118

原创 遍历ArrayList并移除一个元素

前言这是一个比较经典的面试题,相信也会有不少人遇到,今天就在此记录一下,写了两种方式供大家参考。方式一在for循环中删除元素,倒序遍历ArrayList能够有效防止漏删,这里大家可能会有疑问了?假设按照从0到size-1下标来删那么如果有相邻的两个元素是一样的,删除了第一个,此时数组长度会-1并且所有元素往前移动一位,那么第二个就移动到第一个元素的位置了,此时控值for循环的下标i已经+1了等于直接就跳过了第二个重复元素,倒叙就不会出现此类情况了。List<String> strs =

2021-03-15 20:37:43 1065

原创 双重检测锁单例模式指令重排问题

双重检测锁单例模式指令重排问题前言双重检测锁单例模式例子更改后的单例问题前因后果前言相信大多数同学在面试当中都遇到过写单例模式的题目,那么如何写一个完美的单例是面试者需要深究的问题,因为一个严谨的单例模式说不定就直接决定了面试结果,今天我们就要来讲讲单例模式中会出现的指令重排问题。双重检测锁单例模式例子乍一看下面单例模式没啥问题,还加了同步锁保证线程安全,从表面上看确实看不出啥问题,当在同一时间多个线程同事执行该单例时就会出现JVM指令重排的问题,从而可能导致某一个线程获取的single对象未初始化

2021-03-12 23:48:12 606 2

原创 多款可视化表单、流程开源设计器

  随着互联网的快速发展,越来越多的云建站平台快速崛起,不可避免的就是自定义可视化设计,如何不通过开发就能能够简单快速的搭出一个可用的页面就成了大家头痛的问题,但是从零开始开发设计一套可视化设计功能并不是一个简单的事情,还好有很多开源的可视化设计项目/组件可以供我们使用,今天我们就来看看有哪些开源可视化设计项目。一、FormRender易用的跨组件体系的表单渲染引擎 - 通过 JSON Schema 快速生成自定义表单配置界面Github Star 数 1938 , Github 地址:https:/

2020-11-25 16:24:12 7648 9

原创 第一个python程序,从安装python环境到人生第一个py脚本运行全过程

文章目录前言一、安装python运行环境1.官网https://www.python.org下载安装包.exe2.安装python二、python模块下载1.配置pip环境变量2.下载python模块三、第一个python脚本运行三、相关命令总结前言 之前刷博客看到一个很好玩的python脚本,正好今日闲来无事打算跑起来看看效果,然后开始找python相关的资料科普了一下,借此记录一下从官网下载python3.9安装包到第一个python程序的运行的整个过程。一、安装python运行环境1.官网

2020-11-21 22:50:46 1774 17

原创 Typescript中的问号点(?.)是什么意思?

问题Typescript中的感叹号点、问号点是什么意思?我刚入坑react项目的时候看别人代码就看到这样的写法,以开始是懵逼的哈哈哈哈,毕竟是个小白,然后吭哧吭哧的百度查资料,最后发现了问号点(?.)奥义哈哈哈。例子data入参可能为null,undefined,通常我们的写法是直接上if判断啥的,然后再取data中的属性,但是有了问号点(?.)写法就简单很多了,看下面例子:1.typescript写法://1.data可能为null,undefined , row也可能为null,undefin

2020-11-20 16:50:43 9434

原创 JAVA程序员还在为面试发愁?那你可要好好看看《JAVA核心面试知识整理.pdf》

 找工作的心酸历程相信大家都经历过,对于学霸来说可能轻而易举,因为他们已经悄悄努力学习掌握了一定的知识量,在毕业后成功拿到大厂offer惊艳了所有人,但是对于我们学渣来说面试简直就是噩梦啊!相信不少人经历过面试的毒打,想不想吊打面试官?拿到高薪offer?不光是你,我也曾经也经历过面对面试官一问三不知的尴尬场面,简直想要挖个洞传钻进去。 所以,我想要把我最近在看的一份JAVA核心面试知识整理PDF分享出来,跟大家一起学习成长,悄悄努力最后拿到高薪offer,惊艳所有人!!!JAVA核心面试知识整理文档获

2020-11-20 14:48:31 802 2

原创 redis入门教程详解

简介安装命令介绍及操作数据各种命令代码集成redis代码操作数据

2020-11-19 13:09:30 835

原创 React开发环境搭建、项目创建、命令使用

文章目录前言一、Node.js下载安装二、创建React项目三、React项目常用npm命令使用总结更多好文敬请关注公众号:main方法前言由于项目组前端紧缺的原因,一个后端开发安排了前端开发任务,之前有用过VUE开发过后端页面,这么说来还是有经验的,借此记录一下React开发环境搭建过程。一、Node.js下载安装1、百度搜索Node.js下载即可看到官网地址,打开可以看到如图,这里根据自己电脑操作系统选择下载安装包,往下滑可选历史版本下载。2、双击下载安装包,无脑下一步(next)即可,

2020-11-16 12:46:19 933 4

原创 使用数据库关键字做字段引起的mybatis或tk.mybatis框架报错

报错信息:Exception Error:Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘require ) VALUES( 1,‘xx’,‘dfs’,‘

2020-11-06 11:17:16 1016

原创 细听分说Dubbo、SpringCloud、Istio微服务框架

文章目录前言一、Dubbo、SpringCloud、Istio框架简介1.Dubbo2.SpringCloud2.Istio新晋微服务框架二、Dubbo、SpringCloud、Istio架构图1.Dubbo架构图2.SpringCloud架构图2.Istio架构图三、Dubbo、SpringCloud、Istio数据对比总结前言  随着互联网时代的快速发展、产品更新迭代的同时,也产生了很多优秀的框架,可谓是时势造英雄啊,今天就让我们来一起看看各大互联网企业最爱使用的几个框架(Dubbo、Spring

2020-11-03 18:23:51 1559 3

原创 优雅获取ApplicationContext上下文对象,ApplicationContextUtil上下文获取工具类

文章目录一、实现接口实现ApplicationContextAware接口获取上下文对象二、SpringBoot启动类setApplicationContext获取上下文对象提示:以下是本篇文章正文内容,下面案例可供参考一、实现接口实现ApplicationContextAware接口获取上下文对象package com.example.demo.config;import org.springframework.beans.BeansException;import org.springfr

2020-11-02 17:20:18 1229

原创 第九章 SpringBoot系列整合swagger3 api接口文档

系列文章目录第一章 SpringBoot系列之从0搭建项目第二章 SpringBoot系列返回json数据第三章 SpringBoot系列GlobalException全局异常捕获第四章 SpringBoot系列整合Mybatis做增删改查第五章 SpringBoot系列配置JPA访问数据第六章 SpringBoot系列使用JdbcTemplate操作数据第七章 SpringBoot系列静态资源处理,访问磁盘文件第八章 SpringBoot系列实现任务调度Scheduled提示:写完文

2020-11-02 13:44:57 2011

原创 第八章 SpringBoot系列实现任务调度Scheduled

系列文章目录第一章 SpringBoot系列之从0搭建项目第二章 SpringBoot系列返回json数据第三章 SpringBoot系列GlobalException全局异常捕获第四章 SpringBoot系列整合Mybatis做增删改查第五章 SpringBoot系列配置JPA访问数据第六章 SpringBoot系列使用JdbcTemplate操作数据第七章 SpringBoot系列静态资源处理,访问磁盘文件文章目录系列文章目录前言新增ScheduleConfigurer调度任务配置

2020-11-01 12:32:37 608

原创 第七章 SpringBoot系列静态资源处理,访问磁盘文件

文章目录前言一、使用Spring Boot 默认配置访问图片二、实现接口WebMvcConfigurer重写 addResourceHandlers1.增加配置类MyWebMvcConfigurer2.启动项目,访问资源映射路径:http://localhost:8080/webmvc/1.jpg总结前言根据多年开发的经历,与前端交互的后端项目,静态资源服务是必不可少的,大型项目可能是有独立的oss对象存储文件服务器,小型项目基本是存储在本地磁盘通过后端服务访问到静态资源(图片,文件)提示:以下是

2020-10-31 23:21:57 1655 2

原创 第六章 SpringBoot系列使用JdbcTemplate操作数据

文章目录前言一、代码编写步骤1.mysql建表2.pom.xml加入jdbcTemplate,mysql驱动包的依赖3.application.properties配置文件中加入数据库连接配置4.编写dao层,controller层代码,简单点就不写service了。二、demo演示总结前言有些项目可能操作数据库极少,或者都是极其简单的语句,那么我们就可以使用JdbcTemplate类中的API来操作,只需要在pom引入JdbcTemplate依赖,dao层类加上@Repository注解,使用@Au

2020-10-30 15:10:32 872 1

原创 第五章 SpringBoot系列配置JPA访问数据

文章目录前言一、JPA持久层框架简介二、mysql建表三、整合JPA相关配置1.在pom.xml文件中加入JPA依赖配置、mysql驱动包配置,并导入下载依赖jar包。2.读入数据总结欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FL

2020-10-28 18:11:00 917

原创 启动日志MySQL SSL连接WARN日志解决方法在连接地址加上参数useSSL=false

控制台WARN日志:Wed Oct 28 15:50:40 CST 2020 WARN: Establishing SSL connection without server’s identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit optio

2020-10-28 15:56:40 1081

原创 第四章 SpringBoot系列整合Mybatis做增删改查

文章目录前言一、Mybatis简介二、整合Mybatis步骤1.在pom.xml文件中加入Mybatis依赖配置,并导入下载依赖jar包。2.application.properties数据库连接配置2.编写java操作数据库映射实体类,接口类,mybatis映射文件。总结前言本章内容在之前搭建的SpringBoot项目中整合Mybatis框架对数据库表做增删改查操作。提示:以下是本篇文章正文内容,下面案例可供参考一、Mybatis简介MyBatis框架是一个开源的数据持久层框架。它的内部封装

2020-10-27 10:19:21 824 1

原创 第三章 SpringBoot系列GlobalException全局异常捕获

文章目录前言一、需要用到的注解二、全局异常捕获代码实现1.创建GlobalExceptionHandler.java2.读入数据总结前言程序异常相信大家都不陌生,有可预知的,也有一些未知异常,通常我们会为异常做转义统一返回处理,从而能够更好的定位程序问题,由于过多的异常处理,我们代码中的try…catch就会很多,这样代码就会看起来很乱、不整洁、冗余,那么就会有人问,如果不这样写那么改怎么处理呢?不要慌,本章内容让你从try…catch中解救出来,咱往下看????提示:以下是本篇文章正文内容,下面

2020-10-26 11:47:58 7180 1

原创 第二章 SpringBoot系列返回json数据

文章目录前言一、JSON是什么?二、控制器中增加返回JSON数据方法(实际工作中我们称之为接口1.新建数据结构POJO实体类2.在控制器DemoController中加入getJsonData方法三、接口返回json数据效果总结前言上一章写的是从0搭建SpringBoot项目,本章就在上一章的基础上说说SpringBoot项目是如何返回json数据的,结合日常工作中场景讲解返回json数据结构。提示:以下是本篇文章正文内容,下面案例可供参考一、JSON是什么?JSON(JavaScript O

2020-10-24 15:51:58 992

原创 第一章 SpringBoot系列之从0搭建项目

文章目录前言一、开发工具安装,环境安装准备工作二、开发工具安装Spring帮助插件1.Eclipse安装Spring Tools4插件2.IntelliJ IDEA安装Spring Assistant插件三、搭建SpringBoot项目工程1.使用IDEA中的插件“Spring Assistant”创建项目。2.项目结构。总结前言使用SpringBoot已经也有两年多了,从一开始对SpringBoot的零认知到现在日常开发必接触的框架,说实话受益良多,其实SpringBoot就是Spring的扩展,以

2020-10-23 16:13:20 925

原创 IntelliJ IDEA 快捷键大全(idea默认快捷键)

IntelliJ IDEA 快捷键大全自动代码查询快捷键其他快捷键调试快捷键重构自动代码Ctrl+Alt+O 优化导入的类和包Alt+Insert 生成代码(如get,set方法,构造函数等) 或者右键(Generate)Ctrl+Alt+T 生成try catch 或者 Alt+enterCTRL+ALT+T 把选中的代码放在 TRY{} IF{} ELSE{} 里Ctrl + O 重写方法Ctrl + I 实现方法Ctr+shift+U 大小写转化ALT+回车 导入包,自动修正AL

2020-10-20 14:33:23 2144

原创 java初级java中级java高级java面试大纲java学习路线java学习大纲

标题java初级java中级java高级java面试大纲java学习路线java学习大纲最近在整理面试资料,索性就整理了一个面试大纲,下面脑图基本是我目前所接触到的知识面,JAVA程序员看过来吧,一起学习一起进步,有好的建议评论区留言哦!!!扫描下面二维码或搜索公众号:JAVA开发者课堂关注公众号获取更多免费学习资料!!!...

2020-09-24 17:16:21 568

原创 一篇能涨薪水的JVM调优,分析文章

JVM发展史1.历代JDK新特性介绍JVM模型1.堆(新生代,老年代,持久代)2.Matespace元数据区(jdk1.8新特性)2.栈JVM参数1.介绍2.参数设置(案例)GC1.GC参数2.GC算法和种类新生代复制算法老年代标记压缩...

2020-08-25 16:41:42 1146 1

原创 discuz论坛网站更换域名的方法及步骤

下面先说更换域名的步骤方法:后台–全局–站点信息–网站 URL:后台–全局–域名设置–应用域名和根域名设置后台–界面–导航–连接里面的地址修改后台–运营–关联连接,没有设置就不用修改后台–云平台–同步站点信息后台–站长–ucernter设置–UCenter 访问地址Ucenter–应用管理–应用的主 URL以上这些就是修改更换域名后需要设置的,6、7特别重要,关系着网站UC通信是否正常,如果UC通信失败,可以看下教程的第十讲配置文件的讲解,一样排除问题解决。Discuz更换域名建议不要

2020-08-21 15:29:48 3463

原创 微信小程序广告接入,小程序加广告

满足条件想要接入广告必须要开通流量主,小程序开通流量主的条件是:累计独立访问1000,也就是需要1000个人访问过你这个小程序才能够开通流量主。开通流量主之后1.在https://mp.weixin.qq.com/ 微信小程序后台管理页面新建广告位2.点广告位列表最右边操作列中的获取代码,把这段代码放入你页面中就会自动播放广告了,广告位置需要你自己调整。3.看看博主的公众号广告效果图吧。4.整个广告接入流程算完成了,来体验下我的小程序吧,顺手关注一下博主。...

2020-08-20 18:26:39 9379 3

原创 JavaScript获取http,http://请求协议头,域名,端口,url

window.location.protocol 获取http,http://请求协议头window.location.host 获取域名并带端口 xxx.com 如果有端口就是 xxx.com:8080window.location.hostname; 获取域名: xxx.comwindow.location.href; 获取整个url地址:http://xxx.com/xxx.htmlwindow.location.p

2020-08-16 15:34:47 2999

原创 JAVA Pattern正则获取大括号中内容,substring字符串截取获取大括号中内容

利用正则表达式获取字符串中想要的值:获取符串场景: 你好呀(嘻嘻)我需要获取“嘻嘻” 该如何获取呢?1.通过正则表达式获取: String str = "你好呀(嘻嘻)"; Pattern p = Pattern.compile("\\(([^\\)]+)"); Matcher matcher = p.matcher(str); if (matcher.find() && matcher.groupCount() >= 1){

2020-08-13 18:13:34 3352

原创 微信彩色昵称,表情emoji,手持弹幕,空白昵称消息小程序搜索:在线实用工具箱

小程序搜索:在线实用工具箱或扫描下方小程序码。首页:汉子查拼音,转二维码,手持弹幕,彩色昵称,emoji表情,空白昵称小程序功能我的页面

2020-08-12 10:44:11 1005

原创 ExcelAnalysisException:java.lang.NoClassDefFoundError: org/apache/poi/poifs/filesystem/FileMagic

使用alibaba的easyexcel做excel上传数据的时候报错:com.alibaba.excel.exception.ExcelAnalysisException: java.lang.NoClassDefFoundError: org/apache/poi/poifs/filesystem/FileMagicCaused by: java.lang.NoClassDefFoundError: org/apache/poi/poifs/filesystem/FileMagic检查一下pom.x

2020-08-11 16:53:45 3377

原创 Nginx监听443端口配置SSL证书

nginx配置:http {include mime.types;default_type application/octet-stream;gzip on;gzip_min_length 1024;gzip_types text/css application/x-javascript application/vnd.api+json;gzip_disable “MSIE [1-6].”;gzip_comp_level 2;ssl on;ssl_certificate

2020-07-30 23:16:01 5696

原创 discuz论坛个人资料信息只显示用户名,管理中心无法设置

管理中心》用户》用户栏目栏目分组中没有可设置项,我之前是没有的,数据库加了数据之后才有的。如果没有上图配置项,那么我就就需要在数据库表中修改pre_common_setting表skey字段为profilegroup的数据。REPLACE INTO pre_common_setting VALUES(‘profilegroup’, ‘a:5:{s:4:“base”;a:4:{s:9:“available”;i:1;s:12:“displayorder”;i:0;s:5:“title”;s:12:“

2020-07-29 16:43:03 1282

原创 discuz出现表不存在错误:(1146) Table ‘discuz.forum_post‘ doesn‘t exist (可能是Mysql引擎引起的问题,或者语法兼容问题)

安装成功后发帖报错:(1146) Table ‘discuz.forum_post’ doesn’t existSELECT * FROM forum_post WHERE authorid=‘2’ AND invisible=’-3’ AND first=‘1’ LIMIT 20后来一查原来是pre_forum_post 建表失败了.报错如下:[Err] 1064 - You have an error in your SQL syntax; check the manual that corr

2020-07-28 13:00:58 2725

原创 Discuz 3.4首次登录论坛没有样式,进入管理后台设置即可

Discuz 3.4首次登录论坛没有样式,进入管理后台设置即可

2020-07-28 12:16:58 1440

原创 Discuz论坛安装全过程

1.安装phpyum install php php-fpm php-mysql -y启动service php-fpm start或systemctl start php-fpm2.解压Discuz_X3.4_SC_UTF8【20191201】.zip并复制到/home/www/discuz/public目录unzip Discuz_X3.4_SC_UTF8【20191201】.zipcp -r upload/* /home/www/discuz/public3.nginx配置:htt

2020-07-28 00:49:24 1310

JVM性能调优-JVM内存整理及GC回收

很好的学习资料,很详细的讲述了JVM性能调优,JVM内存模型,垃圾回收原理算法等等,很适合JAVA程序员阅读。

2020-11-20

JAVA核心面试知识整理

包含众多面试内容:JVM,JAVA集合,JAVA多线程并发,JAVA基础,JAVA反射,SPRING原理,微服务,NETTY与RPC,网络,日志,ZOOKEEPER,KAFKA,RABBITMQ,HBASE,MONGDB,CASSANDRA,设计模式,负载均衡,数据库,一致性算法,JAVA算法,数据结构,加密算法,分布式缓存,HADOOP,SPARK,STORM,YARN,机器学习,云计算

2020-11-20

NavicatforMySQL.rar

Navicat for MySQL 是一款数据库客户端工具(windows)。用户连接数据库让我们可以在图形界面上对数据库做操作,包括DDL,DML操作都非常的方便。

2019-10-18

空空如也

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

TA关注的人

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