摘要:
0.前言 在学习有关 volatile 关键字的我,在网上搜罗大量资料的时候,基本都会见到标题中这些关键字样,接下来我以我查阅到的资料来对如上概念进行串联并且解析。本文为多方资料的汇总,在文中会有很多关键部分贴上引用的链接,点击可以查看更加详细。 1、缓存一致性问题 描述:为了弥补 CPU 和 内存 阅读全文
摘要:
0、前言 JAVA 亦或是 OS 中会出现非常之多不同的锁,这些锁大多都按特性、功能、设计、属性等作为依据来进行分类,而不是具体到某一种代码实现 1、公平锁 vs 非公平锁 概念:在并发环境中,线程在获得锁的顺序/优先级是根据申请的时间顺序来安排的(FIFO),这样保证了所有的线程都有机会得到锁,不 阅读全文
摘要:
1、启动流程 1)创建 springApplication 对象 此对象调用 initialize 方法进行初始化 * 主配置类就是 springboot 工程的主类,run方法传进去的 class 对象 当然可以传多个,最后一个语句就是用来判断哪个是有 main 方法的! * 若在创建工程时候导入 阅读全文
摘要:
1、Spring Data 和 JPA Spring Data 是官方开发的一套数据访问相关的工具和规范 目的就是为了使数据的访问更加统一和方便、其底层用的是 Hibernate 2、JPA 的基本使用步骤 1)编写一个实体类(bean)和数据表进行映射,并且配置好映射关系 2)编写一个Dao接口来 阅读全文
摘要:
1、核心概念 2、Linux 下安装 Docker 以 centos 为例子 1)docker 要求 centos 的内核版本高于 3.10 命令: uname -r 查看版本 2)安装 Docker 命令:yum install docker 3)启动/停止 Docker 启动命令:systemc 阅读全文
摘要:
SpringBoot默认是以jar包的方式启动嵌入式的Servlet容器来启动SpringBoot的web应用,没有web.xml文件 1、Servlet、Filter、Listener 创建 首先写好一个 Servle、Filter 和 Listener MyServlet MyFilter My 阅读全文
摘要:
1、Spring Boot 的默认Servlet 容器 spring boot 底层默认是使用 tomcat 作为 web 容器 2、如何修改 Servlet 容器相关配置 1)修改和server有关的配置(ServerProperties【实际也就是EmbeddedServletContainer 阅读全文
摘要:
1、定制错误页面 2、定制错误的 json 数据 以下方法都是下图特设的异常代码进行处理 触发方法只要访问 /hello?user=aaa 即可触发异常 1)自定义异常处理 & 返回定制 json 数据 编写一个错误的异常类,在里面配置好需要传达的错误信息并用 map 存储 并且用 Response 阅读全文
摘要:
一般登陆等应用场景会应用到拦截器来对当前访问的用户身份进行权限检查 若当前用户处于未登录状态,则应该拦截用户的一些非法请求,来实现登陆需求 有关拦截器的介绍 ==> click here ( 特别注意执行顺序与返回的布尔值产生的行为 ) 1、通过实现 HandlerInterceptor 接口自定义 阅读全文
摘要:
以对如下一个简单的登陆页面做国际化为例子 1、配置国际化配置文件 在资源文件夹下创建对应的国际化配置文件,不同语言对应不同配置文件 若使用的是IDEA则IDEA会根据你书写的文件后缀 xx_语言代码_国家代码 自动识别是国际化相关配置,会把所有文件使用Bundle包含起来 好处就是可以在bundle 阅读全文