04 2019 档案
摘要:场景: 1.异步处理 注册信息写入数据库——写入消息队列后直接返回 注册成功 邮件和短信再发送 节省了用户收到注册成功提示的时间。2.应用解耦 两种 系统单独抽取出来 只要消息队列中有内容,库存系统就收到消息进行计算。 3.流量削峰 秒杀时, 设置消息队列最大上限人数 一旦达到上限关闭,直接返回秒杀
阅读全文
摘要:测试缓存:原理:CacheManager Cache 缓存组件来实际给缓存中存储数据1,引入redis的starter,容器中保存的是RedisCacheManager2,RedisCacheManager 帮我们创建RedisCache 来作为缓存组件;RedisCache通过操作redis来缓存
阅读全文
摘要:前序: 默认使用SimpleCacheConfiguration 组件ConcurrentMapCacheManager==ConcurrentMapCache将数据保存在ConcurrentMap<Object,Object> 中 开发中使用缓存中间件:redis , memcache ,ehca
阅读全文
摘要:@Caching :制定多个缓存规则 @Cacheable 和 @CachePut 同时标注时 ,@CachePut导致还是会走方法跟数据库交互 另外:@CacheConfig :抽取缓存公共配置,可以标注在类上 如:
阅读全文
摘要:@CacheEvict:缓存清除 可以通过key指定清除的数据 如果不写默认参数的值 allEntries = true (是否删除该缓存名中所有数据,默认为false) beforeInvocation = true(缓存清除是否在方法之前执行,默认false,代表在方法执行之后执行) false
阅读全文
摘要:@CachePut:既调用方法,又更新缓存数据;修改了数据库的某个数据,同时又更新缓存 运行时机: 注意: @Cacheable的key不能用#result来指定key,因为在方法开始之前就需要key CachePut在更新的时候也添加了缓存,但是如果查询方法也有缓存,则更新数据时每条的缓存key需
阅读全文
摘要:直接在注解中声明: //@Cacheable(cacheNames = {"emp"},key = "#root.methodName+'['+#id+']'") public Employee getEmp(Integer id){ System.out.println("查询"+id+"号员工"
阅读全文
摘要:Java Caching定义了5个核心接口,分别是CachingProvider, CacheManager, Cache, Entry 和 Expiry。 CachingProvider定义了创建、配置、获取、管理和控制多个CacheManager。一个应用可以在运行期访问多个CachingPro
阅读全文
摘要:1,创建一个空工程 new - project - emptyproject 2,new一个Modules maven (启动器) : 3,new一个Modules spring(做自动配置的): 4,启动器pom文件中引入自动配置模块: 5,自动配置器中,删除主主程序等不需要的内容,以及项目的启动
阅读全文
摘要:ApplicationContextInitializer SpringApplicationRunListener 以上两个起作用,必须配置在resources下META-INF/spring.factories ApplicationRunner CommandLineRunner
阅读全文
摘要:public ConfigurableApplicationContext run(String... args) { StopWatch stopWatch = new StopWatch(); stopWatch.start(); ConfigurableApplicationContext c
阅读全文
摘要:几个重要的事件回调机制 配置在META-INF/spring.factories ApplicationContextInitializer SpringApplicationRunListener 只需要放在ioc容器中 ApplicationRunner **CommandLineRunner*
阅读全文
摘要:ORM(Object Relational Mapping); 2)、编写一个Dao接口来操作实体类对应的数据表(Repository) 3)、基本的配置JpaProperties
阅读全文
摘要:pom文件: 步骤: 1)、配置数据源相关属性(见上一节Druid) 2)、给数据库建表 3)、创建JavaBean 注解版: 问题: 自定义MyBatis的配置规则;给容器中添加一个ConfigurationCustomizer; 配置文件版: mybatis: config-loca
阅读全文
摘要:pom依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>
阅读全文
摘要:如图所示,解决方法为: 把勾去掉即可。
阅读全文
摘要:Shift + Tab 内容对齐 Ctrl+Shift + Enter,语句完成“!”,否定完成,输入表达式时按 “!”键Ctrl+E,最近的文件Ctrl+Shift+E,最近更改的文件Shift+Click,可以关闭文件Ctrl+[ OR ],可以跑到大括号的开头与结尾Ctrl+F12,可以显示当
阅读全文
摘要:错误的启动: [root@localhost ~]# docker run --name mysql01 -d mysql 42f09819908bb72dd99ae19e792e0a5d03c48638421fa64cce5f8ba0f40f5846 mysql退出了 [root@localh
阅读全文
摘要:1.在虚拟机的centos 中安装 docker 的mysql 镜像。 2 .在虚拟机外面通过客户端访问docker安装的mysql ,连接失败 (1)进入镜像中的mysql(ti 后面的字符串是mysql镜像ID) (2)登录mysql (3)修改root 可以通过任何客户端连接 如果还是不行关闭
阅读全文
摘要:1、简介 Docker是一个开源的应用容器引擎;是一个轻量级容器技术; Docker支持将软件编译成一个镜像;然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像; 运行中的这个镜像称为容器,容器启动是非常快速的。 2、核心概念 docker主机(Host):安装了Docke
阅读全文
摘要:docker安装成功却启动失败,查看docker服务,systemctl status docker.service, 服务日志提示Failed to start Docker Application Container Engine.如下图所示: 解决方法,修改docker文件,具体命令:vi /
阅读全文
摘要:EmbeddedServletContainerAutoConfiguration:嵌入式的Servlet容器自动配置? 1)、EmbeddedServletContainerFactory(嵌入式Servlet容器工厂) 2)、EmbeddedServletContainer:(嵌入式的Servl
阅读全文
摘要:嵌入式Servlet容器:应用打成可执行的jar 优点:简单、便携; 缺点:默认不支持JSP、优化定制比较复杂(使用定制器【ServerProperties、自定义EmbeddedServletContainerCustomizer】,自己编写嵌入式Servlet容器的创建工厂【Embedd
阅读全文
摘要:servlet容器(这里指tomcat插件)存放servlet对象,而SpringMVC框架整个是一个servlet对象,而IOC容器 在Boot框架中,会存放产生servlet容器的工厂,工厂依据主配置文件以及用户配置的EmbeddedServletContainerCustomizer类对象(主
阅读全文
浙公网安备 33010602011771号