java
文章平均质量分 51
菜鸟一皓
这个作者很懒,什么都没留下…
展开
-
IDE安装后配置项--类/方法注释
ide配置:类/方法注释,字体大小,插件等原创 2022-11-13 17:27:29 · 423 阅读 · 1 评论 -
gradle配置阿里云镜像加速
gradle配置全局镜像加速原创 2022-10-30 15:45:10 · 1063 阅读 · 0 评论 -
Java使用FreeMarker导出word
入门freemarker导出word,包含文字,表格,图片的输出。。。原创 2022-10-14 18:30:00 · 950 阅读 · 0 评论 -
Springboot添加静态资源映射addResourceHandlers,可实现url访问
springboot读取静态资源原创 2022-09-19 22:00:05 · 1136 阅读 · 0 评论 -
瞧瞧,java Stream的常用方式
list转mapList<User> userList=new ArrayList();//Function.identity()表示自己本身//(key1, key2) -> key2 表示key一样取后一个Map<Long, User> maps = userList.stream().collect(Collectors.toMap(User::getId, Function.identity(), (key1, key2) -> key2));.原创 2022-09-20 11:00:00 · 151 阅读 · 0 评论 -
微信支付-v3版本
最近整理一下关于微信支付的内容文档说明支付文档支付序列图官方demo代码文件目录示意图代码段—小程序(其他的类似)AesUtil --密钥加解密 /** * @program: * @author: zzg * @create: 2021-07-27 10:30 */ import cn.hutool.core.codec.Base64; import javax.crypto.Cipher; import javax..原创 2022-03-08 21:53:19 · 791 阅读 · 3 评论 -
@Value 咋不起作用?
复用一个老项目代码,发现@value注解失效了?附上百度找到的原因:@Value的注意事项:1.不能作用于静态变量(static);2.不能作用于常量(final);3.不能在非注册的类中使用(类需要被注册在spring上下文中,如用@Service,@RestController,@Component等);4.使用这个类时,只能通过依赖注入的方式,用new的方式是不会自动注入这些配置的。这些我都不符合/(ㄒoㄒ)/~~绞尽脑汁下突然发现方法是私有的,//版本是5.1.7的@Valu.原创 2021-10-06 22:17:18 · 1256 阅读 · 0 评论 -
feign调用添加token
随着微服务访问安全性的提高,服务之间调用会进行token校验,而这个token大都数是放在header上,那怎么获取呢?feign调用添加token@RequestHeader 这个注解就行了 @PostMapping(value = "/v20160818/sms/sendInterfaceTemplateSms/{accountID}") //如果是数据是固定的,那可以用这个注解,@Headers({"Content-Type: application/j原创 2021-05-20 22:10:28 · 3845 阅读 · 1 评论 -
功能模块化(aop,filter),功能打包jar包,无法实现效果(方法二)
上一篇 功能模块化(aop,filter),功能打包jar包,无法实现效果这是对上篇的补充,另一种方法上一篇是用注解@ComponentScan扫描bean从而注册到上下文,今天这篇学习一下,springboot的starter是如何自动装配的。原理是这个: (具体的源码就不分析)spring-boot启动的时候会找到starter jar包中的resources/META-INF/spring.factories文件,根据spring.factories文件中的配置,找到需要自动配置的类。.原创 2021-03-15 22:14:39 · 524 阅读 · 0 评论 -
功能模块化(aop,filter),功能打包jar包,无法实现效果
事情原由由于有多个服务功能,这些服务都有共同的功能,比如过滤,aop等,每次都要写一遍,有点麻烦,就想整合到一个common包中结果没报错,但是不起作用了bug的原因springboot自动扫描,没有扫到,所以没有注册到,所以要手动添加扫描路径springboot自动扫描,默认扫描启动所在包和以下启动类使用@ComponentScan(basePackages = {“xxx.xxx.*”})...原创 2021-03-04 14:25:44 · 598 阅读 · 2 评论 -
微信公众号开发——接收用户消息和回复消息
接收用户消息和回复消息接收用户消息文档地址:接收普通消息消息类型文本图片语音视频视频地理位置这里只展开文本和图片,其他几种类型用法相似原创 2021-03-02 09:35:14 · 660 阅读 · 0 评论 -
微信公众号开发——接口配置信息的开发
开篇先吐槽一下微信公众号开发官方文档,看的真累接口配置信息原创 2021-02-23 16:42:35 · 569 阅读 · 0 评论 -
注解@CrossOrigin解决跨域问题
分享一篇文章关于跨域的解决办法,原文地址:https://www.mmzsblog.cn/articles/2019/08/23/1566526598886.html阅读目录:一、跨域(CORS)支持: 二、使用方法: 1、controller配置CORS 2、全局CORS配置 3、XML命名空间 4、How does it work? 5、基于过滤器的CORS支持 三、spring注解@CrossOrigin不起作用的原因阅读正文:注解@CrossOrigi..转载 2021-01-22 13:18:06 · 1370 阅读 · 0 评论 -
微信公众号开发---本地环境的搭建(申请测试账号和内网穿透)
最近公司有个需求关于公众号的,正好梳理一下吧。搭建环境申请公众号测试账号当然你也注册一个公众号,是一样的测试号的申请地址直接扫码注册就行了,注册号好后页面如下:这样就好了,这个测试号可以体验众多的服务接口,如果是个人公众号,不一定这么齐全。搭建内网穿透因为有些接口比如获取用户发的消息,微信是推送到你的服务上的,故本地开发需要内网穿透保证这一点。我用的的是这个ngrok,有免费的,对于个人开发来说已经是足够了。简单说下吧,(官网的文档说明很详细)1,先.原创 2021-01-21 20:29:11 · 638 阅读 · 0 评论 -
自定义注解,让你的参数检验更完备
前言:配和org.springframework.validation.annotation.Validated一起进行参数验证引入依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation</artifactId></dependency>v.原创 2020-11-23 20:08:17 · 291 阅读 · 1 评论 -
适配器模式,看这个就够了
适配器模式什么是设配器将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类能一起工作。适配器模式分为类结构型模式和对象结构型模式两种,前者类之间的耦合度比后者高,且要求程序员了解现有组件库中的相关组件的内部结构,所以应用相对较少些。适配器、装饰者、外观模式的区别有时候经常会搞不清楚适配器、装饰者、外观这三种模式的区别。装饰者和外观是适配器的升级版装饰者在适配器的基础上添加了其他的特性。某些交流设配器所作的事不只是改变接口,还添加了其他的特性,比如:原创 2020-11-04 21:01:05 · 300 阅读 · 1 评论 -
List转Map,for循环?NO
场景描述在工作中,经常会遇到这种情形:两组list信息,list1要使用list2的信息比如:用户users,部门departments,需要获取用户具体的部门信息实现使用for循环,这个应该都会for (Department department: departments) { maps.put(department.getId(), department); }另一种就是使用streamMap<Long, Department >..原创 2020-11-03 21:22:38 · 398 阅读 · 0 评论 -
代理咋个写,瞧这篇
导语最近在看小傅哥的设计模式时,看到他的抽象工厂中使用了代理,正好这个代理还未接触过,正好学习一下。正文开始了啥是代理呢?对象的执行方法,交给代理来负责本质还是调用对象的方法,类似于中介。关键类/接口InvocationHandlerInvocationHandler接口是proxy代理实例的调用处理程序实现的一个接口,每一个proxy代理实例都有一个关联的调用处理程序;在代理实例调用方法时,方法调用被编码分派到调用处理程序的invoke方法 /** * 该方原创 2020-11-03 09:30:57 · 215 阅读 · 0 评论 -
倚天屠龙之建造者模式
什么是建造者模式意图:将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。主要解决主要解决在软件系统中,有时候面临着"一个复杂对象"的创建工作,其通常由各个部分的子对象用一定的算法构成;由于需求的变化,这个复杂对象的各个部分经常面临着剧烈的变化,但是将它们组合在一起的算法却相对稳定。何时使用一些基本部件不会变,而其组合经常变化的时候。当一个类的构造函数参数个数超过4个,而且这些参数有些是可选的参数,考虑使用构造者模式。如何解决:将变与不变分离开。关键代码:转载 2020-11-02 20:34:44 · 132 阅读 · 0 评论 -
您瞧,工厂模式
工厂模式的介绍工厂模式是我们最常用的实例化对象模式了,是用工厂方法代替new操作的一种模式工厂模式又称工厂方法模式,是一种创建型设计模式,其在父类中提供一个创建对象的方法, 允许子类决定实例化对象的类型。这种设计模式也是 Java 开发中最常见的一种模式,它的主要意图是定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行那是不是当多个对象,继承同一个父类,可以实例化一个工厂,用于生产这些对象呢?分类简单工厂(一个普通类)public c原创 2020-10-11 14:26:41 · 158 阅读 · 0 评论 -
这个篇设计模式,值得拥有
前情回顾对于一个程序员的进阶之路,设计模式这个东西地位很重。当你想对代码进行优化或者去除重复逻辑,这时候如果你会设计模式,那你的代码可以很优雅。如何学呢首先要有一本好书,或者是适合自己的一本书。历经九九八十一难,我发现一本还不错的。研磨设计模式截取其中一个目录:目录是不是很详细。这是简介:《研磨设计模式》完整覆盖GoF讲述的23个设计模式并加以细细研磨。初级内容从基本讲起,包括每个模式的定义、功能、思路、结构、基本实现、运行调用顺序、基本应用示例等,让读者能系统、完整、准确地掌原创 2020-10-09 19:48:35 · 251 阅读 · 0 评论 -
windows删除java服务
当我们在windows起一个jar包,最苦恼就是找到对应的进程号,进行删除。经过多次查找渡娘,今日分享心得先起一个jar包吧(后台进程运行)cmd文件:@echo offrem 隐藏cmd窗口%1 mshta vbscript:CreateObject("WScript.Shell").Run("%~s0 ::",0,FALSE)(window.close)&&exitrem 运行jar包,>GateWay.log 2>&1 & (>.原创 2020-08-26 23:21:07 · 832 阅读 · 0 评论 -
kafak在spring中如何使用呢?瞧这个
kafka的使用引入依赖 <!-- kafka--> <dependency> <groupId>org.springframework.kafka</groupId> <artifactId>spring-kafka</artifactId> </dependency>最简单的用法(可跳过)配置文件 #原创 2020-07-02 22:36:21 · 224 阅读 · 0 评论 -
springboot之kafka配置参数
kafka使用@原创 2020-07-02 22:32:26 · 10073 阅读 · 0 评论 -
你要的栈、队列、deque,看这个就行
Deque:双端队列队列(FIFO 先进先出):queuestack:栈(FILO 先进后出)stack:栈(FILO 先进后出)方法解释异常push向栈顶添加失败抛异常pop获取并删除栈顶数据失败抛异常peek查看栈顶失败抛异常队列:queue 示意图方法解释异常add队尾增加一个元索如果队列已满,则抛出一个IIIegaISlabEepeplian异常offer队尾添加若队列满了,直接返原创 2020-06-28 16:18:37 · 414 阅读 · 0 评论 -
咦,咋没加volatile,变量也可见的呢?
本想今天复习一下volatile的,结果在写demo时,怎么也达不到效果。还以为写错的呢。最后发现是 System.out.printlnr惹的祸。我的demo如下:定义一个变量控制线程的中断。最初的demo是这样的:class Test1{ //public volatile static int num =0; public static int num =0; public static void main(String[] args) { new Th原创 2020-06-17 18:41:07 · 1437 阅读 · 3 评论 -
java-使用mapstruct复制两bean
前情回顾在业务中会经常遇到两个bean会复制引用的,通常使用BeanUtils这个类。 package com.example.demo.mapstruct;import lombok.Data;@Datapublic class Order { /** *订单id */ private Long id; /** * 订单编号...原创 2020-05-07 22:55:36 · 502 阅读 · 0 评论 -
java小记---mybatis.mapper的使用
mybatis.mapperMyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。如何使用:...原创 2020-05-07 22:53:25 · 555 阅读 · 0 评论 -
轻量级的同步机制----关键字volatile
今天看到关键字volatile,一头雾水,这是啥?赶紧学习学习。在详细了解这个volatile,要先了解一下JMM.Java内存模型简称JMM(Java Memory Model)是Java虚拟机所定义的一种抽象规范,用来屏蔽不同硬件和操作系统的内存访问差异,让java程序在各种平台下都能达到一致的内存访问效果。示意图:这里需要解释几个概念:.主内存(Main Memory...原创 2020-04-28 08:01:05 · 205 阅读 · 0 评论 -
JavaGuide面试突击版观后感1--- 基础知识导图
JavaGuide面试突击版地址:https://snailclimb.gitee.io/javaguide-interview/#/原创 2020-04-19 22:39:39 · 1005 阅读 · 0 评论 -
springmvc的使用
环境:java1.8/ maven 3.61/idealmaven工程的创建避免maven工程创建太慢,有两种方案1 ,这个是使用idea自带的maven:archetypeCatalog = internal不过创建过程还是有点慢,这个我又在setting中设置其他属性,-DarchetypeCatalog=internal2,第二种,选择自己安装的maven修改sett...原创 2020-04-12 12:49:41 · 132 阅读 · 0 评论 -
yml怎么用?map?list?
走过路过不要错过,各位看官,听我慢慢道来本篇文章主要包含三大类:1,yml是啥东东2,yml怎么写3,yml怎么用YML是什么 YAML (YAML Ain't a Markup Language)YAML不是一种标记语言,通常以.yml为后缀的文件, 是一种直观的能够被电脑识别的数据序列化格式,并且容易被人类阅读,容易和脚本语言交互的, 可以被支持YAML库的不同的编程语...原创 2020-04-05 15:56:27 · 8077 阅读 · 0 评论 -
IDEA 报错:Command line is too long
idea版本:201903解决方法:(1)在项目 /.idea/workspace.xml 文件中找到 name 为 PropertiesComponent 的 标签 。 在你的启动项目那个服务中。如springcloud多服务的,启动父服务来启动项目,则在parent那改(2)添加一行代码,结构如下:<component name="PropertiesComponen...原创 2020-03-18 16:13:05 · 143 阅读 · 0 评论 -
@ConfigurationProperties与@Value的差异化使用
区别@ConfigurationProperties@Value功能批量注入配置文件中的属性一个个指定松散绑定(松散语法)支持不支持SpEL不支持支持JSR303数据校验支持不支持复杂类型封装支持不支持松散语法:标准方式 person.firstName方式一 大写用- person.first-nam...原创 2020-01-20 22:44:24 · 116 阅读 · 0 评论 -
yaml 文件的使用list或Map
# yml文件spring: #list<map> testList: - name: 小王 age: 12 - name: 小李 age: 13 # map<String,String> testMap: name: 小朱 age: 14testname: 小明获取配...原创 2020-01-18 22:11:21 · 19278 阅读 · 2 评论 -
mapper无法绑定
使用mapper 报无法绑定报这个错无非就是找不到映射的文件或者方法。那就一一排查:1:检查xml文件所在package名称是否和Mapper interface所在的包名一一对应;2:检查xml的namespace是否和xml文件的package名称一一对应;3:检查方法名称是否对应;4:去除xml文件中的中文注释;5:随意在xml文件中加一个空格或者空行然后保存。都尝试了...原创 2019-12-14 15:18:44 · 963 阅读 · 0 评论 -
java小记--获取请求参数
获取请求参数获取请求参数//请求参数json //使用@RequestBody注解,map或者自己构建class@RequestMapping(value = "/login2",method = RequestMethod.POST) public Map userLogin1( @RequestBody Map map){ System.out...原创 2019-12-14 15:13:39 · 118 阅读 · 0 评论 -
java之好文收藏
Java进程CPU占用高导致的网页请求超时的故障排查地址在Intellij IDEA中使用Debug地址Github技巧地址Java Web前端到后台常用框架介绍地址java代码优化(长期更新)地址...原创 2019-11-28 22:55:08 · 137 阅读 · 0 评论 -
spring cloud 某个子项目打jar包
命令说明1.compile,编译命令,会在你的项目路径下生成一个target目录,在该目录中包含一个classes文件夹,里面全是生成的class文件及字节码文件。2.package,这个命令会在你的项目路径下一个target目录,并且拥有compile命令的功能进行编译,同时会在target目录下生成项目的jar/war文件。3.install,该命令包含了package命令功能,不但会在...原创 2019-11-20 13:58:59 · 704 阅读 · 0 评论 -
com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectException: Connection refused: con
1、com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectException: Connection refused: connect或者com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any k...原创 2019-11-07 13:07:30 · 764 阅读 · 0 评论