java
keeper42
Just do one thing and do it well! 要么别做,要做就做到最好!
展开
-
控制论
xxx原创 2022-06-05 07:43:00 · 477 阅读 · 0 评论 -
系统论。
zzz原创 2022-06-05 07:41:56 · 362 阅读 · 0 评论 -
工作三年的Java程序员应该达到什么水平?
对于大公司而言,会在如下两个时间节点之前进行对员工一年的绩效考核和奖金发放。以12月31日为财年的,1月份考核统计,2月份发奖金,3-4月份面试/跳槽。以6月30日为财年的,7月份考核,8月份发奖金,9-10月份面试/跳槽。因此,这两个时间段是大多数程序员跳槽的高峰期。但是,无论如何建议大家做好自己的职业规划,不要为了跳槽而跳槽,眼光要放长远一点,千万不要裸辞。。。好了,言归正传,本文主要回答一个读者的提问。问题:一般工作的三年的程序员应该达到什么样的水平才算合格呢?下文的答案是我工转载 2022-04-28 10:33:48 · 1379 阅读 · 0 评论 -
markdown生成目录
方法一:1. 以“#”来定义标题层级;2. 在需要生成目录的地方敲入[TOC],markdown会根据文章的标题层级自动生成目录。方法二:下载并安装Typora(官网:https://www.typora.io/),一个markdown编辑器,非常好用。...原创 2020-06-29 17:29:21 · 8562 阅读 · 2 评论 -
Java快速学习路线图
注:引用自尚硅谷2022年度全网最全Java学习路线 - 哔哩哔哩JavaSE --> MySQL--> JDBC --> JavaWeb --> Spring5 --> SpringMVC --> MyBatis --> Maven --> Ssm框架整合案例 --> Git/GitHub --> Redis6 --> MySQL高级优化 --> MyBatisPlus -->Spring注解驱动开发 --> Z.原创 2022-02-14 07:25:55 · 195 阅读 · 0 评论 -
linux的sz与rz命令:下载与上传文件
工作中需要在Linux和Windows之间传输文件时,一般使用winscp或者ftp工具来完成,最近才知道有sz和rz这两个命令,方便好用。sz 下载从Linux下载文件到本机 , 在Linux终端输入命令回车后,选择本地存储路径即可。命令格式: sz filename 下载文件filename sz file1 file2 下载多个文件 sz dir/* 下载dir目录下所有文件rz 上传从本地上传文件到Linux,在Linux终...原创 2022-01-14 18:23:31 · 2241 阅读 · 0 评论 -
2021-11-29 数据库索引
索引就是为了调高数据的查询效率索引的常见模型实现索引的数据结构有很多,最常见的也是比较简单的数据结构有哈希表,有序数组和搜索树。哈希表哈希表是一种以键-值(key-value)形式存储数据的结构,我们只需要输入查找的键key,就可以得到对应的值value。哈希的思路是,把值放在数组里,用一个哈希函数把key换成一个确定的位置,然后把value放在数组的这个位置。但是会有一种情况,就是多个不同的key有可能通过哈希函数的换算得到相同的位置,解决这种情况就是在这个位置拉出一个链表原创 2021-12-04 21:41:43 · 81 阅读 · 0 评论 -
2021-11-26 判空
2021.11.26NullPointerException 是 Java 代码中最常见的异常,我将其最可能出现的场景归为以下 5 种:参数值是 Integer 等包装类型,使用时因为自动拆箱出现了空指针异常;字符串比较出现空指针异常;诸如 ConcurrentHashMap 这样的容器不支持 Key 和 Value 为 null,强行 put null 的 Key 或 Value 会出现空指针异常;级联调用,A 对象包含了 B,在通过 A 对象的字段获得 B 之后,没有对字段判空就级联原创 2021-12-04 21:37:34 · 281 阅读 · 0 评论 -
2021-11-25 异常处理
不建议在框架层面进行异常的自动、统一处理,尤其不要随意捕获异常。但是,框架可以做兜底工作。如果异常上升到最上层逻辑还是无法处理的话,可以以统一的方式进行异常转换,比如通过 @RestControllerAdvice + @ExceptionHandler,来捕获这些“未处理”异常。 @RestControllerAdvice @Slf4j public class RestControllerExceptionHandler { private static...原创 2021-12-04 21:35:18 · 88 阅读 · 0 评论 -
2021-11-25 日志处理
原创 2021-12-04 21:34:17 · 150 阅读 · 0 评论 -
2021-11-25 接口设计
接口设计 @Data public class APIResponse<T> { private boolean success; private T data; private int code; private String message; } 版本控制,定义接口版本 //通过URL Path实现版本控制 @GetMapping("/v1/api/user")...原创 2021-12-04 21:33:06 · 181 阅读 · 0 评论 -
2021-11-27 自定义接口挡板
该好好学习一下注解切面了。。。自定义注解通用切片获取当前接口的包名、方法名和参数个数,组装成唯一key,再调用通用挡板dubbo服务去数据库查找唯一key 配置的值,解析成该接口的返回值返回给调用方。...原创 2021-12-04 21:37:57 · 487 阅读 · 0 评论 -
2021-11-23 FtpSupport
FtpSupport@DubboServicepublic class FtpSupportProvider implements IFtpSupportProvider { @Autowired private FtpSupport ftpSupport; @Override public boolean upload(FtpOrgEnum lendOrg, String remotePath, String localFilePath) {原创 2021-12-04 21:28:10 · 173 阅读 · 0 评论 -
String与List<String>的互换
// 字符串String转List<String> String str = "asdfghjkl"; List<String> lis = Arrays.asList(str.split("")); lis.forEach(System.out::println); // List<String>转字符串String System.out.println(String.jo...原创 2021-11-26 17:27:51 · 254 阅读 · 0 评论 -
2021.11.26 解决mybaitsplus更新null值失败问题
在需要更新的字段上加上该注解:@TableField(updateStrategy = FieldStrategy.IGNORED)原创 2021-11-26 10:40:02 · 169 阅读 · 0 评论 -
2021-11-24 代码重复的解决方法
第一种代码重复是,有多个并行的类实现相似的代码逻辑。我们可以考虑提取相同逻辑在父类中实现,差异逻辑通过抽象方法留给子类实现。使用类似的模板方法把相同的流程和逻辑固定成模板,保留差异的同时尽可能避免代码重复。同时,可以使用 Spring 的 IoC 特性注入相应的子类(工厂模式),来避免实例化子类时的大量 if…else 代码。第二种代码重复是,使用硬编码的方式重复实现相同的数据处理算法。我们可以考虑把规则转换为自定义注解,作为元数据对类或对字段、方法进行描述,然后通过反射动态读取这些元数据、字段或调用方原创 2021-11-23 20:31:09 · 933 阅读 · 0 评论 -
2021-11-20~2021-11-21 叕是一个躺尸的周末
叕是一个躺尸的周末。这周末,nc般刷着B站推荐的视频,一个接着一个地刷,仿佛脑子在那些时刻是空掉的,最后浪费的只是时间,自己并不能收获任何东西,这就像小时候看电视(广告)一样,若不是带着目的去搜索视频,那么无非只是浪费时间罢了……周六:温铁军:社会设计的宏观视角:底线思维与生态社会(2h);土地金融:中国增长的货币解释(厦大建筑/经济学院教授 赵燕菁)(2h);赵燕菁:城市化模式与选择(万恶的土地财政助力中国经济发展) (1h)。看了一晚上的讲演;上午与下午nc般刷着B站……周日:上午看了《超越地原创 2021-11-23 02:28:45 · 184 阅读 · 0 评论 -
2021-11-22
背单词(1/1)原创 2021-11-22 23:57:55 · 170 阅读 · 0 评论 -
2021-11-16\17\18\19
下班回到家好累,累得只想睡觉,身体困乏,第二天又起的晚……除了背单词,其它的都没执行,两天没学习了……原创 2021-11-18 14:30:44 · 57 阅读 · 0 评论 -
macbook黑屏的三种解决方法
一、尝试进入安全模式1. 关闭Mac Book 。2. 按电源按钮,听到启动声后,立即按住 Shift 键。3. 当看到灰色 Apple 图标和进度指示器(看起来像旋转齿轮)时,松开 Shift 键。4. 在 Mac OS X v10.4 或更高版本启动期间,您会在登录窗口中看到“安全启动”,即使是正常自动登录也会显示。在 Mac OS X v10.2 至 v10.3.9 启动期间,您会在 Mac OS X 启动屏幕上看到“安全启动。二、重置PRAM1. Mac Book关机原创 2021-11-18 14:15:41 · 25911 阅读 · 0 评论 -
2021-11-15
每天背50个单词(1/1)跑步(1/1)中午刷面经(0/1)看B站学习NIO(2/2)原创 2021-11-16 09:38:57 · 43 阅读 · 0 评论 -
2021-11-13~2021-11-14 周末又躺尸
周末又躺尸、無腦刷B站……紀錄片:涼子訪談錄、浴血潮汕、故宮/長城、燃點……up主:梁永安、郭傑瑞、ppppp、涼子、孟羽童、許單單……背完百詞斬之托業單詞、抄完《世説新語》字帖、看完《八次危機》、看《明史》,然而技術又沒學……可能是由於慣性作用吧,之前周末懶散慣了,現在周末坐在書桌前竟無法靜下心來學習片刻……需知,人之道,损不足以奉有余。需知,富有的,给他更多;没有的,把他仅有的也拿走。需知,每天要反省自己,是在0.99的轨道上,还是1.00的轨道,还是在1.01的轨道。...原创 2021-11-15 20:39:53 · 366 阅读 · 0 评论 -
2021-11-12
每天背50个单词(1/1)跑步(1/1)中午刷面经(1/1)看B站学习NIO(1/2)晚上坚持看50页书(0/1)极客时间学习(0/1)原创 2021-11-13 08:28:27 · 301 阅读 · 0 评论 -
Java业务开发之安全问题
安全问题任何客户端传过来的数据都是不能直接信任的HTTP请求,任何客户端传过来的数据都是不能直接信任的,不能信任请求头与请求体里的任何内容。客户端传给服务端的数据只是信息收集,数据需要经过有效性验证、权限验证等后才能使用,并且这些数据只能认为是用户操作的意图,不能直接代表数据当前的状态。如果接口面向内部服务,由服务调用方传入用户 ID 没什么不合理,但是这样的接口不能直接开放给客户端或 H5 使用。如果你的接口直面用户(比如给客户端或 H5 页面调用),那么一定需要用户先登录才能使用。登录后原创 2021-11-12 00:19:01 · 1318 阅读 · 0 评论 -
2021-11-11
每天背50个单词(1/1)跑步(1/1)中午刷面经(1/1)看B站学习视频(0/1)晚上坚持看50页书(0/1)极客时间学习(1/1)原创 2021-11-12 00:15:13 · 346 阅读 · 0 评论 -
@Valid No validator could be found for constraint
No validator could be found for constraint报错,是因为加了验证判断@NotNull,@NotEmpty,@NotBlank区别@NotNull是基础类型上的@NotEmpty是在集合上的@NotBlank是在String类型上的原创 2021-11-11 16:39:32 · 227 阅读 · 0 评论 -
2021-11-10
跑步(1/1)中午刷面经(1/1)看MybatisPlus视频(1/2)晚上坚持看50页书(0/1)原创 2021-11-11 04:36:49 · 313 阅读 · 0 评论 -
PostConstruct&StrategyMode&Annotation
@PostConstruct public void init(){ Map<String, Object> beans = applicationContext.getBeansWithAnnotation(StrategyMode.class); if(!CollectionUtils.isEmpty(beans)){ for(Map.Entry<String, Object> entry : beans....原创 2021-11-09 19:10:03 · 59 阅读 · 0 评论 -
2021-11-08
学习lambdastream操作、定位应用问题等。一、做好监控主机层面,对 CPU、内存、磁盘、网络等资源做监控。如果应用部署在虚拟机或 Kubernetes 集群中,那么除了对物理机做基础资源监控外,还要对虚拟机或 Pod 做同样的监控。监控层数取决于应用的部署方案,有一层 OS 就要做一层监控。网络层面,需要监控专线带宽、交换机基本情况、网络延迟。中间件和存储层面,都要做好监控,不仅仅是监控进程对 CPU、内存、磁盘 IO、网络使用的基本指标,更重要的是监控组件内部的一些重要指标。比如.原创 2021-11-09 10:47:33 · 978 阅读 · 0 评论 -
2021-11-06 ~ 2021-11-07
一到周末就只想躺尸,惭愧至极……周末躺在床上看了《清史》、《瓦尔登湖》、《城市的胜利》等,其余时间不是在刷B站就是在下象棋(上瘾了)……周六还看了《你好,中国》、《美国铁路之旅》等纪录片……周天早上跑了步,吃了早餐,不久后出发去了老爸那儿坐了大半天,老爸做了一大桌子菜,实在是吃不完啊!时间一去不复返,蹉跎岁月,悔不当初,懊悔不已啊!...原创 2021-11-08 15:14:42 · 57 阅读 · 0 评论 -
2021-11-05
加班到八点。原创 2021-11-05 23:59:08 · 53 阅读 · 0 评论 -
2021-11-01
重温springbootIOC、AOP、远程调用……原创 2021-11-01 23:58:19 · 53 阅读 · 0 评论 -
2021-11-02
学习[腾讯课堂]之SpringBoot原创 2021-11-02 23:59:12 · 67 阅读 · 0 评论 -
2021-11-04
晚上回家太困了,倒头就睡。第二天起来看了java异常处理机制等……原创 2021-11-05 11:57:48 · 48 阅读 · 0 评论 -
Java Cloneable
一.Cloneable 的用途Cloneable和Serializable一样都是标记型接口,它们内部都没有方法和属性,implements Cloneable表示该对象能被克隆,能使用Object.clone()方法。如果没有implements Cloneable的类调用Object.clone()方法就会抛出CloneNotSupportedException。二.克隆的分类(1)浅克隆(shallow clone),浅拷贝是指拷贝对象时仅仅拷贝对象本身和对象中的基本变量,而不拷贝对象包含原创 2021-11-04 08:33:51 · 518 阅读 · 0 评论 -
2021-11-03
学习[腾讯课堂]之SpringBoot学习文件流、ftp、接口对接etc学习设计模式在自己的机子上配置环境……原创 2021-11-03 23:55:39 · 47 阅读 · 0 评论 -
java pdf2jpg
import org.apache.commons.lang3.StringUtils;import org.apache.pdfbox.pdmodel.PDDocument;import org.apache.pdfbox.rendering.ImageType;import org.apache.pdfbox.rendering.PDFRenderer;import javax.imageio.ImageIO;import java.awt.image.BufferedImage;i...原创 2021-10-14 14:51:39 · 135 阅读 · 0 评论 -
javax.mail.FolderClosedException: * BYE JavaMail Exception: java.io.IOException: Connection dropped
解决方案:将floderidle设置为true:folder.idle(true);这样其实只是忽略异常而已;或者就是忽略这个异常(doge具体代码见handleIdle:...// 忽略任何失败,直到必须中止... /** * Read a response from the server while we're in the IDLE state. * We hold the messageCacheLock while processing the *..原创 2021-10-13 16:46:16 · 2330 阅读 · 0 评论 -
springboot启动时执行任务CommandLineRunner
@EnableTransactionManagement@SpringBootApplication( scanBasePackages = {}, exclude = {QuartzAutoConfiguration.class, MongoAutoConfiguration.class})public class ServiceApplication implements CommandLineRunner { pu.原创 2021-10-13 15:47:58 · 106 阅读 · 0 评论 -
实现InputStream输入流序列化
public class SerializableStream implements Serializable { private final static int LENGTH = 1024;// private transient InputStream inputStream; private byte[] bytes; public byte[] getBytes() { return bytes; } public v...原创 2021-09-24 10:43:38 · 979 阅读 · 0 评论