分类

链接

2024 年 11 月
 123
45678910
11121314151617
18192021222324
252627282930  

近期文章

热门标签

新人福利,免费薅羊毛

Java基础问题13个,你都会哪些?

大家好,我是 V 哥。今天看了阿里云开发者社区关于 Java 的灵魂拷问,一线大厂在用 Java 时,都会考虑哪些问题呢,对于工作多年,又没有大厂经历的小伙伴不妨看看,V 哥总结的这13个为什么,你都会哪些?先赞后看,绝不摆烂。 1. 为什么禁止使用 BigDecimal 的 equals 方法做等值比较? BigDecimal 的 equals 方法在等值比较时存在一些问题,通常不建议直接使用它来判断数值的相等性。下面是主要原因以及推荐的替代方案: 1. equals 方法比较严格,包含了精度和符号的比较 BigDecimal.equals 不仅比较数值本身,还...

JAVA 暂无评论 阅读(26)

不重新打包项目并替换部分jar包

不重新打包项目并替换部分jar包 使用场景:比如在紧急修复fastjson问题,或者没有源码的JAR包 1、解压原jar包(xxx为自己的jar包名) jar -xvf xxxxx.jar   2、删除原jar需要被替换的jar包文件 rm -f ./BOOT-INF/lib/xxxxx.jar   3、将提前准备好的新jar包文件替换至上一步删除的路径中 mv xxxxx.jar BOOT-INF/lib/   4、重新压缩为jar包(此处test.jar就是你需要修改为的jar包名字,自行修改) jar -cfM0 test.jar BOOT-INF/ META-INF/ org/  

JAVA 暂无评论 阅读(95)

接收企微事件回调 Content type ‘text/xml;charset=UTF-8’ not supported

@Log4j2 @Configuration public class WebConfig extends WebMvcConfigurationSupport { @Override public void configureMessageConverters(List<HttpMessageConverter<?>> converters) { super.configureMessageConverters(converters); //支持XML List<MediaType> xmlMediaTypes = new ArrayList<>(); xmlMediaTypes.add(MediaType.TEXT_XML); StringHttpMessageConverter xmlMessageConverter = new StringHttpMessageCo...

JAVA 暂无评论 阅读(100)

springboot使用lock4j实现并发控制

一般情况下,我们使用乐观锁来处理并发超发的情况,但是,乐观锁在某些情况下,并不能彻底解决超发情况,于是只能上悲观锁(synchroized, 独占线程),特别是在分布式的情况下分布试锁就更为常见了。 下以使用一种基于redis的分布试锁来实现并发控制。 pom.xml增加: <!--若使用redisson作为分布式锁底层,则需要引入--> <dependency> <groupId>com.baomidou</groupId> <artifactId>lock4j-redisson-spring-boot-starter</artifactId> <version>2.2.2</version...

JAVA 暂无评论 阅读(151)

springboot全局增加sentinel

pom.xml增加: <!--sentinel--> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-core</artifactId> <version>1.8.6</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-annotation-aspectj</artifactId> <version>1.8.6</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> ...

JAVA 暂无评论 阅读(131)

linux快速搭建轻量级efk日志系统

一、前言 为什么要用EFK(or ELK):   EFK 中的F是 filebeat还是fluentd? 单机推荐用filebeat,非常轻量级,占用内存为10M   二、安装过程 首先,通过docker-compose安装最方便,这里是yml文件: 注意1:es, kibana, filebeat版本最好一致 注意2:物理机最低内存2G才能安装(es大概800M,kibana 200M, filebeat 100M), 实在不行加swap!   version : '3' services:     es:     container_name: es     image: docker.elastic.co/elasticsearch/elasticsearch:7.2.0     ports:       - "9200:9...

DevOps, Docker, JAVA, 云计算, 分布式, 大数据, 微服务, 系统架构 暂无评论 阅读(386)

Springboot整合Swagger常用注解

swagger注解主要是用来给swagger生成的接口文档说明用的 1、@Api 使用范围:用在 类上 注解,控制整个类生成接口信息的内容,表示对类的说明,也代表了这个类是swagger2的资源 参数: tags:说明该类的作用,参数是个数组,可以填多个,在UI视图中就显示几个控制器访问菜单 value:该参数没什么意义,在UI界面上不显示,所以不用配置 description :用户基本信息操作,已过时,不建议使用   2、@ApiModel 使用范围:用于响应实体类上,用于说明实体作用 参数: value:自定义实体 description:详细描述实体...

JAVA 暂无评论 阅读(90)

swagger隐藏authentication参数

@Bean public Docket oauthApi() {     return new Docket(DocumentationType.SWAGGER_2)         .groupName("oauth")         .apiInfo(metaData())         .ignoredParameterTypes(Authentication.class)         .select()         .apis(RequestHandlerSelectors.any())         .paths(PathSelectors.ant("/oauth/**"))         .build()         .securitySchemes(Collections.singletonList(securitySchema()))         .securityContexts(Collections.singletonList(securityContext())); }

JAVA 暂无评论 阅读(69)

Spring Security 中的自定义PreAuthorize 注解

controller: @NeedAdmin @GetMapping(path ="user", produces ="application/json") publicResponseEntity<User> getUser(@RequestParamString login){ ... } 自定义注解anno: @PreAuthorize("hasAuthority('Admin')") @Target({ElementType.METHOD, ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) public @interface  NeedAdmin { }

JAVA 暂无评论 阅读(94)

Expected one result (or null) to be returned by selectOne(), but found: 2

mybatis-plus中getOne方法只能取一条数据,如果取得多条数据会报错,要么换其他方法,要么只选择其中一条,在条件构造器Wrapper结尾加上.last(“limit 1”)即可只选一条(第一条)        //根据时间获取gift     private Gift generateGift(String openid) {           LambdaQueryWrapper<Gift> query = new LambdaQueryWrapper<>();         query.eq(Gift::getUsed, 0);         query.le(Gift::getWintime, TimeUtil.getNowTimeDate());         query.last("limit 1");         boolean fl...

JAVA 暂无评论 阅读(122)