随笔分类 - Java
摘要:学习要带着目的,参照现实问题 本次目标: 了解 CommonsLang3 API 文档,找对路后以后开发直接查询 API 文档,摈弃盲目的百度 掌握基础的字符串、日期、数值等工具方法,初步替代手搓的工具类 为什么要用 CommonsLang3? 比自己手写的工具方法安全性高,不易出 Bug 第三方工
阅读全文
摘要:普通maven项目配置编译器版本 参考maven官方文档 Setting the -source and -target of the Java Compiler maven有2种方法设置编译JDK版本,比如配置为 Java 1.8 版本 配置属性 <project> [...] <properti
阅读全文
摘要:本来是要修复前一个代码bug,修复的过程中发现原本的代码又丑又长,复用性差(但是能用),出于强迫症忍不住的去优化,测试还不充分,火急火燎的发到生产了,结果掉井了!导致多个订单线下物流发货发多了.... 万一有个别用户不管订单数量是不是自己下单的,直接签收了,再往回要就难了,那时还要加上来回运费。 当
阅读全文
摘要:分布式主键ID生成方案 分布式主键ID的生成方案有以下几种: 数据库自增主键 缺点: 导入旧数据时,可能会ID重复,导致导入失败 分布式架构,多个Mysql实例可能会导致ID重复 UUID 缺点: 占用空间大 UUID一般是字符串存储,查询效率低 没有排序,无法趋势递增 使用Redis生成ID 缺点
阅读全文
摘要:概述 观察者模式又被称为发布-订阅(Publish/Subscribe)模式,属于行为型模式的一种。 它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态变化时,会通知所有的观察者对象,使他们能够自动更新自己。 简单实现 主题接口和观察者接口 //主题接口 pub
阅读全文
摘要:本文是该教程视频的笔记 https://www.bilibili.com/video/BV15T4y1y7eH 1. 问题演示 将演示项目打包放到服务器运行 执行 curl http://localhost:8080/demo01/test 返回 success 说明项目运行正常 执行三次 curl
阅读全文
摘要:tomcat目录说明 先来看一下tomcat的目录: |-bin |-conf |-lib |-logs |-temp |-webapps |-work tomcat 的核心是servlet容器,叫 catalina。 其中以下目录是 tomcat 的核心目录,也就是 catalina 目录 |-c
阅读全文
摘要:日期时间对象 关于日期时间的操作可以分为两种: 转换:与字符串的互相转换,与时间戳的互相转换 计算:计算两个时间点之间的间隔、时间点与时间段的计算(计算下周N、下个月D日、去年M月D日等等) Java8 提供了三个类: 、`LocalTime LocalDateTime 2020 01 01 12:
阅读全文
摘要:Stream 用来处理集合数据的,通过 stream 操作可以实现 SQL 的拥有的大部分查询功能 Java8 API 官方文档 下面借助例子,演示 stream 操作 Java userList 列表 private List<User> userList = Arrays.asList( new
阅读全文
摘要:2014年3月18日发布了JavaSE 8 不追求技术的新,追求技术的稳定 本质:Lambda 表达式是一个匿名函数 作用:简化代码,增强代码的表达力 Lambda 语法格式 Lambda 表达式中的参数的数据类型可以省略,JVM 编译器能够根据上下文推算出,即“类型推断” 两个例子 函数式接口 !
阅读全文
摘要:"JWT(一):认识 JSON WebToken" "JWT(二):使用 Java 实现 JWT" 介绍 原理在 "上篇《JWT(一):认识 JSON Web Token》" 已经说过了,实现起来并不难,你可以自己写一个 jwt 工具类(如果你有兴趣的话) 当然了,重复造轮子不是程序员的风格,我们主
阅读全文
摘要:"JWT(一):认识 JSON WebToken" "JWT(二):使用 Java 实现 JWT" 什么是 JWT? JSON Web Token(JWT)是一种开放标准(RFC 7519),它定义了一种紧凑且自包含的方式,作为 JSON 对象在各方之间安全的传递信息。这个信息可以通过数字签名进行验
阅读全文
摘要:注解 InitBinder 是用来初始化绑定器Binder的,而Binder是用来绑定数据的,换句话说就是将请求参数转成数据对象。 @InitBinder用于在@Controller中标注于方法,表示为当前控制器注册一个属性编辑器或者其他,只对当前的Controller有效。 @InitBinder
阅读全文
摘要:ThreadLocal叫做线程变量,该变量在每个线程中都创建了一个副本,每个线程都只能访问自己内部的副本变量,即该变量对其他线程而言是隔离的。 源码里是这样注释说明的: /** * This class provides thread-local variables. These variables
阅读全文
摘要:1. 下载网络图片 1 public void download(String strUrl, String filename){ 2 try{ 3 URL url = new URL(strUrl); 4 HttpURLConnection conn = (HttpURLConnection) u
阅读全文
摘要:转载在 http://blog.csdn.net/shimiso/article/details/8595564 本文将由浅入深详细介绍Java内存分配的原理,以帮助新手更轻松的学习Java。这类文章网上有很多,但大多比较零碎。本文从认知过程角度出发,将带给读者一个系统的介绍。 进入正题前,首先要知
阅读全文
摘要:Java官网已经不提供除最新版本以外版本的JDK下载了,下载JDK1.7,密码: rsqg 本地Linux系统为Centos6.9,本身就没安装Java;已安装Java需要先卸载,卸载方法请百度。 1. 将下载好的 jdk-7u79-linux-x64.tar.gz 解压到 /usr/local/j
阅读全文
摘要:1. 对象导论 OOP 面向对象编程 C、Basic等语言所在的抽象仍要求在解决问题时基于计算机的解决,而不是基于所解决问题的结构来考虑。 要建立起问题空间的元素和解空间的对象之间一一映射的关系 万物皆对象;程序是对象的集合 每个对象都提供服务 当正在试图开发或者理解一个程序设计时,最好的方法之一就
阅读全文