- 博客(62)
- 资源 (1)
- 收藏
- 关注
原创 POI导出excel
依赖<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>4.1.1</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <a
2022-04-24 15:51:51
439
原创 SpringBoot上传大文件
** 第一种方式:添加到启动类** @Bean public MultipartConfigElement multipartConfigElement(){ MultipartConfigFactory factory = new MultipartConfigFactory(); factory.setMaxFileSize(DataSize.ofMegabytes(100L)); factory.setMaxRequestSize(DataSize.ofGigabytes(1L));
2022-04-22 11:09:22
1681
原创 POI excel导出
POM 依赖3.10-FINAL工具类package com.picc.job.utils;import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject;import lombok.extern.slf4j.Slf4j;import org.apache.poi.hssf.usermodel.*;import org.apache.poi.hssf.util.HSSFColor;import
2021-05-27 15:30:17
216
原创 @Transactional不起作用
不起作用的情况1、@Transactional默认对运行时异常起作用解决方法:@Transactional(RollbackFor=Exception.class)2、方法嵌套接口中A、B两个方法,A无@Transactional标签,B有,通过A调用B方法,事务不起作用3、异常被try-catch,不会起作用解决方法:catch语句块中手动回滚TransactionAspectSupport.currentTransactionStatus().setRollbackOnly()4、只对p
2021-05-14 15:11:48
908
原创 线程池注入
@Configurationpublic class BeanConfig { /** Set the ThreadPoolExecutor's core pool size. */ private int corePoolSize = 3; /** Set the ThreadPoolExecutor's maximum pool size. */ private int maximumPoolSize = 3; /** Set the capacity for the ThreadPool
2021-03-02 17:18:04
429
原创 Dubbo+zookeeper简单实现服务注册与发现
Apache Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。Dubbo的基本概念服务提供者(Provider):暴露服务的服务提供方,服务提供者在启动时,向注册中心注册(register)自己提供的服务服务消费者(consumer):调用远程服务的服务消费方,服务消费者在启动时,向注册中心订阅(Subscribe)自己所需的服务,注册中心(Registry):注册中心返回服务提供者地址列表给消费者,
2021-03-02 01:25:31
1069
原创 代理模式
AOP底层,将一些与业务逻辑无关的共有操作分离1、静态代理public class ProxyPatternDemo { public static void main(String[] args) { Landlord landlord = new Landlord(); Agency agency = new Agency(landlord); agency.rent(); }}// 真实角色class Landlord implements Rent{ @Override
2021-02-28 17:34:56
112
原创 二分查找
在有序排列中查找目标值// 二分查找,在循环体里面查找class Solution { public int search(int[] nums, int target) { int left = 0; int right = nums.length - 1 ; while (left <= right) {// 如果没有目标值,最后一次left>right System.out.println(left + ";"
2021-02-28 13:12:29
117
原创 泛型
泛型的作用避免类型转换异常把运行期异常提升到编译期编译期异常是exception throw ;编译器异常程序必须处理:通过throws 或者 try catch运行期异常 runtimeexception 运行期异常程序不是必须处理泛型的使用定义泛型的类:泛型可以接受任意数据类型泛型在创建对象的时候确定含有泛型的方法:在调用方法是确定泛型的数据类型public void get(M m);public static void get(M m);静态方法不建议创建对象使用含
2021-02-28 01:00:34
333
2
原创 TCP三次握手四次挥手简单介绍
TCP(Transmission Control Protocol)协议属于传输层的协议,是一种面向连接、确保数据在端到端间可靠传输的协议。TCP的FLAG位由6个bit组成,分别代表ACK(确认信号),SYN(同步信号)、FIN(关闭连接信号)、URG、PSH、RST 置1表示有效TCP建立连接的三个步骤:A机器:服务器端;B机器:客户端A机器发送一个数据包并将SYN置1,表示希望创建连接,数据包中序列号假设是XB机器接收到A机器的信号,通过SYN判断这是一个建立连接的请求,发送一个响应包给A
2021-02-27 12:56:06
143
原创 单例模式
1、饿汉式public class Hungry { // 私有化构造方法 private Hungry () {} // 初始化对象 private static Hungry hungry = new Hungry(); // 公开的获取对象的方法 public static Hungry getInstance() { return hungry; }}2、懒汉式2.1 单线程版本多线程不安全原因?多线程情况下,多个线程同时执行到 if(lazyMan ==null)语
2021-02-27 02:46:48
204
原创 1052. 爱生气的书店老板
今天,书店老板有一家店打算试营业 customers.length 分钟。每分钟都有一些顾客(customers[i])会进入书店,所有这些顾客都会在那一分钟结束后离开。在某些时候,书店老板会生气。 如果书店老板在第 i 分钟生气,那么 grumpy[i] = 1,否则 grumpy[i] = 0。 当书店老板生气时,那一分钟的顾客就会不满意,不生气则他们是满意的。书店老板知道一个秘密技巧,能抑制自己的情绪,可以让自己连续 X 分钟不生气,但却只能使用一次。请你返回这一天营业下来,最多有多少客户能够感
2021-02-26 13:24:26
116
原创 ngnix入门
1、nginx作用1、高性能的http和反向代理web服务器,特点是占有内存少,并发能力强。Nginx专为性能开发,能经受高负载(why)并发数支持高达50000个。支持热部署2、反向代理正向代理(代理客户端):浏览器配置代理服务器,通过代理服务器进行互联网访问反向代理(代理服务器端): 客户端直接访问反向代理服务器,反向代理服务器请求真实的服务器,对外暴露反向代理服务器,隐藏真实服务器3、负载均衡:即将高并发的请求分发到多个服务器上,降低单个服务器的压力。4、动静分离:提高网站的反应速度,将
2021-02-26 12:53:39
737
原创 JUC并发编程04
21、锁公平锁,非公平锁 默认非公平锁可重入锁(递归锁)Synchronizedpublic class ReentrantLockDemo { public static void main(String[] args) { Phone phone = new Phone(); new Thread(()->{phone.sent();}).start(); new Thread(()->{phone.sent();}).start(); }}class Phone
2021-02-25 00:33:01
132
原创 JUC并发编程03
14、ForkJoinForkjoin:**特点:**工作窃取15、Future16、JMM(Java Memory Model)Java内存模型1、Java内存模型规定所有的变量都存储在主内存中,包括实例变量,静态变量,不包括局部变量和方法参数。2、每个线程有自己的工作内存,线程的工作内存保存了该线程用到的变量和主内存的副本拷贝,线程对变量的操作都在工作内存中进行,线程不能直接读写主内存中的变量。3、不同的线程之间也无法访问对方工作内存中的变量,线程之间变量值的传递均需要通过主内存来完成。
2021-02-24 17:46:06
214
1
原创 DES 加密 DES/ECB/PKCS7Padding
package com.sentemail.DES;import java.security.SecureRandom;import java.security.Security;/*扩展类*/import javax.crypto.Cipher;import javax.crypto.SecretKey;import javax.crypto.SecretKeyFactory;import javax.crypto.spec.DESKeySpec;import org.bouncyca
2021-02-24 12:48:42
1580
原创 零散操作记录
Linux命令查找文件内容find . -name “文件名” | xargs grep “查找内容” # * 代表所有举例: find . -name “a*.log” | xargs grep “hello”
2021-02-23 13:50:11
321
原创 JUC并发编程02
7、Callable可以有fanhuiz可以抛出异常方法不同,run()/call()示例public class Callabletest { public static void main(String[] args) throws InterruptedException, ExecutionException { // new Thread(new Runable()).strat; // new Thread(new FutureTask<V>()).start
2021-02-23 13:31:17
238
1
原创 JUC并发编程01
1、JUC(Java.util.concurrent)2、线程和进程一个进程往往包含多个线程,至少包含一个;java默认有两个线程? main;GC线程:并发和并行并发:并行:并发编程的本质:充分利用CPU的资源
2021-02-22 01:23:38
128
原创 1438. 绝对差不超过限制的最长连续子数组
给你一个整数数组 nums ,和一个表示限制的整数limit,请你返回最长连续子数组的长度,该子数组中的任意两个元素之间的绝对差必须小于或者等于 limit 。如果不存在满足条件的子数组,则返回 0 。 示例 1: 输入:nums = [8,2,4,7], limit = 4 输出:2解释:所有子数组如下: [8] 最大绝对差 |8-8| = 0 <= 4. [8,2] 最大绝对差 |8-2| = 6 > 4.[8,2,4] 最大绝对差 |8-2| = 6 > 4. [8,2,4.
2021-02-21 17:57:28
282
1
原创 Eclipse初步使用Git
使用码云github 是有墙的,比较慢,在国内的话,我们一般使用 gitee ,公司中有时候会搭建自己的gitlab服务器这个其实可以作为大家未来找工作的一个重要信息!1、注册登录码云,完善个人信息2、设置本机绑定SSH公钥,实现免密码登录!(免密码登录,这一步挺重要的,码云是远程仓库,我们是平时工作在本地仓库!) # 进入 C:\Users\Administrator\.ssh 目录 #没有ssh目录 执行命令$ ssh-keygen -t rsa -C “邮箱地址” ##三.
2021-02-21 15:24:49
425
原创 697. 数组的度
给定一个非空且只包含非负数的整数数组 nums,数组的度的定义是指数组里任一元素出现频数的最大值。 你的任务是在 nums 中找到与 nums 拥有相同大小的度的最短连续子数组,返回其长度。 示例 1: 输入:[1, 2,2, 3, 1] 输出:2 解释: 输入数组的度是2,因为元素1和2的出现频数最大,均为2. 连续子数组里面拥有相同度的有如下所示: [1,2, 2, 3, 1], [1, 2, 2, 3], [2, 2, 3, 1], [1, 2, 2], [2, 2, 3], [2, 2]最
2021-02-20 17:56:36
93
原创 多线程按序输出
我们提供了一个类: public class Foo { public void first() { print(“first”); }public void second() { print(“second”); } public void third() {print(“third”); } } 三个不同的线程 A、B、C 将会共用一个 Foo 实例。一个将会调用 first() 方法 一个将会调用 second() 方法 还有一个将会调用 third() 方法 请设计修改程序,以确保.
2021-02-19 15:32:36
502
原创 最大连续1的个数
给定一个由若干 0 和 1 组成的数组 A,我们最多可以将 K 个值从 0 变成 1 。 返回仅包含 1 的最长(连续)子数组的长度。 示例1: 输入:A = [1,1,1,0,0,0,1,1,1,1,0], K = 2 输出:6 解释:[1,1,1,0,0,1,1,1,1,1,1] 粗体数字从 0 翻转到 1,最长的子数组长度为 6。 示例 2: 输入:A =[0,0,1,1,0,0,1,1,1,0,1,1,0,0,0,1,1,1,1], K = 3 输出:10 解释:[0,0,1,1,1,1,.
2021-02-19 15:02:36
476
原创 file操作
1.①相对路径 :相对于某个路径②绝对路径 :盘符+路径2.常用方法 :构造方法 File f=new File("d:\\1\\2");File f1=new File(f,"3.txt");File f2=new File("d:\\1\\2","4\\3.txt")分隔符:file.serparater创建文件:createFile();删除文件:delete();判断文件是否存在:exis...
2018-04-23 23:39:31
273
原创 Java复习一
面向对象的分析(OOA,ObjectOriented Analysis),面向对象的设计(OOD,Object Oriented Design)、以及面向对象的编程实现(OOP,Object Oriented Programming)面向对象的特性:1.封装性:保护内部的定义的安全性2.继承性:在已有的程序结构上继续扩充新的功能3.多态性:指的是在某一个概念范围内的满足。面向对象就是一种组件化的设...
2018-04-21 21:07:22
208
原创 数组排序
// 冒泡排序 public static void bubble(int[] temp){// 排序总体的次数 for (int i = 0; i < temp.length; i++) {// 每次的次数 for (int j = 0; j < temp.length-1; j++) { if(tem...
2018-04-21 20:38:29
204
原创 单例模式
声明属性:private声明方法:public命名规范:类的每一个单词的首字母大写方法名称、属性名称第一个单词首字母小写常量名称使用大写字母表示包名称使用小写字母。1.设计模式 :一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结设计模式的好处:为了代码可重用性2.java 一共有23种设计模式 :① 单例模式 ② 适配器模式 ③ 装饰者模式 ④代理模式3.单例模式 :1》模式 :名称2...
2018-04-21 20:26:38
191
原创 随机验证码
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <style> #box{ width: 100px;
2018-04-20 20:42:15
211
原创 UDP(User Datagram Protocol)用户数据报协议
发送端package com.demo;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;public class TestSend { public static void main(String[] args) { //DatagramSocke...
2018-04-20 00:28:38
727
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人