- 博客(46)
- 资源 (2)
- 收藏
- 关注
原创 一 JVM对象创建
1 对象创建过程1.1 class loading(类加载)1.jvm使用类加载器,通过包名+类名,加载二进制流文件到内存中(matespace);此时仅仅转变了数据结构,并未合并数据2.生成一个class对象,作为这个类各种数据访问的入口,这个Class对象并未规定是在Java堆内存中,它比较特殊,虽为对象,但存放在方法区中注意:类加载器可以使用默认的,也可以使用自己定义的(特殊逻辑)1.2 class linking(类链接)1.结构话类信息,将二进制对象合并到jre中1.2.1 ve
2021-05-12 20:22:24
303
原创 MacOS安装app提示已损坏修复指令
打开「终端.app」,输入以下命令并回车,输入开机密码回车sudo xattr -rd com.apple.quarantine 空格 软件的路径如Sketch.appsudo xattr -rd com.apple.quarantine /Applications/Sketch.app如CleanMyMac X.appsudo xattr -rd com.apple.quarantine /Applications/CleanMyMac X.app...
2021-05-12 17:15:13
1029
原创 jstack+top 定位占用资源的进程
cpu占用过高引起报警,使用top命令查看占用系统资源的进程第一步:top,寻找cpu占用率较高的进程第二步:top -pid 13213,寻找该进程中各线程的资源占用情况第三步:jstack 13213 > jstack.log,将线程堆栈信息输出到指定文件里对于多线程情况堆栈信息,可以使用printf ‘%x\n’ pid 将线程id转为16进制使用jstack pid | grep -A 20 pid(16进制)命令将堆栈信息进行筛选...
2021-04-27 20:57:24
432
原创 mac版idea插件安装位置
/Users/xxxx/Library/ApplicationSupport/JetBrains/IntelliJIdea2020.3/pluginsxxx 替换为自己的用户名
2021-02-06 15:27:38
3829
2
原创 粗略计算最佳线程数
最佳线程数目 = ((线程等待时间+线程CPU时间)/线程CPU时间 )* CPU数目比如平均每个线程CPU运行时间为0.5s,而线程等待时间(非CPU运行时间,比如IO)为1.5s,CPU核心数为8,那么根据上面这个公式估算得到:((0.5+1.5)/0.5)*8=32。这个公式进一步转化为:最佳线程数目 = (线程等待时间与线程CPU时间之比 + 1)* CPU数目...
2020-12-31 13:55:43
1186
原创 mac配置环境变量不生效
mac修改环境变量原理:主要原因是每次终端启动时候zsh加载的是 /etc/zshrc文件,而 ‘zshrc’ 文件中并没有定义任务环境变量。cd /etc/vi zshrc最后一行添加:source ~/.bash_profile保存,重新打开终端即可...
2020-11-18 16:46:53
1321
原创 maven 打包部署时访问远程仓库中没有的jar
maven 打包部署时访问远程仓库中没有的jarmaven构建项目你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。maven构建项目maven打包部署时候如果本地仓库没有指定的jar默认会访问远程仓库中的,但是如果说远程仓库也没有此时就会打包失败,我们可以手动将jar包install到本地仓库这样下次打包时候就不会有这个问题了:mvn install:install-fil
2020-07-22 21:36:30
751
原创 vue2.x+springboot1.x+nginx服务器部署踩坑日记
vue项目具体搭建不做赘述:配置打包方式 build: { // Template for index.html, env:require("./prod.env"), index: path.resolve(__dirname, '../dist/index.html'), // Paths assetsRoot: path.resolve(__dirname, '../dist'), assetsSubDirectory: 'stat.
2020-05-27 14:05:05
280
原创 Mac IDEA启动SpringBoot项目过慢
最近本地新起的SpringBoot项目运行非常慢,能有十几秒,最后通过以下方法进行解决,解决后运行在三四秒左右。命令行输入hostname显示liuxianshengdeMacBook-Pro.local修改host文件127.0.0.1 localhost liuxianshengdeMacBook-Pro.local::1 localhost liuxiansh...
2020-04-25 22:12:43
775
原创 秒杀网站设计思路
秒杀分为限时秒杀,限量秒杀,限时限量秒杀主要针对限时限量秒杀进行讲解:限时限量秒杀为了降低服务器压力一般都会采用限流措施,比如说秒杀商品1000个,抢购时只允许前1000个用户请求可以进来,达到请求数后,后边的请求在进来就直接返回商品已被抢购空了,降低服务器的压力;在订单和支付方面为了提高响应效率,可以先生成订单id(我用的是时间精确到毫秒(14位)+商品id(格式化到四位)+用户id...
2020-04-20 19:12:47
467
原创 fusion安装centos7并配置静态ip
具体安装步骤网上很多,不在赘述,只记录自己配置静态ip时候踩的坑(苹果电脑直接这么陪就行,无需要按照网上说的配置vmware8那样进行配置)编辑网卡配置项(我的centos7是ens33)vim /etc/sysconfig/network-scripts/ifcfg-ens33配置虚拟机属性TYPE=EthernetHWADDR=00:0C:29:03:93:D4 #自己的虚拟...
2020-04-16 13:18:20
328
原创 spring事务浅析
事务分为编程式事务和声明式事务声明式事务:import org.springframework.amqp.rabbit.annotation.EnableRabbit;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBoo...
2020-03-25 17:51:49
239
原创 线程队列
线程队列有两种,concurrentLinkedQueue,非阻塞队列,内部使用锁实现BlockingQueue,阻塞队列,满了就等待package learn.thread0301;import java.util.Queue;import java.util.concurrent.ConcurrentLinkedQueue;public class Concurrent...
2020-03-12 10:43:50
960
原创 常见的6种线程池及简单使用
jdk8线程池一共有6种,分别是CachedThreadPool(cached线程池,当有任务进来的时候如果有空闲的线程则直接利用,如果无空闲线程,则新创建一个线程出来使用),ScheduleThreadPool(schedule线程池,定时线程池,指定一个线程什么时候开始执行),SingleThreadPool(single单例线程池,保只有一个线程,保证数据先后执行的顺序一致),F...
2020-03-12 10:33:04
523
原创 spring. 重定向穿参数
@RequestMapping("/checkStudent")public String checkStudent(Integer[] ids, HttpServletRequest request, RedirectAttributes attributes,Integer class_id) {attributes.addAttribute("class_id", class_i...
2020-03-10 11:12:25
179
原创 自定义拦截器Interceptor
自定义拦截器import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.stereotype.Component;import org.springframework.web.servlet.HandlerI...
2020-01-16 11:40:43
361
原创 springboot集成rabbitmq
application.properties:#RabbitMQ配置spring.rabbitmq.host=154.8.231.85#spring.rabbitmq.host=169.254.210.241spring.rabbitmq.port=5672spring.rabbitmq.username=adminspring.rabbitmq.password=admin# ...
2019-12-31 13:17:29
583
原创 springboot 自定义注解开发
适用场景: 同一个实体类(User)在多个地方用到,但是属性password只能设置为符合指定规则的字符,此时我们有pc和app端两处入口可以维护user的这个attribute,假设两处入口走不同的业务逻辑,我们在没处logic都需要对password进行check,万一哪天这个role修改了,我们对使用logic的地方也要进行单一修改,费时容易修改不全。这种情况下我们可以选择...
2019-12-26 13:25:46
845
原创 Springboot2 自定义异常处理
开发过程中由于出现异常时想要返返回指定类型的json串,springboot自带的异常处理无法满足需求,自己封装异常处理类进行指定的异常处理。import java.util.HashMap;import java.util.Map;import org.springframework.http.HttpStatus;import org.springframe...
2019-12-25 09:26:05
389
原创 常用mysql函数
转自https://www.jb51.net/article/135803.htmMysql作为一款开元的免费关系型数据库,用户基础非常庞大,本文列出了MYSQL常用日期函数与日期转换格式化函数Mysql作为一款开元的免费关系型数据库,用户基础非常庞大,本文列出了MYSQL常用日期函数与日期转换格式化函数1、DAYOFWEEK(date)SELECT DAYOFWEEK(‘201...
2019-12-06 13:32:56
302
原创 微信公众号配置后台接入
微信公众号服务器配置启用,如果接入controller未配置requestmappint则可不填最末尾的“/”,若配置requestmapping则填方法名配置微信公众号回调地址,精确到项目名即可,使用微信分享等功能使用,未配置移动端分享功能不可用,PC端分享可正常使用下载认证文件,放到指定位置,配置域名,精确到具体项目,配置成功后微信接入我们的后台才可以正常运行...
2019-11-14 23:32:50
961
原创 java实现短信验证码发送(架子是springboot 服务平台选择腾讯云短信服务)
业务需求:公司扩展新业务,新增短信验证码提醒服务,负责功能模块完善暂时只研究了腾讯短信服务的发送(看api谁都能copy出来),短信状态回执(也挺简单,只是自己想复杂了),短信回复回执(暂时没弄明白欢迎大家指点)2019年8月29日16:56:06注册一个腾讯云账号(具体就不说了),找到云产品---云通信---短信进入短信功能页点击添加应用,填写信息添加成功...
2019-09-18 14:23:20
1551
原创 Springboot环境下mybatis配置多数据源配置
mybatis多数据源配置(本文示例为两个),方便实现数据库的读写分离,分库分表功能本文基于springboot2进行的配置,如版本为springboot1系列则需修改yml的配置(在文末附带)mybatis实现多数据源的主要逻辑是:将这两个数据源分别注入Spring容易中,通过mybatis的配置为aop事务管理器和mybatis手动指定一个明确的数据源;通过threadpool将数据...
2019-09-04 18:06:53
434
原创 java生成图片验证码
2019年8月29日17:52:34 public class CodeUtil { private static int width = 90;// 定义图片的width private static int height = 15;// 定义图片的height private static int codeCount = 6;// 定义图片上显示验证码的个...
2019-09-03 09:39:11
439
1
原创 linux中为文件赋读写权限
文件夹赋权限chmod -w文件名只读文件保存:w !sudo tee %防火墙命令开启防火墙,1,启动firewall:systemctl start firewalld.service2,设置开机自启:systemctl enable firewalld.service3,重启防火墙:systemctl restart firewa...
2019-08-30 16:22:40
1366
原创 Mariadb安装及主从搭建,基于centos7
安装//移除自带的mariadbyum -y remove mari*//重新安装yum install -y mariadbyum -y install mariadb mariadb-server//替换配置文件cp /usr/share/mysql/my-huge.cnf /etc/my.cnf//配置yum源//备份mv *.repo re...
2019-08-29 10:22:22
168
原创 mariadb主从搭建
复制mysql配置文件到etc下 cp/usr/share/mysql/my-huge.cnf /etc/my.cnf修改配置文件,设置数据库不区分大小写【mysqld下添加】lower_case_table_name=1启动mariadbsystemctl start mariadb设置开机启动systemctl enable mariadb查看...
2019-08-29 10:22:06
199
原创 Springboot 整合mybatis,实现多数据读写分离分库分表
mybatis多数据源配置(本文示例为两个),方便实现数据库的读写分离,分库分表功能 本文基于springboot2进行的配置,如版本为springboot1系列则需修改yml的配置(在文末附带)mybatis实现多数据源的主要逻辑是:将这两个数据源分别注入Spring容易中,通过mybatis的配置为aop事务管理器和mybatis手动指定一个明确的数据源;通过threa...
2019-08-23 17:44:37
1056
原创 git的简单操作指令
个人总结的git简单操作$ git config --global user.name “name”$ git config --global user.email “email”$ git config user.name #查询用户名$ git config user.email #查询邮箱$ git status #查看文件夹是否更新$ git init #初始化文件夹$...
2019-06-12 23:22:33
116
原创 Spring中yml多环境配置
使用yml执行多环境的配置spring:profiles:active:- devspring:profiles: dev #开发环境application:name: springcloud-config-devspring:profiles: test #测试环境application:name: springcloud-config-test保存为utf-8...
2019-06-12 23:19:42
1112
转载 推荐好用的linux系统(manjaro)
人生苦短,我用manjaro优点:仿window10系统,生态超级棒,安装简单,支持绝大多数数window应用缺点:小众,网上论坛资料教少,遇到问题需要自己去琢磨,费事费时(建议:装Manjaro GNOME版)下载镜像https://www.manjaro.cn/category/download-manjaro下载,个人喜欢gnome版制作镜像(建议使用rufus)安装bois启...
2019-06-06 23:23:58
11213
1
原创 org.gjt.mm.mysql.Driver和com.mysql.jdbc.Driver的概述
org.gjt.mm.mysql.Driver和com.mysql.jdbc.Driver同为数据库驱动类的概述org.gjt.mm.mysql.Driver是早期的驱动名称,后来就改名为com.mysql.jdbc.Driver,现在一般都推荐使用 com.mysql.jdbc.Driver。在最新版本的mysql jdbc驱动中,为了保持对老版本的兼容,仍然保留了org.gjt.mm.my...
2019-05-29 09:30:47
1975
原创 SpringCloud集成lombox(eclipes工具)
Lombox可以通过注解的方式帮助我们快速创建setget方法,无需我们自己去操作。同时也不会由于参数的改变导致修改set,get方法,降低工作量下载lombox.jar 官网地址:https://projectlombok.org/download方式一:将jar包copy到eclipse安装目录java -jar ${path}\lombok.jar弹出如下试图点击speci...
2019-05-28 11:48:50
125
原创 Spring三种注入方式
@resource @autowired @inject 三种注入方式的区别@Resource : javaEE中支持,需要导入javax.annotation实现注@Autowired : Spring支持@Inject : JSR330 (Dependency Injection for Java)中的规范,需要导入javax.inject.Inject;实现注入三种注入方式的使用...
2019-05-27 10:13:49
317
原创 Spring项目包变文件夹
SpirngMvc项目中新建package(包)显示为floder(文件夹)首先选择要更新的SourceFolder项目,点击Build-path,选择configure Buid Path ,选中Source选择excluded,点击remove移除所有选项选择excluded,选择edit,点击add,输入要显示为包类型的文件夹名称,点击确认,设置显示类型为包类型设置包类型为文件夹...
2019-04-29 18:45:02
988
原创 微信公众号自定义菜单设置管理
微信开发时候如果按照接口调试工具进行自定义菜单的设置非常麻烦而且容易出错,尤其是使用测试号进行测试的时候,由于测试后没有自定义菜单的设置功能,我们可以自己封装一个自定义菜单的方法对其进行自定义菜单的设置。亲测可用的代码主方法import entity.menu.Button;import entity.menu.ClickButton;import entity.menu.PhotoOr...
2019-04-26 14:42:52
2330
原创 微信公众号开发之获取用户信息
微信获取用户信息的方式有两种,静默授权(无需用户同意)和非静默授权(需要用户“ 手动点击 ”拉取授权,可以用户无需关注公众号即可获取用户信息)整体的代码请查看最后,前边为原理介绍首先将appid发送到指定连接,设置redirecturi回调地址 //静默授权,只获取openid snsapi_base; 非静默授权, 获取用户详细信息 snsapi_userinfo String...
2019-04-22 09:02:38
529
原创 获取access_token
access_token用户执行微信公众号操作的凭证将appid和APPSECRET拼接到指定的url发送给微信服务器private static final String URL = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRE...
2019-04-22 09:02:24
304
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人