- 博客(42)
- 资源 (2)
- 收藏
- 关注
原创 数据结构与算法分析(原书第3版)--- 算法分析
数据结构与算法分析(原书第3版)— 算法分析1、最大子序列和问题求解 给定整数A1A_1A1,A2A_2A2,A3A_3A3,。。。,ANA_NAN,求解∑k=ijAk\sum_{k=i}^j A_k∑k=ijAk的最大值。 例如:对于输入-2,11,4,13,-5,-2,答案为20(从A2A_2A2到A4A_4A4)求
2020-10-24 10:11:28
605
原创 你会使用Jmeter压力测试和jvisualvm服务性能监控吗?
文章目录Jmeter压力测试性能指标Jmete下载与安装Jmete下载Jmeter安装Jmeter使用添加线程组添加取样器HTTP请求添加监听器察看结果树汇总报告聚合报告汇总图注意事项使用jvisualvm进行服务性能监控启动jvisualvmjvisualvm的作用安装插件查看垃圾回收Jmeter压力测试 压力测试考察当前软硬环境下系统所能承受的最大负荷并帮助找到系统瓶颈所在,压测都是为了系统在线上的处理能力和稳定性维持在一个标准范围内,做到心中有数。 使用压力测试,我们希望找到很多种用其他
2020-09-25 09:03:20
724
2
原创 你真的会使用命令模式吗?
文章目录Java设计模式之命令模式一、创建命令模式UML类图二、创建命令模式的步骤(1):创建命令接口Command(2):创建命令接收者LightReceiver(3):创建实现类LightOffCommand、LightOnCommand、NoCommand(4):创建命令操作者RemoteController使用Cient类来接受和执行命令执行结果Java设计模式之命令模式命令模式是一种数据驱动设计模式,它属于行为型模式,请求以命令的形式包裹在对象中,并传给调用对象,调用对象寻找可以处理该命令的
2020-07-21 16:38:56
381
原创 Java使用easyExcel操作Excel就是这么简单!
之前我们都是使用jxl或者poi操作Excel表格,我们本次使用阿里开源的easyExcel对Excel实现上传和下载功能。
2020-07-19 17:28:26
2539
原创 SpringBoot2.3.0拥抱Gradle,你会使用gradle多模块打包成一个jar包吗?
一、使用gradle将多个module打包成一个可执行的jar包,解决多模块打成jar包没有主启动清单的错误二、解决jar包使用java -jar xxxxx.jar启动时没有主清单属性错误1、项目结构2、父工程gradle配置allprojects{ apply plugin:'java' group = 'com.example' version = '0.0.1-SNAPSHOT' sourceCompatibility = '1.8' reposi
2020-06-20 17:02:30
1534
原创 SpringBoot2.3.0拥抱Gradle,你会多模块打包(module)成一个jar包吗?
一、使用gradle将多个module打包成一个可执行的jar包,解决多模块打成jar包没有主启动清单的错误二、解决jar包使用java -jar xxxxx.jar启动时没有主清单属性错误1、项目结构2、父工程gradle配置allprojects{ apply plugin:'java' group = 'com.example' version = '0.0.1-SNAPSHOT' sourceCompatibility = '1.8' reposi
2020-06-20 15:34:02
3578
原创 大厂常见高并发面试题合集
1、谈谈你对volatile的理解? volatile是Java虚拟机提供的轻量级的同步机制(详见JMM)保证可见性不保证原子性静止指令重排2、JMM(Java内存模型)Java内存模型本身是一种抽象的概念并不真实存在,他描述的是一组规则或者规范,通过这组规范定义了程序中各个变量(包括实例字段、静态字段和构成数组对象的元素)的访问方式。JMM关于同步的规定:线程解锁前,必须把共享内存变量的值刷新回主内存线程加锁前,必须读取主内存的最新值到自己的工作内存加锁解锁是同一把锁由于
2020-05-26 16:56:36
730
原创 MySQL必知必会之MySQL命令
文章目录1、查看数据库列表2、选择数据库3、查看数据库表列表4、查看数据库表字段信息5、查看MySQL服务器状态信息6、查看创建数据库的MySQL语句7、查看创建数据库表的MySQL语句8、查看显示授权用户的安全权限9、查看服务器错误或者警告信息10、过滤数据查找11、使用正则表达式过进行搜索12、使用文本处理函数13、日期和时间处理函数14、MySQL聚集函数15、MySQL拼接字段函数CONCAT(str1,str2,...)16、创建表MySQL语句17、创建视图18、通过视图搜索数据19、创建存储过
2020-05-26 16:32:39
202
原创 Java实现将两张图片合成一张图片,并且实现批量下载
import javax.imageio.ImageIO;import java.awt.*;import java.awt.image.BufferedImage;import java.io.File;import java.io.IOException;import java.net.URL;public class ImageMerging { private Font font = new Font("微软雅黑", Font.PLAIN, 46); // 添加字体的属性设置
2020-05-09 09:55:19
924
原创 高并发面试题合集,持续更新
1、谈谈你对volatile的理解? volatile是Java虚拟机提供的轻量级的同步机制保证可见性不保证原子性静止指令重排2、JMM(Java内存模型)Java内存模型本身是一种抽象的概念并不真实存在,他描述的是一组规则或者规范,通过这组规范定义了程序中各个变量(包括实例字段、静态字段和构成数组对象的元素)的访问方式。JMM关于同步的规定:线程解锁前,必须把共享内存变...
2020-04-30 17:51:52
2804
原创 尚硅谷周阳老师2020年 SpringCloud(H版和Alibaba) 视频教程学习时整理的笔记记录和代码
尚硅谷周洋老师SpringCloud H版 SpringCloud Alibaba 2020最新版全代码和学习笔记代码码云地址:https://gitee.com/yangluyao97/SpringCloud代码GitHub地址:https://github.com/815090488/springcloud2020...
2020-04-28 08:42:09
2683
3
原创 在Linux(Centos7)环境配置Nacos集群
在Linux(Centos7)环境配置Nacos集群第一步、在github上面下载Nacos链接:https://github.com/alibaba/nacos/tags第二步、下载Nginx链接:http://nginx.org/en/download.html安装参考:https://blog.csdn.net/qq_43813937/article/details/1023692...
2020-04-21 14:44:26
825
转载 mysql数据库的主从同步,实现读写分离
mysql数据库的主从同步,实现读写分离 前言1 分别在两台centos 7系统上安装mysql 5.72 master主服务器的配置2.1 配置文件my.cnf的修改2.2 创建从服务器的用户和权限2.3 重启mysql服务2.4 查看主服务器状态3 slave从服务器...
2020-03-23 09:28:22
212
原创 CentOs7系统下安装MySQL5.7版本
一、下载安装MySQL1、下载wgetyum install wget2、通过wget命令在MySQL官方网站下载repo配置文件。wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm3、进行repo安装rpm -ivh mysql57-community-release-el7-9.no...
2020-03-20 09:38:41
437
原创 Mybatis源码学习(二)Mybatis框架执行流程(24000字)详解
文章目录一、什么是MyBatis?二、Mybatis框架执行流程概括三、MyBatis框架详解(1)搭建MyBatis源码阅读环境(2)MyBatis是如何从 XML 中构建 SqlSessionFactory实例对象?(3)MyBatis是如何从 SqlSessionFactory 中获取 SqlSession对象?(4)MyBatis是如何执行SQL语句?一、什么是MyBatis?MyBa...
2020-03-01 19:41:01
340
原创 Mybatis源码学习(一)复习JDBC
文章目录一、JDBC概念二、 JDBC架构三、JDBC连接步骤四、完整实例添加数据删除数据修改数据查找数据五、JDBCUtil创建一个 db.properties文件JDBCUtil六、JDBC的SQL注入问题七、SQL注入问题解决方案一、JDBC概念JDBC(Java Database Connectivity)Java数据库连接,是Java语言中规范客户端程序来访问数据库的应用程序接口,提...
2020-02-28 15:37:19
369
原创 Spring Boot 配置线程池详解,并使用@Async,执行异步方法
Spring Boot 配置线程池详解线程池是多线程的处理机制,线程池一般用于需要大量线程完成任务,并且完成时间较短时使用,大量用于并发框架和异步执行任务。一、配置线程池的优势降低资源消耗,通过利用已创建的线程降低线程创建和销毁造成的消耗有利于线程的可控性,如果线程无休止创建,会导致内存耗尽。提高系统响应速度,通过使用已存在的线程,不需要等待新线程的创建就可以立即执行当前任务。二、...
2020-02-27 15:00:14
10236
原创 Java设计模式之桥接模式
Java设计模式之桥接模式桥接模式属于结构型设计模式,桥接模式是将实现与抽象放在两个独立的两个类中,使抽象与实现可以独立变化,而不互相影响。一、创建桥接模式UML类图二、创建桥接模式的步骤(1):创建桥接接口Brand(2):创建桥接接口的实现类MeiZu和HuaWei(3):使用Brand接口创建抽象类Phone(4):创建实现Phone接口的实体类(1):创建桥接接口Bran...
2020-02-25 20:25:00
182
原创 Java设计模式之代理模式
Java设计模式之代理模式代理模式属于结构型设计模式,代理模式是为一个类提供一个替身,以控制对这个类的访问,通过代理类访问被代理类。代理模式的三种形式(1):静态代理(2):动态代理(JDK代理、接口代理)(3):Cglib代理(动态代理,可以在内存中动态的创建对象)创建静态代理的步骤(1):创建一个operator 接口和实现operator 接口的实体类ChinaTelecom...
2020-02-21 11:58:14
511
原创 Java设计模式之适配器模式
Java设计模式之适配器模式适配器模式属于结构型模式,适配器模式是将某个类的接口转换成客户端期望的另一个接口表示,主要目的是解决兼容性,让原本因为两个接口不匹配而不能一起工作的两个类可以协同工作。适配器模式的工作原理(1):将一个类的接口转换成另一个接口,让两个不兼容的接口可以相互兼容。(2):从客户端看不到被适配者。(3):用户调用适配器转化出来的接口,适配器调用被适配者的接口。(4...
2020-02-20 16:07:36
152
原创 Java设计模式之原型模式
Java设计模式之原型模式原型模式属于创建型模式,原型模式用于直接创建一个对象代价比较大时使用,通过拷贝原型创建新的对象。一般情况,原型模式和工厂模式一起出现,很少单独出现。原型模式的两种实现(1):实现Cloneable,重写clone()方法(浅拷贝)(2):实现Serializable ,读取二进制流(深拷贝)浅拷贝和深拷贝的基本介绍浅拷贝:对于数据类型是基本数据类型的成员变...
2020-02-19 23:54:45
141
原创 Java设计模式之建造者模式
Java设计模式之建造者模式建造者模式属于创建型设计模式,它是将复杂的对象抽象出来,使抽象过程的不同实现方法可以构造出不同的表现的对象。建造者模式是将一个简单地对象一步一步创建成一个复杂的对象。建造者模式的四个角色(1):产品角色:一个实体类,例如房子(House)(2):建造者角色:创建一个产品角色对象的接口,例如:房屋建造者(HouseBuilder)接口(3):具体建造者角色:实现...
2020-02-18 00:32:38
115
原创 Java设计模式之抽象工厂模式
Java设计模式之抽象工厂模式抽象工厂模式是对简单工厂模式的改进,将工厂抽象成两层,抽象工厂和具体实现类工厂,将单个工厂类变成工厂簇,有利于代码的维护和扩展。抽象工厂模式主要用于有多于一个的产品族,而系统只需要消费一个产品。实现抽象工厂模式的步骤(1):创建一个Clothing接口和Color接口(2):创建实现Clothing和Color的实体类(3):创建一个AbstractFact...
2020-02-17 20:04:01
283
原创 Java设计模式之简单工厂模式
Java设计模式之简单工厂模式工厂模式属于创建型设计模式,使用工厂模式时,不会对客户端暴露创建逻辑,通过一个共同的接口指向需要创建的对象,解决了接口选择的问题。在不同条件下创建不同实例的时候使用工厂模式实现简单工厂模式步骤(1):创建一个Coffee接口(2):创建实现Coffee的实体类(3):定义一个CoffeeFactory的工厂类创建coffee接口/** * @autho...
2020-02-17 18:10:12
104
原创 Java设计模式之单例模式
Java设计模式之单例模式单例设计模式是对于某个类在整个系统中只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法并且是静态方法。解决了一个全局使用的类频繁地创建和销毁。单列设计模式的七种方式饿汉式(静态常量,可能造成内存浪费)饿汉式(静态代码块,可能造成内存浪费)懒汉式(线程不安全)懒汉式(加入synchronized,线程安全,效率低)懒汉式(双重检查,加入synchr...
2020-02-16 13:42:16
113
原创 Java8新增时间类LocalDateTime、LocalDate、LocalTime,以及在Spring中作为参数入参
Java8新增时间类LocalDateTime、LocalDate、LocalTime,以及在Spring中作为参数入参线程安全以前我们习惯用的Date时间类是可变类,在多线程环境下操作时需要保证线程安全、而LocalDateTime、LocalDate、LocalTime类是不可变类,并且是线程安全的。在日期格式化选择上Date使用的SimpleDateFormat本身也是线程不安全的,而...
2020-02-15 08:29:40
2333
原创 Spring Boot 实现自定义注解 利用aop完成指定方法的处理
实现自定义注解 利用aop完成指定方法的处理构建一个web项目,pom文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...
2020-02-07 17:52:01
2099
原创 Spring Boot实现动态增加、删除、修改、停止定时任务
Spring Boot实现动态增加、删除、修改、停止定时任务创建定时任务实体类Cron@Datapublic class Cron { @TableId(type = IdType.AUTO) private Integer id; @TableField(value = "send_time") private String sendTime; ...
2020-02-05 16:17:22
5125
7
原创 注册免费域名教程(怎样免费注册域名)手把手教注册域名
注册免费域名教程(怎样免费注册域名)手把手教注册域名1、打开freenom网站2、输入一个自己想要的网址,点击检查可用性3、选择一个免费的域名点击选择,然后点击购物车完成4、freenom默认是3个月免费,可以调整为最长12个月免费时间,选择Use DNS 输入自己的云服务ip地址(后续也可以自己调整)5、点击Continue(继续)6、输入真实邮箱地址,然后点击Verify ...
2020-01-21 11:41:54
17970
原创 FastDfs文件服务器安装
FastDfs文件服务器安装官方FasDfs 的SDK地址https://github.com/happyfish100/fastdfs-client-javaFastDfs安装环境(CentOs7)第一步安装gcc环境yum install gcc-c++ -y安装libeventyum -y install libevent安装perl库yum install p...
2020-01-17 12:40:30
194
原创 Spring Boot Scheduling 动态修改定时任务的时间
Spring Boot Scheduling定时任务配置文件@Configuration@EnableSchedulingpublic class AutoSendSmsConfig implements SchedulingConfigurer { private static final String DEFAULT_CRON = "0 0 8 * * ? "; pr...
2020-01-15 11:53:09
1127
原创 Oracle VM VirtualBox CentOS7设置静态ip
Oracle VM VirtualBox CentOS7设置静态ip第一步查看虚拟机的网卡配置第二步创建虚拟机选择网络设置,将连接方式改成Host-Only第三步修改网卡配置文件先输入ip addr 查看网卡名称进入配置文件修改配置文件[root@localhost ~]# cd /etc/sysconfig/network-scripts/[root@localhost ne...
2020-01-11 13:19:23
1065
原创 Spring Boot Swagger 快速集成
Spring Boot Swagger 快速集成添加swagger依赖pom文件 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <vers...
2020-01-08 17:04:47
98
原创 SpringBoot JWT快速实现
SpringBoot JWT快速开发spring-boot-jwt 添加依赖 <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt</artifactId> <version>0.9.1</version>&l...
2020-01-08 14:59:17
169
原创 Spring Boot webSocket学习总结 快速搭建websocket
spring boot websocketConfiguration配置/** * * 配置WebSocket * 注释@EnableWebSocketMessageBroker开始使用STOMP协议来传输基于代理(message broker)的消息 */@Configuration@EnableWebSocketMessageBrokerpublic class WebSock...
2020-01-08 09:32:52
178
原创 spring boot中多个module打包成一个jar启动类
在启动类的module中添加spring-boot-maven-plugin插件,引入其他module即可打包成一个启动jar,运行parent的clean、compile、install、package即可
2019-11-14 09:04:25
3556
原创 Linux下Redis安装
Redis安装:官方网站下载:http://redis.io/downloadredis安装需要gcc支持,所以需要先安装gcc环境安装gcc[root@localhost ~]# yum -y install gcc automake autoconf libtool make 运行yum出现pid已被锁定时输入[root@localhost ~]# rm -f /var/run/y...
2019-10-08 11:02:15
75
原创 CentOs7系统安装Nginx,Linux
Nginx安装:nginx安装需要依赖gcc、pcre、openssl、zlib,所以在安装nginx之前先检查Linux环境添加依安装pcre[root@localhost ~]# yum install pcre pcre-devel安装zlib[root@localhost ~]# yum install zlib zlib-devel安装openssl[root@loc...
2019-10-08 10:44:55
189
原创 抛出异常throw、throws
抛出异常throw、throws抛出异常有三种形式:一种是throw,另一种是throws,还有一个系统自动手抛异常系统自动手抛异常throw:是语句抛出一个异常,自己手动抛出某些特定类型的异常throws:是方法可能出现的异常用于throws声明,交给上层调用,自身并不主动处理throw与throws的比较throws出现在方法头中,throw出现在方法体中throw是抛出...
2019-07-29 10:11:40
988
gradle将多模块打包成一个jar执行类demo
2020-06-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人