春风化作秋雨
码龄10年
  • 2,188,176
    被访问
  • 688
    原创
  • 527
    排名
  • 749
    粉丝
关注
提问 私信

个人简介:学而思,思而学

  • 加入CSDN时间: 2012-02-07
博客简介:

春风化雨

博客描述:
用心做事
查看详细资料
  • 8
    领奖
    总分 5,192 当月 185
个人成就
  • 获得1,185次点赞
  • 内容获得348次评论
  • 获得4,533次收藏
创作历程
  • 50篇
    2022年
  • 266篇
    2021年
  • 85篇
    2020年
  • 223篇
    2019年
  • 206篇
    2018年
成就勋章
TA的专栏
  • Spring
    105篇
  • posgresql
    3篇
  • 中间件
    13篇
  • Mybatis plus
    2篇
  • 前端
    13篇
  • 操作系统
    2篇
  • 存储
    4篇
  • 软件测试
    3篇
  • JAVA基础
    203篇
  • 环境搭建_linux
    28篇
  • 项目管理
    27篇
  • 研发管理
    25篇
  • Python爬虫
    31篇
  • 保险
    3篇
  • IT行业
    1篇
  • 网络硬件
    7篇
  • 解决方案
    110篇
  • 运维管理
    67篇
  • 系统架构
    112篇
  • 产品设计
    3篇
  • 网络安全
    25篇
  • 微信
    3篇
  • 服务器管理
    27篇
  • 数据库使用与维护
    76篇
  • 代码管理
    17篇
  • Redis
    27篇
  • Linux
    14篇
  • Python
    34篇
  • Elasticsearch
    13篇
  • JDK
    22篇
  • JVM_Java虚拟机
    25篇
  • 面试集锦
    7篇
  • 网络协议
    11篇
  • 图片处理
    3篇
  • 异常处理
    1篇
  • 算法
    6篇
  • 学习网站
    2篇
  • JavaWeb
    5篇
  • IntelliJ IDEA
    1篇
  • 算法与数据结构
    5篇
  • zookeeper
    2篇
  • 知识梳理
    9篇
  • 网络编程
    4篇
  • Maven
    6篇
  • 工具破解
    1篇
  • 开发工具
    11篇
  • 细说Java
    72篇
  • 个人账号
  • Java Web
    6篇
  • 设计模式
    4篇
  • dubbo
    2篇
  • 新产品
    1篇
  • Mq
    4篇
  • Excel
    1篇
  • Hibernate
    15篇
  • Mybatis
    6篇
  • Jenkins
  • 缓存
    1篇
  • Nginx
    3篇
兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    spring架构
  • 搜索
    elasticsearch
  • 服务器
    linux
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

客服排班算法

