自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 Java计算两个日期之间的天数、年数

计算两个日期之间的年数 public static int yearsBetween(String firstDate, String secondDate) { Date std1 = strToDate(firstDate); Date std2 = strToDate(secondDate); Calendar cal1 = Calendar.getInstance(); Calendar cal2 = Calendar.getI

2021-08-02 15:07:47 1411 1

原创 Java获取指定日期的下个月这一天,下年的这一天

根据指定日期获取下一年的这一天特殊例子:2020/2/29这一天 获取下一年的日期为2021/2/28。其他不变 public static String sameDayOfNextYear(String dateStr) { Calendar cal = setCalendarTime(dateStr); cal.add(Calendar.YEAR, 1); if (!isLastDayOfMonth(dateStr)) { cal.set(C

2021-08-02 15:05:30 2760 1

原创 Java获取指定日期的本月,上月,下月的最后一天

获取指定日期:上个月的最后一天 public static Date endOfLastMonth(Date date) { Calendar cal = setCalendarTime(date); cal.add(Calendar.MONTH, -1); cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DAY_OF_MONTH)); return cal.ge

2021-08-02 14:39:39 620 2

原创 Java获取指定日期的前一天,后一天

获取指定日期的前一天参数为String,返回String public static String theDayBeforeStr(String dateStr) { Calendar cal = setCalendarTime(dateStr); cal.add(Calendar.DATE, -1); Date beforeDate = cal.getTime(); SimpleDateFormat sdf = new Simpl

2021-08-02 14:37:22 425 1

原创 Calendar相关方法

设置Calendar的时间值表示的Calendar时间 --> 参数为String --> 固定为 yyyy-MM-dd 格式 public static Calendar setCalendarTime(String dateStr) { Date std = strToDate(dateStr); Calendar cal = Calendar.getInstance(); cal.setTime(std); retur

2021-08-02 14:16:13 77

原创 Java获取指定日期的年、月、日、时、分、秒

//自定义日期和时间参数类型 public final static String yyyy = "yyyy"; public final static String yMd = "yyyy-MM-dd"; public final static String yMdHms = "yyyy-MM-dd HH:mm:ss"; public final static String yMdhms = "yyyy-MM-dd hh:mm:ss"; public final s

2021-08-02 14:13:22 1043

原创 Java中日期转字符串,字符串转日期 的流程方法

String转Date//自定义的日期和时间格式 public final static String yyyy = "yyyy"; public final static String yMd = "yyyy-MM-dd"; public final static String yMdHms = "yyyy-MM-dd HH:mm:ss"; public final static String yMdhms = "yyyy-MM-dd hh:mm:ss"; pub

2021-08-02 14:04:29 122

原创 Redis is configured to save RD

1.问题(error) MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persist on disk. Commands that may modify the data set are disabled, because this instance is configured to report errors during writes if RDB snapshotting fail

2021-05-26 10:05:34 77

原创 TCP协议的三次握手与四次挥手(通俗易懂)

TCP协议 :连接(三次握手),断开(四次挥手)术语:SYN同部位,ACK确认位,ack确认号,seq序号。SYN=1表示进行一个连接请求,ACK=1确认有效,ACK=0确认无效,seq序号是随机值,ack 对方发送序列号+1。TCP三次握手1.客户端发送一个请求到服务端,问他在不在,携带SYX=1,seq=x(客户端随机生成的序列号)。2.服务器要告诉客户端,说他收到了请求,会给客户端一个响应,携带SYN=1,ACK=1,ack=x+1,seq=y(服务器端随机生成的序列号)3.客户端也要给服

2021-03-26 21:12:54 386 3

原创 快速理解JVM

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档快速理解JVM一、什么是JVM二、JVM的内存结构1.程序计数器2.虚拟机栈3.堆4.方法区5.本地方方法栈总结提示:以下内容是我个人的小总结,如有问题欢迎提出,感恩。一、什么是JVM英文:Java Virtual Machine是java程序的运行环境(java二进制字节码的运行环境)位置:JRE=JVM+基础类库 ; JDK=JRE+编译环境二、JVM的内存结构1.程序计数器作用:用于保存JVM中下一条所要运行指令的地址

2021-03-23 16:30:19 107 2

原创 集合类不安全的解决方法

集合类不安全之list,set与mapArrayList 线程不安全,为什么不安全呢?看下面截图看add源码,为了保证并发性和效率,add方法没有加锁(synchronized)为了解决arrayList线程不安全这个问题,我们有以下三种解决方法:1.继承vector方法(vector的add方法有锁)2.collections是collection集合类的工具类(利用工具类来找个线程安全的辅助类继承),我们可以看到collections里面还有相似的synchronizedMap和syn

2021-03-22 09:58:15 98 1

原创 关于ABA问题(隔壁老王问题)

同时执行两个线程,第一个线程里面隔壁老王来了一次又走了,第二个线程等待一秒在执行解决ABA问题:加上版本号

2021-03-21 20:02:54 87

原创 volatile的不保证原子性理解

inc++在多线程的情况下是非线程安全的 ,多条线程进行工作时,由于速度过快上个线程还未把值更新到主内存,下一个线程就已更新,所以会造成值缺少,出现写覆盖,运行出来的值会小于10000数据是不完整的,所以volatile不能保证原子性要想解决上述问题,保证JMM的原子性,有两种解决办法:第一:在increase方法上加锁,sychronized关键字第二:用下面的AtomicInteger类的自增方法,代替number++方法,...

2021-03-21 19:59:58 89

原创 CAS底层源码理解

谈谈对unsafe的理解?上述代码注解

2021-03-21 19:54:53 49

原创 CAS是啥?CAS的缺点?

CAS(compare and swap)比较并交换如果线程的期望值与物理内存的真实值一样,就修改本次线程的更新值,并打印为true如果线程的期望值与物理内存的真实值不一样,修改失败,重新获取物理内存的真实值底层原理...

2021-03-21 19:50:05 60

原创 JUC常见的包:CyslicBarrier ,CountDownLatch,Semaphore抢车位

CyslicBarrier自加CountDownLatch自减这个时候我们就要找一个方法,让所有的线程都走完了最后走。我们现在要求有顺序,比如:1楚国,2魏国,3燕国。。(利用枚举)枚举类Semaphore抢车位Semaphore(有加有减,一个线程离开另一个线程就可以站住)...

2021-03-21 19:46:16 150

原创 error:Communication link failure

Communication link failure这个错误是因为,电脑导入了公司的数据库,没改数据库端口ip信息改成这个就可以了

2021-03-21 19:29:06 282

原创 新加一个svn项目需要配置的东西

1.配置maven仓库 File->setting2.配置SDK项目名右键点击3.添加jdk4.配置Active profiles

2021-03-21 19:24:52 71

原创 svn项目的配置与导入

File–>settingssvn环境引入后,开始导入svn上的项目然后输入存放的文件地址就可以了

2021-03-21 19:20:55 84

原创 Mongodb地理位置检索

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2021-03-21 18:49:40 480

原创 RBAC权限控制

RBAC控制权限一、需求二、使用rabc思想进行设计1.图片展示2.数据库设计(添加了角色管理)把角色和菜单联系到一起3.代码设计pojo类设计页面设计Controller层Service层Mapper层4.根据角色不同按钮不同RBAC 中文名称:基于角色的访问控制作用:实现访问控制核心:角色英文名称:(Role-BasedAccess Control)解释:一种思想.根据RBAC思想进行数据库设计,根据数据库设计更好的完成权限控制。权限控制常用分类:菜单功能:url控制(控制访问不同的控

2021-03-21 18:31:57 220

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除