java
门主冬七
你不知道你,所以你是你。如果你知道你,你就不是你。
展开
-
Java 上传带参数的文件
Java代码实现文件上传,并带参数原创 2023-03-07 13:58:07 · 1190 阅读 · 0 评论 -
[Java] 源码中常用的词汇记录(持续更新)
offset偏移量原创 2022-02-10 11:10:39 · 231 阅读 · 0 评论 -
Spring Boot定时任务指定时间执行 实战代码
最近接收到一个需求,页面如下:需要根据指定时间执行定时任务,接到需求后也是研究了半天,结合网上老师们的教程,现分享给大家我写的相关内容,直接上代码片段我做的只是支持单机版,如果大家感兴趣可以改造成使用redis分布式缓存,师傅领进门,修行在个人,只是提供一个思路,在有的内容上大家可以随意发挥你们的想法能力,不过需要我这块砖做基础1、首先是服务重启后,我们指定的定时任务需要重新加载到内存中import com.hsgd.brandhub.task.service.SrLuck..原创 2021-11-18 16:45:09 · 2893 阅读 · 0 评论 -
Java数字转化为单位为万或亿,仅供参考
public static String formatNumberWithUnit(String needFormatNumber) { final String noNumDefaultValue = "0"; if (!NumberUtils.isNumber(needFormatNumber)) { return noNumDefaultValue; } String nuit = "",formatN...原创 2021-11-12 16:50:45 · 2707 阅读 · 0 评论 -
Excel导入导出 EasyExcel的使用- 导入组织人员
模板表结构HSGD_BASE_GROUP_CUSTOMER_IMPORT_RECORDHSGD_BASE_GROUP_CUSTOMER_IMPORT_COMPLETIONHSGD_BASE_GROUP_CUSTOMER_NOT_IMPORT_RECORD代码package com.zhgd.base.controller.api;import com.zhgd.base.service.IZhgdSrBaseGroupCustomerImpo...原创 2021-10-21 20:40:57 · 591 阅读 · 0 评论 -
Excel导入导出 EasyExcel的使用- 导入组织机构
模板表结构HSGD_BASE_GROUP_IMPORT_RECORDHSGD_BASE_GROUP_IMPORT_COMPLETIONHSGD_BASE_GROUP_NOT_IMPORT_RECORD代码package com.zhgd.base.controller.api;import com.zhgd.base.service.IZhgdSrBaseGroupImportService;import com.zhgd.common.util.Js...原创 2021-10-19 21:49:15 · 532 阅读 · 0 评论 -
Java性能优化的思路解析
原创 2021-09-09 16:24:33 · 89 阅读 · 0 评论 -
【Java】 项目代码片段分享
今天下午写了一段代码程序,虽然功能简单,但是实现起来还是需要一些逻辑处理,分享下代码:private void getLuckActivityContainCondition(ZgLuckActivityContainConditionVO newContain, Long activityId) { newContain.setRegionCodes(Lists.newArrayList()); newContain.setZgLevels(Lists.newAr原创 2021-08-04 16:46:03 · 155 阅读 · 0 评论 -
【Lambda】 Map<String,Map<String,List<String>>> 分组
今天业务上有一个分组的操作,如图:要求按省份,城市分组,显示内容,第一反应想到了Java 8的Lambda表达式,下面用一个例子来说明一下:首先定义一个类:package org.blackholeframework.common.test;import lombok.AllArgsConstructor;import lombok.Data;@Data@AllArgsConstructorpublic class TestVO { private Strin.原创 2021-08-04 14:37:26 · 1738 阅读 · 0 评论 -
【Java】代码优化片段 (逗号分隔字符串转List 去重)
今天在更新项目代码的时候,我看到同事提交的代码片段,就想看看同事写的什么逻辑,我看了下代码,就想做一个优化,如果让我写,我会怎么写,可以先看下源代码,如下: private final int size = 2; @Override public Boolean checkIsCrossRegional(String regionCodes, Boolean status) { if (status) { if (StringUtil.i原创 2020-12-22 16:56:32 · 1169 阅读 · 0 评论 -
【Java】最近看技术站文章随手笔记关键字版
1、 synchronized与Lock: 在同一个JVM中 monitorenter 和 monitorexit 指令控制 2、Nginx/Nginx集群 负载均衡3、性能考虑: 服务器网卡、磁盘IO、CPU负载4、NIO: NioEventLoopGroup bossGroup 用于Accetpt连接建立事件并分发请求; NioEventLoopGroup workerGroup 用于处理 I/O 读写事...原创 2020-12-11 11:31:32 · 191 阅读 · 2 评论 -
【Mybatis】MybatisSqlInterceptor Interceptor 拦截器打印完整的sql语句
最近在做公司的项目,发现项目当中使用Mybatis框架的时候,打印的SQL都是用原生的DEBUG的日志,执行SQL和参数都是分开的,这样我们在排查SQL问题的时候,都需要手动拼接,浪费了一些时间,所以我们需要想办法打印出完成的SQL,Mybatis为我们提供了org.apache.ibatis.plugin.Interceptor接口,我们来实现该接口做一些打印SQL的工作,可能很多小伙伴的项目都已经用了此功能,但是也可以看一下,温故而知新,主要是为了那些真正需要帮助的小伙伴提供一些参考。我参与..原创 2020-12-09 15:22:00 · 6285 阅读 · 4 评论 -
【java面试】 准备阶段记录学习笔记,关键字版
最近在准备面试,会看很多的知识点,需要高效的去掌握和学习技术点,我们不通篇去诠释一个技术的非常详细的内容,需要自己针对某些关键字,自己去学习提升,有了我总结的一个内容,大家可以学习很多知识了,作为一个开发人员,我们需要精益求精,需要走向专业的阶段,一起加油:降低数据库I/O提高系统响应时间提高并发量元空间使用的本地内存,不存在于虚拟机中-XX:MetaspaceSize-XX:MaxMetaspaceSizelinux命令: 1、jmap -heap pid ...原创 2020-05-12 17:46:10 · 202 阅读 · 0 评论 -
【java算法】 两个数组合并成一个数组,并进行排序,打印出来
public static void main(String[] args) { int[] a = {3,1,9,5,0}; int[] b = {8,2,4,7,6}; int[] c = new int[a.length + b.length]; System.arraycopy(a,0,c,0,a.length); ...原创 2020-03-05 09:09:15 · 2852 阅读 · 0 评论 -
【java】 浅谈动态数据源切换和Spring两种代理JDK和CGLIB的区别
在做拆库的项目时,我们针对DAO层做动态数据源(Dynamic DataSource)切换,指定package来使用哪个数据源,这种动态切换数据源的方式,我们使用的是Spring Aop来实现的:项目用的Hibernate、SpringJDBC、Mybatis组合来实现ORM,改造的过程中曾经遇到过不能切换数据源的情况,启动服务报错,具体报错忘记记录了,但是报错的根源是针对Spring A原创 2018-01-31 07:48:27 · 486 阅读 · 0 评论 -
【java】Spring MVC的配置
现在的web项目一般都使用spring mvc,记录一下spring mvc的配置内容,后续直接使用:web.xml <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet...原创 2018-02-23 09:52:56 · 176 阅读 · 0 评论 -
Maven项目中pom.xml配置,帮助你快速搭建Spring框架
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0....原创 2018-05-06 15:27:54 · 854 阅读 · 0 评论 -
【ZooKeeper + Dubbo】 实战快速搭建ZooKeeper + Dubbo + Spring项目框架
最近在项目开发中,用到了ZooKeeper + Dubbo的微服务框架,项目是Maven Module Project结构。我不想做过多的文字叙述,网络资源很多,主要是讲述下我是怎么搭建的。首先我们要下载zookeeper,我用到的版本是zookeeper-3.4.10,目录如下:进入到conf目录,我们需要copy一份zoo_sample.cfg文件,修改文件名为zoo.cfg,里面内容为:然后...原创 2018-07-09 15:16:34 · 544 阅读 · 0 评论 -
【Activiti】 Activiti工作流引擎 - 实际项目中的封装应用 【精品】
5月份的时候,公司需要开发一个新项目,其中涉及到审批的相关业务流程,我首先到网络上面搜索到了常用的工作流引擎有哪些,我这里不做介绍了,最终选择了activiti工作流引擎。 在工作了7年多的时间里,我从来没有用到过工作流,但是对我们开发者来说,工作流引擎这种技术,只要我们深入研究该工作流引擎的API,也就能够很清楚的去使用工作流引擎了,但是在实际的开发中,...原创 2018-07-25 12:02:57 · 8817 阅读 · 9 评论 -
【Activiti】 Activiti工作流引擎 - 提交审批和审批处理示例详解 【精品】
在上一篇的文章中,我给大家分享了Activiti工作流引擎的API的封装代码,通过我们自己封装的代码,在实际的项目中我们就可以进行工作流相关的开发了。以下内容我们分三个部分:提交审批,审批列表查询,审批处理。一、提交审批 提交审批之前,我们需要做好相关的准备工作。在上文中,我提到过: 1.首先,我们要画工作流程图,并且需要在流程图中设置相关的参...原创 2018-12-03 10:59:42 · 10441 阅读 · 3 评论 -
【Java】 List集合拆分按N进行分组
今天看到一篇博文,写了关于对List进行分组的相关内容,我想到之前做项目时也遇到过要进行分组的处理,那我也想再重新来写一下代码,不参考任何资料,就靠自己的思路来写方法,并且测试通过,先分享出来,后续如果有更好的方式再继续优化,大致的代码如下:package com.wzz.test;import com.google.common.collect.Lists;import java....原创 2018-12-19 15:14:07 · 2624 阅读 · 0 评论 -
【精品】Spring Boot集成Redis集群配置
直接贴代码:1、pom.xml添加依赖配置 <!-- 支持Redis键值存储数据库,包括spring-redis --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId...原创 2019-02-22 13:31:58 · 803 阅读 · 0 评论 -
【Spring Boot】 Spring Boot 搭建Web项目
现在公司的很多项目都是使用Spring Boot框架,针对web项目该如何搭建呢,我相信大家都能找到很多的博客讲解搭建步骤,我只是按我的思路来把我的代码贴出来,分享给大家。首先我们看下我的项目结构:现在我来说下我的搭建步骤:1、pom文件添加依赖: <dependency> <groupId>org.springf...原创 2019-02-25 18:23:35 · 375 阅读 · 0 评论 -
【Spring Boot】 Spring Boot集成Kafka及搭建过程中问题的解决方法
今天我想用Spring Boot项目来集成Kafka并能够在本地跑起来,因为后面需要用到Kafka来做一个项目,具体的一些框架及中间件的知识我就不再讲解了,主要还是跟大家来分享一下我的代码和一些问题的展示:1、首先我们要在本地搭建一个kafka的服务,在官网下载,地址是http://kafka.apache.org/downloads ,我选择的是然后解压放到本地的一个路径,我的路径是...原创 2019-02-25 19:04:55 · 7196 阅读 · 1 评论 -
Java SpringBoot前后端分离跨域配置
最近在做一个新项目,我用的是SpringBoot框架,采用前后端分离方式进行开发,这样在联调的时候就涉及到跨域的问题,通过网上找了很多资料参考,最后整理出来一份可以大家直接拿来使用的代码示例,希望对大家有更多的帮助,本文并不想讲太多的理论,网上讲理论的太多了,直接把代码分享给大家:1、跨域配置类:@Configuration@Slf4jpublic class CorsConfig ...原创 2019-07-16 19:37:51 · 1326 阅读 · 0 评论 -
SpringBoot集成FastDFS的配合
最近做的项目需要把相关的录音文件上传到FastDFS服务器,因为之前没有做过,所以都是在网上找一些资源做参考,最后经过调试,终于可以上传成功了,接下来我来和大家分享我写的相关代码,其他就不讲解了,希望能做到大家参考着也能配置成功,在项目中使用:1、首先添加maven的依赖 <dependency> <groupId>net.o...原创 2019-07-16 19:54:44 · 1619 阅读 · 1 评论 -
【java】Spring Mail 发送邮件示例
今天某同学在研究使用Java程序来发送邮件,使用的javax.mail来发送邮件,使用的腾讯的qq邮件服务器,用了原生的约定俗成的java代码,调试了很长时间未果,出现了各种错误信息,然后对错误信息进行分析,当我看到的时候,我的头脑闪现出了Spring Mail,原来看文章的时候,看过这个词,但是没有真正的去用这个框架去写发送邮件的代码,今天正好有机会,我就来帮某同学写一段代码。 ...原创 2018-02-08 07:27:26 · 435 阅读 · 0 评论 -
【java】 web.xml配置
为了便于开发新项目时候配置web.xml文件,记录一下相关的配置,因为配置的东西我们知道有那些,但是具体配置还是需要我们清楚的<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://原创 2018-02-05 23:13:26 · 170 阅读 · 0 评论 -
【java】 设计模式之单例模式
曾经到一家公司面试,面试中问了java设计模式中的单例模式,让我用笔写出来,当时可能自己的技术还没有形成体系,思路也不是很清晰,结果在一张纸上面写的乱七八糟的,涂抹的不成样子,不堪入目。时常想起当时的场景,真的很难让自己忘掉,但是这种经历对我来说也是有好处的,让我对单例模式有了更多的认识。首先想一下如何能保证一个Java类在整个应用上下文多线程环境当中只有一个:第一点:不能写public的...原创 2018-02-10 08:29:13 · 156 阅读 · 0 评论 -
【java】 JAVA中正则表达式判断字符串在为空的情况才校验的写法
今天项目中遇到一个问题:/***指定划付日期*/@Pattern(regexp="((?:19|20)\\d{2}(?:0?\\d|1[012])(?:0\\d|[12]\\d|3[01]))",message="[指定划付日期]格式错误或者输入不合法!")@Size(min = 0, max = 8,message="[指定划付日期]长度错误,最大长度为[{max}]!") private St原创 2017-04-24 18:37:33 · 12372 阅读 · 0 评论 -
【java】 多线程讲解
**** 核心:线程在被激活后不一定马上就运行,而是进入到可运行线程的队列中 ***1、yield() 方法是停止当前线程,让同等优先权的线程运行。如果没有同等优先权的线程,那么yield()方法将不会起作用;2、join() 方法使当前线程停下来等待,直至另一个调用join方法的线程终止;3、wait() 方法会在线程休眠的同时释放掉机锁,其他线程可以访问该对象;原创 2018-01-23 17:36:06 · 182 阅读 · 0 评论 -
【java】 排序算法入门之冒泡排序经典讲解
昨天和同事聊天,同事说昨天去一个公司面试,面试官让写冒泡算法,同事提前做了准备,所以很轻易就写出来了,今天早晨我就想自己好久也没有写冒泡算法了,都忘的一干二净,但是我们可以去想想冒泡的编程思想,就是一串乱的数字,然后冒泡了一下,就是从大到小区排列,例如:{ 6, 4, 3, 9, 7, 1, 8 } 冒泡处理结果应该为 {9 , 8 ,7 ,6 ,4 ,3 ,1 },我想了一下大致的原创 2018-01-06 11:29:14 · 221 阅读 · 0 评论 -
【java】 JAVA开发中常用的工具类
时间:org.apache.commons.lang.time.DateUtils - public static boolean isSameDay(Date date1, Date date2) org.apache.commons.lang.time.DateFormatUtils - public static String format(Dat原创 2017-01-19 11:30:17 · 359 阅读 · 0 评论 -
【java】 Scanner类读取控制台输入内容研究
对于用Eclipse工具进行开发的程序员来说,开始学习JAVA的时候,我们会用到java.util.Scanner类来模拟界面手动输入操作,比如下面的这段代码一个让我很感兴趣的事情是,控制台输入,程序也能读取到,这是怎么办到的呢,现在让我们开启追踪模式,先找个简单的程序一行一行的去分析下,先看程序那我们就看红框标注内的这行代码,进入Scanner的构造器System.in就是一个I原创 2018-01-16 11:59:48 · 385 阅读 · 0 评论 -
【java】Spring开发中不能使用IOC的情况
在实际开发中,有些业务场景我们不能使用注解@Autowire、@Resource、@Inject等自动注入Bean。在多线程的环境下,我们调用Bean的方法来处理我们的业务数据,但是需要处理的数据资源都是单独的,主要针对需要处理的数据资源属于Bean的成员变量,例如:@Component("withdrawKHQueryResultExecutor")public class Onlin原创 2018-01-24 08:07:32 · 553 阅读 · 0 评论 -
【java】 Scanner类读取txt文件研究
今天突然想到了一个问题:之前看到测试的同事用eclipse控制台输入短信验证码,进行系统流程测试的场景,其中就用到了java.util.Scanner类,从事开发这么长时间,使用这个类非常少,想起当初java入门的时候就用到这个类进行手动输入。 打开eclipse写了一个测试类: 其他数据类型的输入也是类似的,大家都知道,这个类真的很强大,通过调用API就能够在eclipse原创 2018-01-14 22:19:38 · 8128 阅读 · 0 评论 -
【java】线程睡眠的新方式讲解
在Java项目开发中,我们一般让线程休眠使用的方法是Thread.sleep(4000),查看线程休眠的源码public static native void sleep(long millis) throws InterruptedException; 从源码得知单位是毫秒,今天发现了一个更便于我们在开发中使用的类java.util.concurrent.TimeUnit原创 2018-01-06 07:56:27 · 1605 阅读 · 0 评论 -
【java】JVM相关内容总结
1、java的方法执行的时候都要创建一个栈帧,栈帧包括:局部变量表、操作数栈、动态连接、返回地址。2、CMS收集周期:CMS并非没有暂停,而是用两次短暂停来替代串行标记整理算法的长暂停,它的收集周期是这样:初始标记(CMS-initial-mark) -> 并发标记(CMS-concurrent-mark) ->并发预清理(concurrent pre-clean)-> 重新标记(CM原创 2018-01-13 22:40:23 · 180 阅读 · 0 评论 -
【java】 java程序JVM执行过程概述
java程序JVM执行过程原创 2018-01-22 14:38:52 · 339 阅读 · 0 评论 -
【java】 类加载详细过程
类加载详细过程原创 2018-01-22 14:36:16 · 166 阅读 · 0 评论