03 2020 档案
摘要:一、常见的微服务框架 (1)SpringCloud:是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring Clo
阅读全文
摘要:1. 单体应用架构(Monolith) 定义:一个归档包(例如war格式或者Jar格式)包含了应用所有功能的应用程序,我们通常称之为单体应用。架构单体应用的方法论,我们称之为单体应用架构,这是一种比较传统的架构风格。 部署:最终部署的时候只有一份war包,其他的以jar包的方式依赖来。 优点:适用小
阅读全文
摘要:什么是Eureka Eureka是一个用于服务注册和发现的组件。分为Eureka Server(服务注册中心)和Eureka Client(客户端)。 为什么选择Eureka 在SpringCloud中,可选择Consul、Zookeeper和Eureka作为服务注册和发现的组件,选择Eureka的
阅读全文
摘要:集合类存放在java.util包中,主要有三种:set(集)、list(列表包含Queue)、map(映射)。 1. collection:collection是集合List、Set、Queue的最基本的接口。 2. Iterator:迭代器,可以通过迭代器遍历集合中的数据。 3. Map:是映射表
阅读全文
摘要:乐观锁 乐观锁是一种乐观思想,即认为读多写少,遇到并发写的可能性低,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断以下在此期间别人有没有去更新这个数据,采取在写时先读出当前版本号,然后加锁操作(比较跟上一次的版本号,如果一样则更新),如果失败则要重复读-比较-写的操作。
阅读全文
摘要:线程安全 定义:如果有多个线程在同时运行,而这些线程可能会同时运行一段代码。程序每次运行结果和单线程结果是一样的,而且其他变量的值也和预期的是一样的,就是线程安全。 线程安全案例 这里通过一个案例来更深一步了解线程的安全问题。 业务:电影院3个窗口卖总共100张票。也就是多线程并发访问同一个数据资源
阅读全文
摘要:线程池概念 线程池,其实就是一个容纳多个线程的容器,其中的线程可以反复使用,省去了频繁创建线程对象的操作,无需反复创建线程而消耗过多的资源。 简单得理解:上面说到的多线程可以提高效率(不能提高程序的运行速度),但是过多的线程反而会适得其反,最好的办法就是适当的创建一定数量的线程,之后将所有的任务都放
阅读全文
摘要:线程和进程 进程定义 进程指正在运行的程序 确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且具有一定独立功能。(比如电脑中运行的酷狗,qq等) 线程定义 线程是进程中的一个执行单元,负责当前进程中程序的执行,线程共享进程的资源。 线程与进程的关系 一个程序运行后至
阅读全文
摘要:SpringBoot整合redis其实很简单,可以分为如下几步: 1. pom.xml中添加redis的依赖 2. 创建RedisConfig.java文件,(为了设置key及value的序列化方式) 3. application.properties文件中添加redis相关的配置 4. 定义Red
阅读全文
摘要:SpringBoot整合定时任务task非常的简单,共分为以下三步: 1. 在启动类加上@EnableScheduling注解 2. 在controller的类上加上@Component注解 3. 在controller的方法上加上@Scheduled注解即可 之后启动程序,就会自动开始执行任务了
阅读全文
摘要:具体用法参考代码中的备注即可 常用方法 后台代码controller @Controller @RequestMapping("/fileoperate") public class fileOperateController { /** * 功能:跳转thymeleaf测试页面 * 创建人:by
阅读全文
摘要:Thymeleaf的定义和优点 Thymeleaf是跟Velocity、FreeMarker类似的模板引擎,它可以完全替代JSP,相较与其他的模板引擎,它主要有以下几个特点: 1. Thymeleaf在有网络和无网络的环境下皆可运行,即它可以让美工在浏览器查看页面的静态效果,也可以让程序员在服务器查
阅读全文
摘要:注意:后台代码和前台代码以及效果都是一一对应的,可以对照着看。并且多注意一下代码中的备注。 初级用法 初级用法:int long double boolean String 为空处理 时间处理 用法 后台代码 @RequestMapping("/index") public String toInd
阅读全文
摘要:什么是freemarker 百度百科上的定义如下: 这里要注意:它是一款模板引擎,而不是一个web框架,它基于模板来生成文本输出。FreeMarker与Web容器无关,即在Web运行时,它并不知道Servlet或HTTP。它不仅可以用作表现层的实现技术,而且还可以用于生成XML,JSP或Java 文
阅读全文