二 Spring&MVC&Boot&Cloud
文章平均质量分 86
慢慢来才比较快
陈于晏8
一天进步一点点,加油!
展开
-
SpringCloud组件学习
1 单体 集群1.1 单体架构系统所谓的单体架构,就像我们平常开发的应用——SpringBoot,所有功能都放在一个war包或者jar包里面。单体架构的好处:便于开发,部署(jar或者war),测试。1.2 集群多个SpringBoot,他们的功能是一样,系统具有横向扩展能力。使用集群的理由: 一般单台服务器处理的并发量为250左右,并发处理能力有限。 一般单台服务器中的一点服务器故障,整个服务就不能访问了。 2 结合生活中例子(分布式+集群)以开一家球鞋的网原创 2021-05-02 13:52:46 · 221 阅读 · 3 评论 -
项目中使用SpringAOP切面记录日志
一.背景项目中需要保存所有操作的日志,决定引入AOP面向切面编程,日志需要记录完整的一次请求,包括请求参数:url、请求方式、类路径、方法、参数名等。二.AOP简介AOP即Aspect Oriented Program面向切面编程,在面向切面编程的思想里面,把功能分为核心业务功能和周边功能:所谓的核心业务 ,比如登录,增加数据,删除数据都叫核心业务;所谓的周边业务 ,比如性能统计、日志、事务管理等等;在面向切面编程AOP的思想里面,核心业务功能和切面功能分别独立进行开发,然后把切面功能和核心原创 2020-12-23 23:14:48 · 1321 阅读 · 0 评论 -
【RabbitMQ】5种工作模式
一.简单模式包含一个生产者、一个消费者和一个队列。生产者向队列里发送消息,消费者从队列中获取消息并消费。二.工作模式(资源的竞争)包行一个生产者、两个消费者和一个队列。两个消费者同时绑定到一个队列上去,当消费者获取消息处理耗时任务时,空闲的消费者从队列中获取并消费消息三.发布/订阅模式每个消费者监听自己的队列,两个队列绑定到交换机,生产者通过发送消息到交换机,所有消费者接收并消费消息。四.路由模式它包含一个生产者、两个消费者、两个队列和一个交换机。两个消费者同时绑定到原创 2020-12-08 22:54:26 · 336 阅读 · 0 评论 -
【springboot】定时任务
一.前言同步数据库数据的方式是采用全量+增量的方式,为了数据的精确性,我打算加一个定时任务,所有就有了这篇文章记录一下哈哈。二.步骤2.1 新增配置类,开启基于注解的定时任务2.2新增service三.资料...原创 2020-12-08 17:16:15 · 146 阅读 · 0 评论 -
【RabbitMQ】2.应用
一.创建交换机二.添加队列三.交换机绑定队列四.测试4.1 direct4.2 fnout发消息是所有的消息都收到了4.3 topic根据路由匹配规则 helo.news 所以只匹配#.news原创 2020-12-06 11:33:56 · 82 阅读 · 0 评论 -
【Docker】1.mac安装Docker,安装镜像
一.Docker 一些入门文章推荐1. MacOS配置新版Docker镜像加速器https://www.cnblogs.com/QuestionsZhang/p/12443356.html2.阮一峰的Docker入门博客https://ruanyifeng.com/blog/2018/02/docker-tutorial.html3.官网https://hub.docker.com/editions/community/docker-ce-desktop-mac/二.下载Ra...原创 2020-12-06 10:20:14 · 210 阅读 · 0 评论 -
【RabbitMQ】1.入门
一.为啥要学RabbitMQ?大多数应用中,可以通过消息服务中间件来提升系统异步通信、扩展解耦能力二.RabbitMQ简介RabbitMQ是一个由erlang开发的AMQP Message:消息他由消息头和消息体组成,消息体是不透明的,而消息头则由一系列的可选属性组成,包括routing-key(路由键)、priority(优先权)、delivery-mode(指出该消息可能需要持久性存储)等 Publisher:消息的生产者,也是一个向交换器发布消息的客户端应用程序 Exch原创 2020-12-05 10:32:05 · 89 阅读 · 0 评论 -
【SpringBoot】Redis配置CacheManager实现缓存
1.唠嗑最近学了网上的springboot1.X的springboot整合redis实现缓存,自己在练习的时候才发现springboot2.x已经不支持教程里面的配置cacheManager了,网上找了很久,都失败了。最后在b站有一个视频看见了,实验成功了。最终的成果是springboot整合Jpa、redis,配置redisconfig,实现缓存。2.概念3.springboot2.x配置cacheManager找了很久,可以用的,希望能帮助到大家。@C.原创 2020-11-28 23:56:43 · 7178 阅读 · 0 评论 -
【Redis】SpringBoot整合Redis源码分析
一.Jedis被替换了 在SpringBoot2.x之后,原来使用的jedis被替换为了lettuce,从spring-boot-starter-data-redis-2.2.5.RELEASE.pom中可以看出来,为啥被替换了查阅资料是说jedis:采用的直连,多个线程操作的话,是不安全的,如果想要避免不安全使用jedis pool连接池!更像BIO模式lettuce:采用netty,实例可以再多个线程中进行共享,不存在线程不安全的情况,可以减少线程的数据,更像NIO模式。二..原创 2020-11-01 10:59:05 · 979 阅读 · 0 评论 -
前后端分离实现登录拦截
一.认证方案1.Session利用Session我们可以管理用户状态:服务器接受第一个请求时候,生成session对象,并通过响应头告诉客户端在cookie中放入sessionId客户端之后发送请求时,会带上包含sessionId的cookie服务器通过sessionId获取session,进而得到当前的状态每次客户端访问服务端带上sessionId即可2.客户端存储方案特性cookielocalStoragesessionStorage生命周期一般由服务器生成原创 2020-09-20 16:10:30 · 4037 阅读 · 0 评论 -
SpringBoot-war包方式在本地Tomcat部署
war包部署Tomcat今天再本地tomcat部署springboot用于排查问题1.将打包方式修改为war2.移除tomcat依赖3.继承org.springframework.boot.web.servlet.support.SpringBootServletInitializer,实现configure方法4.注意使用外部Tomcat部署访问的时候,配置的server.port、server.servlet.context-path将失效,使用tomcat端口,webapps原创 2020-08-04 18:35:30 · 367 阅读 · 0 评论 -
导出PDF
1.前端/** * 导出消毒安全操作表 */function exportTable() { var row = $('#archviesDisinfectionTask_selectMission_dg').datagrid('getSelected'); if(row){ window.open(basePath + "sterilize/exportPDF?batchSterilizer="+row.batchSterilizer); }else{ $.messager.aler原创 2020-07-04 18:42:12 · 248 阅读 · 0 评论 -
JPA多条件查询
1.controller/** * 获取查询任务列表 * <p>type为任务类型,1清点,2验收,3验收,4消毒 */ @PostMapping(value = "/listPage/{type}") public EasyUIPagination getPageStorageTaskList(@PathVariable("type") Integer type, SterilizeTaskVo sterilizeTaskVo, QueryTa原创 2020-07-04 18:40:12 · 6200 阅读 · 2 评论 -
SpringBoo之持久层Hibernate
1.application## mysql + hibernatespring.jpa.show-sql=truespring.jpa.properties.hibernate.format_sql=falsespring.jpa.properties.hibernate.use_sql_comments=falsespring.jta.transaction-manager-id=tr...原创 2020-05-07 09:29:09 · 184 阅读 · 0 评论