1、需求描述24小时全天候值守,一天三班倒,员工排班,全员每月相同休假。2、代码实现import lombok.*;import java.util.*;import java.util.concurrent.ConcurrentLinkedDeque;public class ScheduleTest { public static int days = 31;//下月天数 public static int employeeNum = 99;//员工人数
原创
发布博客 2022.05.12 ·
34 阅读 ·
0 点赞 ·
0 评论

员工到岗排班算法实现

1、需求描述每周5个工作日,每个工作日只要求全员的部分员工到岗,实现公平下的自动排班,给出一个月的排班明细。2、代码实现/** * 自动排班 **/public class ScheduleAutoJob { public static void main(String[] args) { //员工数组 String[] employeeArray = {"张三", "李四", "王五", "李丽", "孙萌", "张凯", "李炜", "赵明"
原创
发布博客 2022.05.12 ·
30 阅读 ·
0 点赞 ·
0 评论

mysql查看数据库大小以及使用情况?

一、用SQL命令查看Mysql数据库大小要想知道每个数据库的大小的话,步骤如下:1、进入information_schema 数据库(存放了其他的数据库的信息)use information_schema;2、查询所有数据的大小:select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables;3、查看指定数据库的大小:比如查看数据库home的大小select concat(rou
转载
发布博客 2022.05.12 ·
59 阅读 ·
0 点赞 ·
0 评论

linux下不重启服务清理日志

1、重定向清空日志文件du -h catalina.out #查看文件大小2G catalina.out> catalina.out #重定向清空文件du -h catalina.out #检查文件大小0 catalina.out2、使用true命令重定向清空日志文件du -h catalina.out2G catalina.outtrue > catalina.outdu -h catalina.out0 catalina.
原创
发布博客 2022.05.11 ·
173 阅读 ·
0 点赞 ·
0 评论

Java stream 实现 List<String> 转List<Long>

本文提供了三种方式,请自行参考import org.apache.commons.lang.ArrayUtils;import javax.swing.plaf.synth.SynthOptionPaneUI;import java.util.ArrayList;import java.util.Arrays;import java.util.List;import java.util.stream.Collectors;import java.util.stream.Stream;
原创
发布博客 2022.02.22 ·
767 阅读 ·
0 点赞 ·
0 评论

Java8 stream().map() 修改元素

Java8 stream().map() 是一个中间操作,可实现对元素进行修改,这意味着它返回Stream对象。代码实现:package com.collectStream;import lombok.Data;import java.util.ArrayList;import java.util.Arrays;import java.util.Comparator;import java.util.List;import java.util.stream.Collectors;
原创
发布博客 2022.02.22 ·
881 阅读 ·
1 点赞 ·
0 评论

Java8 stream().filter() 过滤应用

Java8及以上版本中,使用stream().filter()来过滤一个List对象,查找符合条件的对象集合。代码实现:import lombok.Data;import java.util.ArrayList;import java.util.Arrays;import java.util.List;import java.util.stream.Collectors;public class TestStreamFilter { public static void so
原创
发布博客 2022.02.22 ·
3796 阅读 ·
1 点赞 ·
0 评论

Java stream().sorted() 排序应用

Java 8中 Stream 的 sorted() 可实现按照自然排序,也可使用 Comparator 提供的排序对流进行排序;支持使用 lambda 表达式进行实例化;还可实现反转自然排序。1、sorted() 使用按自然升序对集合进行排序,默认是升序排列;使用 Comparator 提供 reverseOrder() 方法实现降序排列。list.stream().sorted() .stream().sorted();list.stream().sorted(Comparator.re
原创
发布博客 2022.02.22 ·
1338 阅读 ·
0 点赞 ·
0 评论

20 个超级使用的 Java 8 Stream,玩转集合的筛选、归约、分组、聚合

先贴上几个案例,水平高超的同学可以挑战一下:1. 从员工集合中筛选出salary大于8000的员工,并放置到新的集合里。2. 统计员工的最高薪资、平均薪资、薪资之和。3. 将员工按薪资从高到低排序,同样薪资者年龄小者在前。4. 将员工按性别分类,将员工按性别和地区分类,将员工按薪资是否高于8000分为两部分。用传统的迭代处理也不是很难,但代码就显得冗余了,跟Stream相比高下立判。Java 8 是一个非常成功的版本,这个版本新增的Stream,配合同版本出现的Lambda...
转载
发布博客 2022.02.22 ·
39 阅读 ·
0 点赞 ·
0 评论

Spring中的@Qualifier与@Primary

使用场景:Spring匹配到多个可用的bean。1、@Qualifier 注解使用@Qualifier("bean名称")指定具体需要注入的 bean;这种方式控制方在使用方。public interface UserService {}@Servicepublic class UserService1 implements UserService {}@Servicepublic class UserService2 implements UserService {}
原创
发布博客 2022.02.22 ·
142 阅读 ·
0 点赞 ·
0 评论

这 30 条架构原则,值得反复阅读~

作者来源 :#java充电社今天给大家带来的是Apache的一个架构师总结的30条架构经验,我觉得非常好,所以分享给大家,这些原则被广泛认可,也成为了新手架构师的学习途径。—1—基本原则原则1:KISS(Keep it simple, sutpid)保持每件事情都尽可能的简单。用最简单的解决方案来解决问题。原则2:YAGNI(You aren’t gonna need it)不要去搞一些不需要的东西,需要的时候再搞吧。点评:speculative development的例子..
转载
发布博客 2022.02.22 ·
20 阅读 ·
0 点赞 ·
0 评论

Java 内存模型独有与共享

1、独有栈、本地方法栈、程序计数器这三个部分都是线程独占的。栈也叫方法栈,是线程私有的,线程在执行每个方法时都会同时创建一个栈帧,用来存储局部变量表、操作栈、动态链接、方法出口等信息。调用方法时执行入栈,方法返回时执行出栈。本地方法栈与栈类似,也是用来保存线程执行方法时的信息,不同之处,执行Java 编写代码中方法使用栈,而执行 native方法使用本地方法栈。程序计数器保存着当前线程所执行的字节码位置,每个线程工作时都有一个独立的计数器。程序计数器为执行Java方...
原创
发布博客 2022.02.21 ·
45 阅读 ·
1 点赞 ·
0 评论

Thread.sleep(0) 的作用

使用场景:Java 采用抢占式的线程调度算法,因此可能会出现某条线程常常获取到 CPU 控制权的情况。解决方案:为让某些优先级较低的线程也能获取到 CPU 控制权,可使用 Thread.sleep(0) 触发一次操作系统分配时间片的操作,这也是平衡 CPU 控制权的一种操作。...
原创
发布博客 2022.02.21 ·
96 阅读 ·
0 点赞 ·
0 评论

线程同步注意事项

1、尽量缩小同步的范围,增加系统吞吐量。2、分布式下java提供的同步锁失去意义,须使用分布式锁。3、防止死锁,注意加锁顺序。
原创
发布博客 2022.02.21 ·
28 阅读 ·
0 点赞 ·
0 评论

多线程编程中的原子性、可见性、有序性

原子性、可见性、有序性是多线程编程中最重要的几个知识点,由于多线程情况复杂,如何让每个线程能看到正确的结果,这是非常重要的。1、原子性原子性,是指一个线程的操作是不能被其他线程打断,同一时间只有一个线程对一个变量进行操作。在多线程情况下,每个线程的执行结果不受其他线程的干扰。举例:多个线程同时对同一个共享成员变量 n++ 累计100 次,若 n 初始值为 0,则 n 最后的值应该是 100,所以说它们是互不干扰的,这就是传说的中的原子性。但 n++ 并不是原子性的操作,要使用 AtomicInt
原创
发布博客 2022.02.21 ·
176 阅读 ·
0 点赞 ·
0 评论

死锁、活锁、饥饿、无锁

死锁、活锁、饥饿,是关于多线程是否活跃出现的运行阻塞障碍问题,若线程出现这三种情况,即线程不再活跃,无法再正常地执行下去。1、死锁死锁,是多线程中最差的一种情况,多个线程相互占用对方的资源的锁,而又相互等对方释放锁,此时若无外力干预,这些线程则一直处理阻塞的假死状态,形成死锁。举例:工人A正在使用扳手,需要钳子配合,此时工人B正在使用钳子,需要扳手配合;两人都占用对方的工具,又都在等待对方手中的工具,如此死等下去,任务都阻塞了。此时,需要外力干预才解决,比如A先把把扳手借给B,或者...
原创
发布博客 2022.02.21 ·
74 阅读 ·
0 点赞 ·
0 评论

使用使用线程池的好处

不使用线程池,每个线程都要通过 new Thread(xxRunnable).start()的方式来创建并运行。线程数量少的情况下,可如此使用。然而,现实环境下可能需要开启多个线程让系统和程序运行达到最佳效率。1、单独创建线程潜在问题当线程数达到一定数量就会耗尽系统的 CPU 和内存资源,也会造成 GC频繁收集和停顿。每次创建和销毁一个线程都是要消耗系统资源的,如果为每个任务都创建线程这无疑是一个很大的性能瓶颈。2、使用线程池可进行优化1、线程池可控制线程数量,避免线程泛滥。2、线程池
原创
发布博客 2022.02.21 ·
80 阅读 ·
0 点赞 ·
0 评论

多线程同步的方法

1、synchronized 关键字2、Lock 锁3、分布式锁等
原创
发布博客 2022.02.21 ·
29 阅读 ·
0 点赞 ·
0 评论

java 线程中的 wait()和 sleep()方法

java 中 sleep() 方法和 wait() 方法1、相同点:都可以用来放弃 CPU 一定的时间。2、不同点:若线程持有某对象的监视器,sleep()方法不会放弃对象的监视器,wait() 方法会放弃对象的监视器。...
原创
发布博客 2022.02.21 ·
108 阅读 ·
0 点赞 ·
0 评论

Java 多线程实现方式

1、继承 Thread 类实现多线程。无返回结果2、实现 Runnable 接口方式实现多线程。无返回结果3、使用 ExecutorService、Callable、Future 实现有返回结果的多线程。
原创
发布博客 2022.02.21 ·
24 阅读 ·
0 点赞 ·
0 评论
加载更多