自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 一次成功的mybatis-plus级联查询

mapper:public interface LawTypeInfoMapper extends BaseMapper<LawTypeInfo> { LawTypeInfoVO selectTypeTree(@Param("id")Integer id);}bean:@Data@EqualsAndHashCode(callSuper = false)public class LawTypeInfoVO implements Serializable { @A

2021-11-24 10:46:02 2780

原创 多节点服务器定时任务重复的一种解决方式

乐观锁和悲观锁悲观锁:总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它释放锁。乐观锁:总是假设最好的情况,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据。 锁实现新建表:CREATE TABLE `schedule_execute_info` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '自增主键..

2021-11-10 15:37:16 4794 2

原创 java生成图片水印

由于业务需求,文字水印无法满足,需要把文字转化成图片,并加在pdf中生成图片水印示例:package com.chinaunicom.api.utils;import javax.imageio.ImageIO;import java.awt.*;import java.awt.image.BufferedImage;import java.io.File;/** * @Author zhangyy * @Date 2021/8/23 19:04 */public class

2021-08-24 11:00:15 820 1

原创 java去内容中的富文本

@Resource和@Autowired的区别**共同点:**两者都可以写在字段和setter方法上。两者如果都写在字段上,那么就不需要再写setter方法。不同点:1.@Autowired是由org.springframework.beans.factory.annotation.Autowired提供,换句话说就是由Spring提供;@Resource是由javax.annotation.Resource提供,即J2EE提供,需要JDK1.6及以上2.@Autowired只按照byType 注.

2021-08-11 11:34:39 294

原创 mysql查询一个库或一张表的数据量大小

找到该库,在该库中执行脚本select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables where table_schema='djzk';SELECT CONCAT(ROUND(SUM(DATA_LENGTH/1024/1024),2),'MB') FROM information_schema.tables WHERE table_schema='djzk' AND table_name='upload_f.

2021-08-09 14:06:35 373

原创 springboot中使用Caffeine

Caffeine是基于JDK8的高性能本地缓存库,有点有很多:自动把数据加载到本地缓存中,并且可以配置异步;基于数量剔除策略;基于失效时间剔除策略,这个时间是从最后一次访问或者写入算起;异步刷新;Key会被包装成Weak引用;Value会被包装成Weak或者Soft引用,从而能被GC掉,而不至于内存泄漏;数据剔除提醒;写入广播机制;缓存访问可以统计;在springboot项目中使用步骤如下:引入依赖包<dependency> <gr..

2021-07-21 14:53:19 2054

原创 一次完整的http请求过程

一次完整的http(超文本传输协议)请求过程会经历以下几个过程:域名解析把一个域名解析成可用的ip地址和端口号,Windows具体解析步骤如下:1.搜索浏览器自身DNS缓存,如果没有过期,则解析结束。2.如果浏览器自身的缓存里面没有找到,那么浏览器会搜索系统自身的DNS缓存3.如果浏览器没有解析出域名,则看电脑的hosts文件,看是否在此处配置了域名。C:\Windows\System32\drivers\etc\hosts4.如果无,则远程发起DNS域名解析请求。发起TCP3此握手拿到

2021-07-12 16:40:56 14054 3

原创 使用Easypoi导入和导出exelce

<dependency> <groupId>cn.afterturn</groupId> <artifactId>easypoi-base</artifactId> <version>3.2.0</version> </dependency> <dependency> &lt

2021-07-07 16:21:41 1417

原创 SSH连接

加密方式对称加密:对称加密:加密解密使用同一个密钥,即消息发送方与接收方需要协商一个共同的密钥用于消息传输中加解密。优势:加解密效率高,对计算机要求更低。劣势: 需要有安全的渠道来协商密钥;无法验证消息发送者的身份;密钥数目增加后管理相当困难(当增加新的消息接收方就需要多一个密钥,而且发送方也需要针对不同人用不同密钥)非对称加密:非对称加密:产生一对密钥,分公钥与私钥,如果用公钥加密,则对应的私钥才能解密,如果私钥加密,则对应的公钥才能解密。公钥可以公开传递。消息发送方用接收方的公钥..

2021-07-05 14:19:06 326

原创 对法只给了wsdl和方法名调用webservice服务

webservice介绍WebService是一种跨编程语言和跨操作系统平台的远程调用技术。跨编程语言和跨操作系统平台:也就是说Asp.net开发的WebService用java代码调用完全没问题,和操作系统也没有关系。远程调用技术:也就是说网络是通的就能用。优缺点优点:1.跨语言和跨操作系统:因为WevService是通过Xml语言进行描述的,XML主要的优点在于它既与平台无关,又与厂商无关。2.远程调用技术:不用担心防火墙的问题。。。缺点:1.服务端接口方为webservic.

2021-05-21 10:29:05 1963 1

原创 GROUP BY的用法示例

GROUP表示分组,BY后面写字段名,就表示根据哪个字段进行分组,如果有用Excel比较多的话,GROUP BY比较类似Excel里面的透视表。GROUP BY必须得配合聚合函数来用,分组之后你可以计数(COUNT),求和(SUM),求平均数(AVG)等新建学校用户表:CREATE TABLE `users` ( `id` bigint(15) NOT NULL AUTO_INCREMENT COMMENT '主键id ', `school_id` bigint(15) NOT NULL C.

2021-04-12 11:33:13 28019

原创 java如何项目部署到远程linux

在本地安装虚拟机模仿远程linux: 首先使用winSCP连接虚拟机登陆虚拟机,使用ifconfig命令查看虚拟机ip再用winSCP连接虚拟机进入虚拟机后可以先熟悉linux目录结构:/bin ###二进制可执行文件,系统常规命令/boot ###启动目录,存放系统自动启动文件,内核,初始化程序/dev ###系统设备管理文件/etc ###大多数系统配置文件存放路径/home ###普通用户家目录/lib ###函数库/lib64 ###64位函数库/media ##

2021-03-18 11:12:07 372

原创 设计模式六大原则之单一性原则

单一性原则一般指设计接口时,接口的功能单一不可分。目的还是提高接口的通用性,做到实现一个接口,其方法尽量都可以用的到。比如有个需求:猫可以吃饭,睡觉,抓老鼠我们定义一个接口实现来实现其方法:定义了其接口之后,我们实现它这样我们便实现了这个功能但是,如果是一条狗了?狗可以吃饭睡觉,但是不可以抓老鼠,所以我们要确定狗的行为的时候是需要重新写个接口,但是狗也有吃饭和睡觉的公用功能,如果单独写的话会造成代码大量冗余。而且ICanDo接口的扩展性也会变得比较弱。所以我们可以把ICanDo接口拆分成两.

2020-12-23 14:46:49 2501

原创 jetty启动本地项目

idea的常用使用:

2020-11-02 14:45:48 348

原创 Springboot+nginx实现负载均衡

负载均衡其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。其实现如下如果只有一台web服务器,当访问量特别大的时候,难免会造成极差的用户体验。但是在访问web之前加上nginx代理服务器,然后由nginx分配访问量到不同的web服务器,就会大大降低服务器的压力。而且,如果一台服务器挂了,还会有其他服务器继续工作,方便后期维护。 springboot+nginx实现负载均衡:假如tomcat的端口号是8080.

2020-10-28 20:49:17 1053

原创 java-IDEA中搭建spring框架

首先新建一个maven项目然后再pom.xml中导入spring所需要的依赖<dependencies> <!--注入spring所需要的依赖--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version&

2020-06-17 10:52:55 1486

原创 java-微服务-HSF

HSF是一种分布式远程服务框架,也相当于一个复杂的远程调用组件-RPC组件。传统的远程服务请求和响应方式,是由Client发起request请求,然后Server响应response。但是这种方式如果请求两迅速增加,你会发现http的传输效率下降了,因为http的过程是:建立连接、发送请求信息、发送响应信息、关闭连接,看到这个过程首先想优化的就是能不能不要每次都去建立连接关闭连接,因为数据上报是个持续的过程;紧接着去研究http头,发现很多协议用不到,繁杂,白白增加了消息体。远程过程调用协议R..

2020-06-16 10:27:37 1629

原创 java-微服务-dubbo

在微服务中用户管理、用户角色、电子商务购物车、搜索引擎、社交媒体登录等模块都是相互独立的,这意味着它们可以采用不同的编程语言和数据存储。其实现了面向服务的架构机制。微服务中,API 网关是介于客户端和服务器端之间的中间层,所有的外部请求都会先经过 API 网关这一层。也就是说,API 的实现方面更多的考虑业务逻辑,而安全、性能、监控可以交由 API 网关来做,这样既提高业务灵活性又不缺安全性一,基于dubbo的微服务...

2020-06-12 09:43:45 1518 1

原创 剑指offer--单例模式

单例模式分为懒汉式和饿汉式。所谓单例模式,就是构造器私有化,对外界提供唯一的一份实例。懒汉式)(线程不安全)懒汉式在程序需要运行的时候再加载,这样保证程序内存空间不会被浪费public class Test { public static void main(String [] args){ person p=person.getInstance(); pe...

2020-02-19 13:30:34 163

原创 计算机网络003:网络链路层

数据链路层使用信道有两种方式1,点对点信道2,广播信道

2019-08-23 11:41:49 276

原创 计算机网络002:物理层

物理层考虑的是怎样才能连接各种计算机的传输媒体上的传输数据比特流,而不是指具体的传输媒体。 数据通信系统模型:可分为三部分:源系统(发送端),传输系统(传输网络),目的系统(接收端)...

2019-08-12 11:39:22 279

原创 设计模式004:装饰器设计模式&代理模式

装饰器设计模式:给一个对象增加一些新的功能,仅仅是增加功能,而对象原本的功能是不变的。一般我们把装饰对象和装饰器统一接口方便管理。一般是先执行装饰器,再执行原类,这样不管装饰器有多少个,都适用。装饰器模式功能:1,扩展类的功能2,动态的为一个类增加或者撤销功能。package com.z.momder;interface Sourceable{ public void me...

2019-07-29 10:50:50 144

原创 计算机网络001:网络概述

网络:网络由若干节点和连接这些节点的链路组成互联网:网络是把徐多计算机连接起来,而互联网则把许多网络连接在一起,因特网是世界上最大的互联网因特网发展的三个阶段:1,第一阶段:从单个网络ARPANET向互联网发展2,第二阶段:逐级形成三级结构的因特网,主干网,地区网,校园网3,第三阶段:逐渐形成了多层次ISP结构的因特网(缴费给ISP,就可以从ISP获得所需IP地址,并通过该ISP接入因...

2019-07-28 15:24:26 836

原创 设计模式003:适配器

适配器模式是结构型设计模式的一种。适配器可以分为类适配器,对象适配器,接口适配(部分实现接口里面的方法)对象适配器有衍生出好多设计模式:装饰模式,代理模式,外观模式,享元模式,组合模式,桥接模式桥接模式有衍生出策略模式 类适配器:如果一个类实现了一个接口中的某个方法,但是它还想实现另外一个接口中没有的方法,这时候,如果给接口直接加方法,让类去实现,或者让类自己重写一个方法都会违背开闭原则...

2019-07-26 11:28:27 129

原创 设计模式002;建造者模式

建造者模式也可以说是工厂模式的扩展,工厂模式一次只能创建一个对象的实例,而而建造者模式一次可以创建多个对象的实例来使用。首先想到封装抽象,把多个对象的实例封装到一个ArrayList中。package com.z.builder;//抽象方法,建造者abstract class Builder{ abstract void builderA(); abstract void bu...

2019-07-26 10:19:14 92

原创 设计模式001:工厂模式

多态的实现方式静态多态:方法重载动态多态:接口(无数据多态),继承(有数据多态)(这才是真正的多态)写程序的思想是:面向接口,依赖反转(可复用性)以保持高内聚,低耦合。一般有接口定义抽象方法,然后抽象类implements接口,抽象类可以写抽象数据,然后再由它的派生类来extend它,来实现具体的功能。 设计模式:设计模式可以分成三种:创建型:单例模式、工厂方法模式、抽象工厂模式...

2019-07-25 11:25:43 137

原创 java算法003:排序

排序方式 直接插入排序:基本思想是:把n个待排序的元素看成为一个有序表和一个无序表。开始时有序表中只包含1个元素,无序表中包含有n-1个元素,排序过程中每次从无序表中取出第一个元素,将它插入到有序表中的适当位置,使之成为新的有序表,重复n-1次可完成排序过程。假设被排序的数列中有N个数。遍历一趟的时间复杂度是O(N),需要遍历多少次呢?N-1!因此,直接插入排序的时间复杂度是O(N2...

2019-07-21 22:29:09 107

原创 java算法002:字符串

字符串:字符串可以放到数组中,就是在内存中先声明一个连续的内存空间,然后再把字符串放进去,一个指针指在这个数组上,在此两个数组字符串的内存地址不一样,所以s1!=s2。字符串也可以放在指针上,此时不能改变他的值,他就是一个常量字符串,是只读的。此时指针能动,多个指针可以指到这个字符串上。s1==s2字符串的统计。...

2019-07-21 10:24:35 186

原创 java算法001:魔方矩阵,蛇形矩阵,螺旋矩阵

题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。

2019-07-18 15:57:31 890

原创 算法007:求s=a+aa+aaa+aaaa+aa...a的值

题目:求s=a+aa+aaa+aaaa+aa…a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。输出结果的形式如:2+22+222=246;...

2019-07-17 09:23:37 429

原创 算法006:统计字符串中不同字符的个数

题目:输入一行字符,分别统计出其英文字母、空格、数字和其它字符的个数1、获取一行字符串,nextLine()2、把字符串的每一个字符赋值到一个数值中3、对比每一个数值在ASK码的范围,就可以确定它符号的类别4、char字符ASK码的范围(1)数字0到9: 48~57(2)字母A到Z:65到90a到z:97到122(3)空格是32package suanfa;imp...

2019-07-16 20:59:21 1814

原创 算法005:两种方法求最大公约数和最小公倍数

求最小公倍数:第一种方式是用传统的方式直接求最小公倍数,在两个数的的最大值到两个数的乘积之间取余。都取余为0的就是最小公倍数。package suanfa;import java.util.Scanner;public class Test { public static void main(String[] args) { Scanner sc=new Scanner(Syst...

2019-07-16 16:36:49 191

原创 算法004:将一个数因式分解&三目运算

题目:将一个正整数分解质因数。例如:输入90,打印出90=233*5。程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n,重复执行第一步。(3)如果n不能被k整除,则用k+1作为k的值,重...

2019-07-16 15:49:09 751

原创 算法003:计算水仙花数

题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方package suanfa;public class Demo { public static void main(String[] args) { int count =0; for (int i = 1...

2019-07-16 14:13:09 189

原创 算法002:判断素数个数

题目:判断101-200之间有多少个素数,并输出所有素数 * 素数是:只能被1或本身整除的数,如:3,5,7,11,131…*判断素数的方法:用一个数分别去除2到sqrt(这个数),*其实用这个数分别去除2到他本身少1的数也可以,但是运算时间增加了*如果能被整除,则表明此数不是素数,反之是素数package suanfa;import java.util.HashSet;i...

2019-07-16 11:37:48 616

原创 算法001:计算生兔子数量

古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少首先先分析:先用传统的方式做出来://大的每一个月生一对,小的三个月后每一个月生一对/分析:月 对* 1 1* 2 1* 3 2* 4 3* 5 5* ...

2019-07-16 10:00:23 862

原创 jQuery006:jQuery动画效果

jQuery动画框架的一些通用特性每段动画都有时长,用来指定动画效果持续多长时间可以使用毫秒数或字符串来指定时长fast表示200msslow表示600ms如果指定的字符串时长jQuery无法识别,默认时长为400ms每个动画函数都可以接受第二个参数:回调函数,该函数会在动画执行完成之后自动执行jQuery动画是”队列化”的,如果一个元素已经在动画过程中,再调用一个动画方法时,新...

2019-06-24 17:51:10 446

原创 jQuery005:jQuery事件处理程序的高级注册,对象直接量Json

bind绑定:添加事件的另外一种api.和以前的 click没有表现出太大的区别利用bind()方法,可以为多个事件注册同一个事件处理程序.当鼠标进入或离开,都会触发绑定的f,也就是按钮的值会变成当前时间当按下鼠标触发f,当松开就触发f1,此时的this就代表按钮 解除绑定事件此时会线弹出调用了,因为一旦刷新就进入了这个函数,之后会弹出解除了,一旦解除绑定,它绑定的点击事件就...

2019-06-24 15:43:49 131

原创 jQuery004:jQuery的事件处理

bind()方法也可以用来给jQuery对象注册事件处理程序 利用bind()方法,可以为多个事件注册同一个事件处理程序 bind()的最后一个特性是,第一个参数可以是对象,该对象把事件名映射到处理程序函数 事件处理Click:鼠标点击事件Dblclick: 鼠标双击事件Mousedown mouseup:鼠标按下和松开事件Mouseover, mouseout:鼠标进入和离开...

2019-06-23 03:55:24 2016

原创 jQuery003:jQuery操作DOM

DOM(Document Object Model 文档对象模型),一种与浏览器,平台,语言无关的接口。使用该接口可以轻松地访问页面中的所有标准组件 创建节点:两种方式创建:内部插入节点append()appendTo()prepend()prependTo()外部插入节点after()before()insertAfter()insertBefore()第一种...

2019-06-21 22:47:40 162

空空如也

空空如也

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

TA关注的人

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