Java
文章平均质量分 61
老衲呢
人若无名,专心练剑~!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【爬坑记录】Swagger2 Failed to start bean ‘documentationPluginsBootstrapper‘; nested exception is NPE
这几天使用 Swagger2 + bootstrap-ui 做 API 接口,但是集成到 SpringBoot 2.6.1 后死活跑不起来,一直报空针异常 解决方案 查找大量资料之后发现,在 Swagger2 的github issue 看到了这个回答:issuecomment-976766376,原来在 Springboot 2.6.0 之后是不支持这种方式启动 Swagger2 的,更改为 2.5.x 版本的 Springboot 即可 <!-- 整个导入 --> <parent&.原创 2022-04-30 00:18:04 · 1171 阅读 · 0 评论 -
Java 程序异常、错误返回值
程序异常、错误返回值 返回值类型 错误码 null 值 空对象 异常对象 展开说说 1. 返回错误码 函数返回值 预定错误码 全局变量 全局变量(枚举、常量等) 2. 返回 NULL 值 不建议使用,原因有二: 忘记判空抛出空指针异常 NULL Pointer Exception,NPE。 返回 null 值会使得程序逻辑变复杂(增加过多的判空操作),影响可读性 但是对于基本数据类型,无法返回 NULL 值替代 3. 返回空对象 空字符串 return ""; 空集合原创 2021-10-20 21:54:24 · 1375 阅读 · 2 评论 -
Swagger2 注解
Swagger2 注解 原文链接:Swagger2 注解 作为一个程序员,最讨厌两件事: 前辈代码没有写文档! 自己要去维护文档! 偶然间从公司前辈那里了解到了swagger工具,可以帮助自动生成接口文档,就简单的了解一下,写了一个小demo。 1. 简介 swagger优势: 文档自动生成。不用担心修改接口代码之后忘记更新文档的尴尬。 支持在线测试。不需要再用postman等,可以直接进行测试,并获取内容。 当然还有很多优势,没有研究很深入,自己体会吧。 2. 集成Swagger(Spring原创 2021-08-05 17:52:31 · 325 阅读 · 0 评论 -
Java文件下载-文件名下划线
本来今天高高兴兴,写个 Excel 文件下载,功能实现了,文件名却是 **____.xlsx**、**____.xls**,瞬间裂开...原创 2021-01-25 22:09:27 · 2210 阅读 · 2 评论 -
SSM整合Shiro认证授权的时候出现 JSESSIONID
问题描述: 整合 shiro 后,访问 localhost:8080 应该跳到 login.jsp 页面,但是给报了个 400,地址也转跳到了:http://localhost:8080/login;jsessionid=A9FB253EFF38D1D4F5AC835C36504DEB,自动在请求地址 url 中添加 jsessionid 截图如下: 解决: 在配置文件中添加这段代码: <!-- 会话管理器 --> <bean id="sessionManager" class=原创 2021-01-21 16:39:34 · 819 阅读 · 0 评论 -
【爬坑记录】单元测试(Junit)报错:NoClassDefFoundError: org/hamcrest/SelfDescribing
导入 Junit 的 jar 包,在单元测试中出现 java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing。 解决办法: 没有找到该类,下一个就好了,添加依赖就行了。 下载 hamcrest 传送门:hamcrest-all-1.3.jar 下载链接 分析过程 翻译下来就是没有找到 org/hamcrest/SelfDescribing 这个类,详细日志如下: java.lang.NoClassDefFoundError: org/hamc.原创 2020-11-09 14:56:29 · 520 阅读 · 0 评论 -
IDEA 中没有 web Application
问题描述 idea 不能创建 Java Web 项目 idea中没有web application 选项(如图) 解决方案 CTRL+alt+shift+/,选择registry,找到javaee.legacy.project.wizard 完成 就可创建web项目了(idea中就有了 web application选项了) 如果帮到你,麻烦点赞支持一下,谢谢你。 ...原创 2020-08-30 14:01:58 · 31442 阅读 · 52 评论 -
Java泛型
Java 泛型 为什么要用泛型? 我们先来看这么一个场景,我们来定义一个 Point 类,这是一个坐标点,其中有 x, y 两个成员变量,代码如下: class Point { int x; int y; Point(int x, int y){ this.x = x; this.y = y; } } 对于这样的一类,我们创建该方法的时候,那么我就可以这样创建: public static void main(String[] args)原创 2020-08-12 15:02:07 · 517 阅读 · 0 评论 -
Java 中的 String、StringBuffer、StringBuilder 效率
Java 中的 String、StringBuffer、StringBuilder 效率 《阿里巴巴 Java 开发手册》中有一条是关于字符串拼接的建议: 上面说使用 + 拼接会造成资源浪费,就是消耗内存,我们就简单模拟一下。 开干 使用 for 循环分别对String、StringBuffer、StringBuilder进行 10000 次字符串拼接,并统计耗时。 使用 String 拼接: static void StringTest() { String str = "";原创 2020-08-08 22:21:03 · 647 阅读 · 0 评论 -
创建 Bean 对象的三种方式
主要对 spring bean的管理细节进行参数,使用的案例是之前的保存账户的例子(为方便阐述,会对之前的代码进行一些调整),文末会有全部的源码。原创 2020-03-29 14:12:03 · 1113 阅读 · 0 评论 -
Spring IOC 为 MVC 解耦项目前期准备
上周写了两篇关于MVC解耦的文章,其实在 Spring 全家桶中,spring ioc 同样也是为解耦而存在,那我们就一步步的改造这个项目吧原创 2020-03-17 01:43:17 · 299 阅读 · 0 评论 -
工厂模式 + 单例模式实战
上篇文章使用工厂模式和反射为保存账户的功能进行解耦,可以决解缺少某个类时编译不出错,但是运行抛异常,从而降低耦合。原创 2020-03-09 16:18:27 · 2310 阅读 · 0 评论 -
工厂模式为 MVC 解耦
一般的解耦的思路: 1. 通过反射来创建对象,而避免使用 new 关键字 2. 通过读取配置文件来获取要创建对象的全限定类名原创 2020-03-07 23:07:49 · 904 阅读 · 0 评论 -
网站相关概念
网站相关概念 静态网站和动态网站 静态网站 内容固定 容易被检索 没有数据库支持 交互性差 动态网站 可以根据用户要求和选择动态改变和相应 自动更新 因用户的不同而不同的相应 服务器 简介 提供服务的机器 需要安装相应的软件(apche、iis) IP Internet Protocol ,互联网协议,用于互联网通讯 具有唯一性 域名 Domain ...原创 2020-03-03 13:34:28 · 1102 阅读 · 0 评论 -
Windows Kafka 配置 -> 启动教程
Windows Kafka 启动教程 修改 boker.id 和 log.dirs 进入kafka目录下,新建文件夹 kafka-logs 与文件夹 zk-dir,进入config目录下,打开server.properties broker.id=1 log.dirs=../kafka-logs 修改 zookeeper.properties 找到 dataDirs,改为 dataDir=../...原创 2020-02-15 18:54:51 · 1214 阅读 · 0 评论 -
类的设计技巧(OOP)
简单介绍几点让设计出来的类更有 OOP 的专业水准。 ---- 摘自《Java 核心技术·卷一》 1. 一定要保证数据私有 这是最重要的;绝对不要破坏封装性。有时候, 需要编写一个访问器方法或更改器方法, 但是最好还是保持实例域的私有性。很多惨痛的经验告诉我们, 数据的表示形式很可能会改 变, 但它们的使用方式却不会经常发生变化。当数据保持私有时, 它们的表示形式的变化不 会...原创 2019-03-28 11:35:49 · 1214 阅读 · 0 评论 -
try-catch-finally 执行顺序
序言 Java 的异常捕捉通常使用 try-catch 捕捉或者 throws 抛出处理。这篇文章就来探讨下 try-catch 的一些事。 try-catch 和 throws 异常处理 try-catch 和 throws 处理异常一般按照,如果底层异常就往上层抛出(throws) ,上层异常 try-catch 处理。(PS:这里底层上层是面向对象的编程语言的封装程度相对而言) try-catch 和 try-catch-finally 两者最大的区别就是,是否与 finally 结合使用。其实 fi原创 2019-09-01 10:08:17 · 1338 阅读 · 0 评论 -
Java 设计模式 -- 单例模式
设计模式是前辈们在多年开发工作中经验的总结,可以提高代码的可重用性、可靠性和规范性,让代码更容易理解,而单例模式是在Java中最重要、最简单、最常用的设计模式之一。单例模式有两种:懒汉模式和饿汉模式。原创 2019-07-18 20:45:54 · 321 阅读 · 0 评论 -
Java 中 for 和 foreach 效率的思考
Java 中 for 与 foreach 的效率对比,事实证明,foreach 的确要比 for 效率高,其原因竟是...原创 2019-06-04 01:59:43 · 1972 阅读 · 2 评论 -
记一次初级 Android 面试
前段时间依然裸辞了,上一份工作是某事业单位,身边的朋友就不明白我为啥要辞掉那么好的工作。其实吧,我觉得对于好这个定义,一直以来都是相对的,而不是绝对的。至于明白的人都知道,事业单位办事情相对于企业而言,还是有很大差别的。比如在工作效率方面,事业单位比较稳打稳扎,效率可能比较慢。企业、公司追求效益,要求的效率极高。这也是我一直想去互联网公司看看,所以就裸辞了,到跟团队老大提离职到交接完成总共就四天。这个我还是比较诧异的。不管怎么说,能这么快离职,也是这篇博客诞生的原因。原创 2019-05-04 01:46:53 · 555 阅读 · 2 评论 -
Java 隐式参数和显式参数
概念 public Employee(String n, double s) { super(); this.name = n; this.salary = s; } 显式参数:显式参数是在方法中括号中声明的参数,例如:在这个方法中,n和s就是显式参数 隐式参数:隐式参数表示在方法中使用,但是没有写在方法参数中也没有在方法体内声明的变量(在类中声明的变量),例如:上边方法中的nam...原创 2019-03-29 11:41:32 · 2518 阅读 · 0 评论 -
Java 类加载机制(初始化顺序)
关于 Java 类初始化顺序记录。 ----摘自《Java 核心技术·卷一》。 Java 类包含内容 静态属性:static 定义的属性 静态方法块:使用 static { ··· } 描述的方法块,也称静态代码块 普通属性:未带static定义的属性 普通方法块:使用 { ··· } 描述的方法块,也称代码块 构造函数:类名相同的方法 方法:普通方法,也称函数 初始化顺序 pub...原创 2019-03-29 10:52:22 · 1143 阅读 · 0 评论
分享