无题
Eureka
Spring Cloud服务注册与发现组件。
注:SpringCloud可以说是一种微服务规范。
第一代实现:Spring Cloud Netfilx
第二代实现:Spring Cloud Alibaba
这里的SpringCloud特指SpringCloud的第一代实现。
Spring Cloud将Eureka与Netflix中的其他组件一起整合进Spring Cloud Netflix模块中,整合后的组件全称为Spring Cloud Netflix Eureka。
Spring Cloud使用SpringBoot思想为Eureka增加了自动化配置,开发人员只需要引入相关依赖和注解。
Eureka两大组件Eureka采用CS架构。
Eureka Server:Eureka服务注册中心,主要提供服务注册功能。微服务启动后,会将自己的服务注册到Eureka Server。Eureka Server维护了一个可用服务列表,存储了所有注册到Eureka Server中的可用服务的信息。
Eureka Client:Eureka客户端。通常指的是微服务系统中的各个微服务 ...
SpringCloud
微服务基础注意:此阶段学习推荐的电脑配置,至少配备4核心CPU(主频3.0Ghz以上)+16GB内存,否则卡到你怀疑人生。
前面我们讲解了SpringBoot框架,通过使用SpringBoot框架,我们的项目开发速度可以说是得到了质的提升。同时,我们对于项目的维护和理解,也会更加的轻松。可见,SpringBoot为我们的开发带来了巨大便捷。而这一部分,我们将基于SpringBoot,继续深入到企业实际场景,探讨微服务架构下的SpringCloud。这个部分我们会更加注重于架构设计上的讲解,弱化实现原理方面的研究。
传统项目转型要说近几年最火热的话题,那还得是微服务,那么什么是微服务呢?
我们可以先从技术的演变开始看起,在我们学习JavaWeb之后,一般的网站开发模式为Servlet+JSP,但是实际上我们在学习了SSM之后,会发现这种模式已经远远落后了,第一,一个公司不可能去招那么多同时会前端+后端的开发人员,就算招到,也并不一定能保证两个方面都比较擅长,相比前后端分开学习的开发人员,显然后者的学习成本更低,专注度更高。因此前后端分离成为了一种新的趋势。通过使用SpringBoot,我 ...
瑞吉外卖(二)
1. 完善登录功能1.1 问题分析
用户必须登录才能访问到系统内的页面,如果没有登陆,则跳转到登陆页面。
实现原理:
使用过滤器或者拦截器,在过滤器或者拦截器中判断用户是否已经完成登录,如果没有登录则跳转到登陆页面。
1.2 代码实现实现步骤:
创建自定义过滤器LoginCheckFilter
在启动类上加入注解@ServletComponentScan
完善过滤器的处理逻辑
过滤器处理逻辑:
1. 获取本次请求的url
1. 判断本次请求是否需要处理
1. 如果不需要处理,则直接放行
1. 判断登陆状况,如果已登录,则直接放行
1. 如果未登录则返回未登录结果。
2. 新增员工2.1 代码实现执行步骤:
页面发送ajax请求,将新增员工页面中输入的数据以json的形式提交到服务端
服务端Controller接收页面提交的数据并调用Service将数据进行保存
Service调用Mapper操作数据库,保存数据
12345@PostMapping()public R<String> save(@RequestBody Employee employee,Ht ...
瑞吉外卖(一)
1.环境搭建1.1数据库环境搭建
创建数据库
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195 ...
SpringSecurity
SpringSecurity0.简介 SpringSecurity是Spring家族中的一个安全管理框架。相比于Shiro,功能更为丰富。(Shiro多用于小项目)
一般来说,一个Web应用需要进行认证和授权。
认证:验证当前访问系统的是不是本系统的用户,并且要确定具体是哪个用户。
授权:经过认证后判断当前用户是否有权限进行某个操作。
而认证和授权也是SpringSecurity作为安全框架的核心功能。
1.快速入门引入SpringSecurity1234<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId></dependency>
默认登录页面,默认用户名user,密码会输出在控制台。
必须登陆后才能对接口进行访问。
2.认证2.1登录校正流程
2.2原理初探2.2.1 SpringSecu ...
瑞吉外卖(三)
1.公共字段自动填充1.1 问题分析
在前面完成的员工管理功能开发,在新增员工或编辑员工时设置创建时间、创建人、更新时间和更新人。这些字段属于公共字段,也就是很多表中都有这些字段。
可以使用MybatisPlus提供的公共字段自动填充功能来统一处理。
1.2 代码实现
Mybatis Plus公共字段自动填充,也就是在插入或者更新时为指定的字段赋予指定的值。
实现步骤:
在实体类的属性上加入@TableField注解,指定自动填充的策略。
按照框架要求编写元数据对象处理器,在此类中统一为公共字段赋值,此类实现MetaObjectHandler接口。
123456789101112131415161718192021222324@Component@Slf4jpublic class MyMetaObjectHandler implements MetaObjectHandler { @Override public void insertFill(MetaObject metaObject) { metaObject ...