自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 suse linux修改系统时间

date -s “2023/05/22 08:43:00” 将系统时间设定成2023年05月22日08点43分。步骤二:hwclock --systohc 写入CMOS,即将硬件时钟调整为与目前的系统时钟一致;步骤一:date -s 修改系统时间;步骤三:date显示系统的日期与时间。

2023-05-22 10:07:13 449

转载 springmvc——基于xml的异常映射和基于注解的异常映射

springmvc——基于xml的异常映射和基于注解的异常映射SpringMVC提供了基于XML和基于注解两种异常映射机制。这两种异常映射不能够只使用一个,他们需要一起使用。因为有些异常是基于注解异常映射捕获不到的。在springmvc中,一个请求如果是由mvc:view-controller处理的,在这过程中如果抛出了异常,那么就得用基于xml的异常映射来捕获处理这个异常。如果请求是有@RequestMapping这个注解来处理的,在这过程中发生了异常,那么就得使用基于注解的异常映射来捕获并处理这个异

2021-02-06 10:47:30 191

原创 nacos集群搭建

连接https://www.cnblogs.com/larscheng/p/11427733.html

2020-06-07 11:43:19 115

原创 分而治之的java类ForkJoin

Java 7开始引入了一种新的Fork/Join线程池,它可以执行一种特殊的任务:把一个大任务拆成多个小任务并行执行。比如要计算一个超大数组的和,最简单的做法是用一个循环在一个线程内完成:┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─└─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─还有一种方法,可以把数组拆成两部分,分别计算,最后加起来就是最终结果,这样可以用两个线程并行执行:┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐└─

2020-05-17 10:24:38 101

原创 StampedLock

ReadWriteLock可以解决多线程同时读,但只有一个线程能写的问题。分析ReadWriteLock,会发现它有个潜在的问题:如果有线程正在读,写线程需要等待读线程释放锁后才能获取写锁,即读的过程中不允许写,这是一种悲观的读锁。要进一步提升并发执行效率,Java 8引入了新的读写锁:StampedLock。StampedLock和ReadWriteLock相比,改进之处在于:读的过程中也允许获取写锁后写入!这样一来,我们读的数据就可能不一致,所以,需要一点额外的代码来判断读的过程中是否有写入,这种

2020-05-16 20:59:48 68

原创 CyclicBarrier,CountDownLatch,Exchanger,和Semaphore

CyclicBarrierhttps://blog.csdn.net/tolcf/article/details/50925145

2020-05-12 19:21:09 71

原创 synchronized的学习

线程同步synchronized的4种应用方式 jvm内部实现 称为:内置锁synchronized关键字最主要有以下3种应用方式,都是作用在对象上修饰类,作用范围:synchronized括号内, 作用对象:类的所有对象;synchronized(Service.class){ }修改静态方法,作用范围:整个静态方法, 作用对象:类的所有对象;修饰方法,被修饰的同步方法,作用范围:整个方法, 作用对象:调用这个方法的对象;缺点:A线程执行一个长时间任务

2020-05-09 23:01:33 73

原创 JMM----(Java Memory Model)

JMM----(Java Memory Model)Java内存模型(简称JMM)本身是一种抽象的概念,并不真实存在,它描述的是一组规则或规范,通过这组规范定义了程序中各个变量(包括实例字段,静态字段和构成数组对象的元素)的访问方式。由于JVM运行程序的实体是线程,而每个线程创建时JVM都会为其创建一个工作内存(栈空间),用于存储线程私有的数据。所有原始类型(boolean,byte,short,char,int,long,float,double)的本地变量都直接保存在线程栈当中,对于它们的值各个线

2020-05-09 22:59:32 106

原创 java8新特征学习一

函数式接口Java 8 引入的一个核心概念是函数式接口(Functional Interfaces)。通过在接口里面添加一个抽象方法,这些方法可以直接从接口中运行。如果一个接口定义个唯一一个抽象方法,那么这个接口就成为函数式接口。同时,引入了一个新的注解:@FunctionalInterface。可以把他它放在一个接口前,表示这个接口是一个函数式接口。这个注解是非必须的,只要接口只包含一个方法的接口,虚拟机会自动判断,不过最好在接口上使用注解 @FunctionalInterface 进行声明。在接口中添

2020-05-08 20:25:17 52

原创 Guarded Suspension(确保挂起 )

