草庐IT

Java基础——JDK1.8后的日期处理类

Java1.0中包含了一个Date类,但是它的大多数方法已经在Java1.1引入Calendar类之后被弃用了。而Calendar并不比Date好多少。它们面临的问题是:可变性:象日期和时间这样的类对象应该是不可变的。Calendar类中可以使用三种方法更改日历字段:set()、add()和roll()。偏移性:Date中的年份是从1900开始的,而月份都是从0开始的。格式化:格式化只对Date有用,Calendar则不行。此外,它们也不是线程安全的,不能处理闰秒等。可以说,对日期和时间的操作一直是Java程序员最痛苦的地方之一。第三次引入的API是成功的,并且java8中引入的java.ti

Java基础——JDK1.8后的日期处理类

Java1.0中包含了一个Date类,但是它的大多数方法已经在Java1.1引入Calendar类之后被弃用了。而Calendar并不比Date好多少。它们面临的问题是:可变性:象日期和时间这样的类对象应该是不可变的。Calendar类中可以使用三种方法更改日历字段:set()、add()和roll()。偏移性:Date中的年份是从1900开始的,而月份都是从0开始的。格式化:格式化只对Date有用,Calendar则不行。此外,它们也不是线程安全的,不能处理闰秒等。可以说,对日期和时间的操作一直是Java程序员最痛苦的地方之一。第三次引入的API是成功的,并且java8中引入的java.ti

jdk17+spring6下打jar包

由于特定情况,本机下有多个jdk,而JAVA_HOME又只有一个。本人习惯在命令行下一个命令编译打包程序,如何解决这个问题?研究了不少时间,得到了两个解决方案:1.使用bat  -- 非常烂,不是很建议,如果您是系统管理员则另当别论。因为我们都知道编写纯bat实在不是很愉快,bat的语法是反人类的,至少让程序员很看不惯2.bat结合python--使用极少的bat结合python,实际就是在bat中调用python文件解决一些参数问题两种方案都要求批处理的第一个参数必须是jdk版本,目前这个参数的值简化为JDK17或者其它值如果不介意多打一些命令,就不要考虑后文内容。一、maven项目中pom

jdk17+spring6下打jar包

由于特定情况,本机下有多个jdk,而JAVA_HOME又只有一个。本人习惯在命令行下一个命令编译打包程序,如何解决这个问题?研究了不少时间,得到了两个解决方案:1.使用bat  -- 非常烂,不是很建议,如果您是系统管理员则另当别论。因为我们都知道编写纯bat实在不是很愉快,bat的语法是反人类的,至少让程序员很看不惯2.bat结合python--使用极少的bat结合python,实际就是在bat中调用python文件解决一些参数问题两种方案都要求批处理的第一个参数必须是jdk版本,目前这个参数的值简化为JDK17或者其它值如果不介意多打一些命令,就不要考虑后文内容。一、maven项目中pom

Centos 7 上安装 jdk 及问题小记

镜像下载、域名解析、时间同步请点击阿里云开源镜像站yum下载安装使用yum-ylistjav或者yumsearchjdk查找java相关安装包的列表yum-ylistjava搜索#yum-ylist搜索演示$yum-ylistjavaLoadedplugins:fastestmirrorLoadingmirrorspeedsfromcachedhostfile*base:mirrors.aliyun.com*updates:mirrors.aliyun.comAvailablePackagesjava-1.6.0-openjdk.x86_641:1.6.0.41-1.13.13.1.el7..

Centos 7 上安装 jdk 及问题小记

镜像下载、域名解析、时间同步请点击阿里云开源镜像站yum下载安装使用yum-ylistjav或者yumsearchjdk查找java相关安装包的列表yum-ylistjava搜索#yum-ylist搜索演示$yum-ylistjavaLoadedplugins:fastestmirrorLoadingmirrorspeedsfromcachedhostfile*base:mirrors.aliyun.com*updates:mirrors.aliyun.comAvailablePackagesjava-1.6.0-openjdk.x86_641:1.6.0.41-1.13.13.1.el7..

代理模式——JDK动态代理与CGLib原理及对比分析

1.前言首先回顾下代理模式(ProxyPattern)的定义:代理模式指为其他对象提供一种代理,以控制这个对象的访问,属于结构型设计模式。其适用于在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端于目标对象之间起到中介的作用。代理模式主要分为静态代理和动态代理两种方式,静态代理需要手动创建代理类,代理的目标对象是固定的;动态代理使用反射机制,代理的目标对象是活动的,不需要创建代理类即可给不同的目标随时创建代理。本篇重点探究动态代理的实现。2.JDK动态代理JDK动态代理采用字节重组,重新生成对象来替代原始对象,以达到动态代理的目的。JDK动态代理生成对象的步骤如下:

代理模式——JDK动态代理与CGLib原理及对比分析

1.前言首先回顾下代理模式(ProxyPattern)的定义:代理模式指为其他对象提供一种代理,以控制这个对象的访问,属于结构型设计模式。其适用于在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端于目标对象之间起到中介的作用。代理模式主要分为静态代理和动态代理两种方式,静态代理需要手动创建代理类,代理的目标对象是固定的;动态代理使用反射机制,代理的目标对象是活动的,不需要创建代理类即可给不同的目标随时创建代理。本篇重点探究动态代理的实现。2.JDK动态代理JDK动态代理采用字节重组,重新生成对象来替代原始对象,以达到动态代理的目的。JDK动态代理生成对象的步骤如下:

Linux上安装jdk Tomcat mysql redis等

1.安装JDk  1.1这里使用xshell中xfxp进行文件的上传,将jdk二进制包上传到Linux服务器上 下载地址:https://www.oracle.com/java/technologies/downloads/#java8   或者这里有下载好的安装包:链接:https://pan.baidu.com/s/1ZSJxBDzDaTwCH2IG-d2Gig  提取码:fstt 1.2上传成功后进行解压   使用命令:tar-zxvfjdk-8u361-linux-x64.tar.gz-C/usr/local将上传的文件解压到/usr/local目录下 解压完成后需要配置配置环境,进入

Linux上安装jdk Tomcat mysql redis等

1.安装JDk  1.1这里使用xshell中xfxp进行文件的上传,将jdk二进制包上传到Linux服务器上 下载地址:https://www.oracle.com/java/technologies/downloads/#java8   或者这里有下载好的安装包:链接:https://pan.baidu.com/s/1ZSJxBDzDaTwCH2IG-d2Gig  提取码:fstt 1.2上传成功后进行解压   使用命令:tar-zxvfjdk-8u361-linux-x64.tar.gz-C/usr/local将上传的文件解压到/usr/local目录下 解压完成后需要配置配置环境,进入