参考吴文君老师视频学习和网络上的文章总结笔记确保挂起设计模式 Guarded Suspension1.问题的引入一个线程正在做一个非常关键的任务,这时,有一个其他的线程让当前线程做其他的事情,当前线程只有完成当前的任务才能做其他的任务。2.问题的解决使用队列将其他需要工作的线程保存,然后在未来需要时,继续取队列中获取任务,然后执行。 public class Request {//定义一个请求的模板类 请求中包含一些数据,及获取请求中数据的方法 private fin

2020-05-08 20:23:30 119

原创 CAS(乐观锁)学习笔记

参考学习的博客:https://www.jianshu.com/p/ae25eb3cfb5dsynchronized是悲观锁,这种线程一旦得到锁,其他需要锁的线程就挂起的情况就是悲观锁。CAS操作的就是乐观锁,每次不加锁而是假设没有冲突而去完成某项操作,如果因为冲突失败就重试,直到成功为止。先看下面代码public class Test { private static int count = 0; public static void main(String[] args) {

2020-05-08 20:11:13 90

原创 多线程Count Down设计模式

观看吴文君老师学习视频的笔记,做个人学习用Count-Down设计模式其实也叫做Latch(阀门)设计模式。当若干个线程并发执行完某个特定的任务,然后等到所有的子任务都执行结束之后再统一汇总。public class CountDown { private final int total ; private int counter; public CountDown(int total) { this.total = total; } pu

2020-05-08 19:45:20 118

转载 java对象在内存中的布局的学习

https://www.cnblogs.com/duanxz/p/4967042.html参考链接中详细的讲解了java对象在内存中的布局。补充知识点在堆中分配对象内存的方式:指针碰撞假设java堆中内存是绝对规整的,所有用过的内存放一边,未使用过的放一边,中间有一个指针作为临界点,如果新创建了一个对象则是把指针往未分配的内存挪动与对象内存大小相同距离,这个称为指针碰撞。空闲列表如果...

2020-04-16 11:27:23 67

原创 方法的静态动态分派的学习笔记

方法的静态动态分派有些符号引用是在类加载阶段或是第一次使用时就会转换为直接引用,这种转换叫静态解析;另外一些符号引用是每次运行期转换为直接引用,这种转换叫做动态引用,这体现了java的多态性invokeinterface:调用接口中的方法,实际上是在运行期决定的,决定到底调用实现该接口的哪个对象的特定方法。invokestatic:调用静态方法invokespecial:调用自己的私有方法...

2020-04-16 10:55:18 76

原创 java字节码文件解析学习笔记

https://blog.csdn.net/u011810352/article/details/80316870参考文章写得非常好。本文也是自己基于参考文章学习时部分的自我理解和补充。Class字节码中有两种数据类型:字节数据直接量:这是基本的数据类型。共细分为u1,u2,u4,u8四种,分别代表连续的一个字节,2个字节,4个字节,8个字节组成的整体数据。表(数组):表是由多个基本数据或...

2020-04-16 10:19:10 112

原创 ContextClassLoader 类加载器的学习笔记

ContextClassLoader 类加载器ContextClassLoader是一种与线程相关的类加载器,每一个Thread都有一个相关联的Context ClassLoader(由native方法建立的除外),可以通过Thread.setContextClassLoader()方法设置。如果你没有主动设置,Thread默认继承Parent Thread的 Context ClassLoad...

2020-04-16 09:57:45 227

原创 单例的工程模式解耦

通过使用工厂模式,实现了表现层——业务层以及业务层——持久层的解耦。例子中的表现层和持久层功能只是简单的模拟一下,不是重点。第一步:配置文件创建一个peporties文件accountService=com.service.impl.AccountServiceImplaccountDao=com.dao.impl.AccountDaoImpl第二步:创建Factorypublic ...

2020-03-18 12:11:16 239 1

原创 Java中日期转换

在JAVA程序中前台页面输入的日期是有限定的,要求为【2000/02/20】只有这种格式java本身才能将前台接收的数据转换为日期格式。为了让用户拥有更好的体验。一般会做格式转换。//Converter里面两个泛型,第一个是源类型,第二个是宿类型(目标类型)public class MyCoverter implements Converter<String , Date>{ ...

2020-03-17 09:34:17 260

转载 forward(转发)与redirect(重定向)的区别

转发于:

2020-03-15 22:13:14 52

原创 23种模式之一-----------装饰者模式

装饰者模式:在不改变原有对象的基础之上,将功能附加到对象上。提供了比继承更有弹性的替代方案(扩展原有对象功能)注意:装饰者模式要求:1.装饰者中含有被装饰者的引用 2.装饰者和被装饰者应该实现同一个接口(类型)使用场景:适用于给一个类或者对象扩展功能!例子:public abstract class Reader{ public abstract void close();}...

2020-03-12 12:23:28 57

转载 springboot2.0整合redis时缓存以json格式存储对象

https://www.cnblogs.com/java51/p/12031155.html

2020-03-06 22:00:27 677

原创 SpringBoot整合MyBatis。service导入使用@Mapper注解的mapper报错:Could not autowire. No beans of xxxMapper...

IDEA:使用的版本是2018.3首先肯定这是IDEA本身的问题,程序是可以运行的。。这是DAO使用@Mapper注解的接口!这是service使用了@Autowired自动注入这是启动类,扫描mapper接口的包第一种解决方法:把@Autowired换成@Resource第二种解决方法:把@Mapper换成@Repository。同时在启动类中扫描mapper包的注解@Map...

2020-03-06 12:06:37 852

转载 @Mapper和@Repository的区别

参考学习的连接

2020-03-06 12:05:22 218

原创 @Autowired和@Resource的区别

@Autowired:它是spring提供的。下图可以看到它所在的包。它是按byType注入的,默认是要依赖的对象必须存在。boolean required() default true; 如果需要允许依赖对象是null,可以设置:@Autowired(required=false)如果我们想@Autowired按名称装配,可以结合**@Qualifier**注解一起使用@Resourc...

2020-03-06 11:56:12 172

转载 在本机访问Docker中的Tomcat--404错误!

添加链接描述

2020-03-04 21:49:19 855

原创 Spring Boot 配置嵌入式Servlet容器的学习

参考学习原文:添加链接描述在学习springBoot定制嵌入式Servlet容器时发现EmbeddedServletContainerCustomizer 这个类找不到。网上查阅资料发现在springBoot1.5.x版本中(当时学习视频中使用的是1.5.9),而我使用的是2.2.5版本。在springBoot1.x版本中Spring Boot默认使用Tomcat作为嵌入式的Servlet容...

2020-03-04 10:54:26 150

原创 【SpringBoot基础】HiddenHttpMethodFilter学习!Restful请求报错:Request method 'POST' not supported

application.properties配置文件中进行如下配置spring.mvc.hiddenmethod.filter.enabled = true错误经过总结!【REST简介】即Representational State Transfer的缩写。直接翻译的意思是"表现层状态转化";是一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁...

2020-03-03 20:47:46 430

空空如也

空空如也

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

TA关注的人

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