Spring
佐月儿
做别人所做不到的,
得到别人所得不到的.
展开
-
单元测试Service层需要登录的解决方案
单元测试Service层需要登录的解决方案背景我们目前项目写单元测试,如果接口中没有使用到如下代码,我们直接调用service层即可实现单元测试。不需要做登录操作。TzUser tzUser = SecurityUtils.getUser();然而,现实是绝大多数情况下我们都需要使用到上诉语句和其他登录相关的信息。那么必须做登录才能单元测试,做了登录拿到token,通过在测试方法中手写post方法来发请求,来调用接口。换句话说,我们单元测试的入口是controller层,而不是service原创 2021-03-24 23:28:10 · 1408 阅读 · 0 评论 -
如何实现多文件上传的接口,可以区分每一个文件
本文提供是思路,由于具体文件上传的代码很简单, 不贴代码,如有疑问留言告知在下~前提背景多文件上传, 用户可以选择[0,n]个文件这些文件可以基于某种规则进行区分,并且需要进行区分比如 前端页面有A,B两个上传文件的选择框, 用户此时最多有4种选择分别是[{},{A},{B},{A,B}]. 并且我们在业务上是需要对文件A和B进行区分的,它们或许有不同的业务逻辑.那么我们应该如何做呢?方式一: MultipartFile [] files 和 List fileFlag 组合前端原创 2020-08-05 20:23:19 · 1594 阅读 · 0 评论 -
SpringBoot读取配置文件和普通文件中自定义数据
前言为了业务需求改变的时候,尽量少的修改代码,同时增加代码的重用性, 我们通常把一些数据以配置文件的方式配置,而不是写死在代码中.既然如此,如何读取配置文件中的自定义参数,是很有必要了解的.下面我将介绍几种方式,本文是基于SpringBoot而言的,配置文件使用的是yml,和xml是一样的,只是书写格式不同方式一: @Valueapplication.yml配置文件test: ag...原创 2020-01-14 00:39:41 · 637 阅读 · 0 评论 -
SpringMVC 中 @ControllerAdvice 注解
在Spring 3.2中,新增了@ControllerAdvice、@RestControllerAdvice 注解,可以用于定义@ExceptionHandler、@InitBinder、@ModelAttribute,并应用到所有@RequestMapping、@PostMapping, @GetMapping注解中。@ControllerAdvice 注解有以下3种功能:全局异常处理...原创 2020-01-11 00:59:11 · 479 阅读 · 0 评论 -
FastDFS
1.分布式与集群的区别区别:集群是个物理形态,分布式是个工作方式。只要是一堆机器,就可以叫集群,他们是不是一起协作着干活,这个谁也不知道;一个程序或系统,只要运行在不同的机器上,就可以叫分布式,一般系统现在都是前后端分离,C/S架构、B/S架构,一般服务端部署在内部服务器,而客户端分布在各个用户的机器好比手机、PC机等,这样的系统也是分布式系统。集群一般是物理集中、统一管理的,而分布式系统则不强...原创 2020-01-06 16:43:29 · 356 阅读 · 1 评论 -
ElasticSearch
基本概念接近实时(NRT)Elasticsearch 是一个接近实时的搜索平台。这意味着,从索引一个文档直到这个文档能够被搜索到有一个很小的延迟(通常是 1 秒)。集群(cluster)代表一个集群,集群中有多个节点(node),其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的。es的一个概念就是去中心化,字面上理解就是无中心节点,这是对于集群外部来说...原创 2019-12-31 19:23:34 · 734 阅读 · 0 评论 -
Spring Cloud GateWay 路由转发规则介绍
以下的路由规则都是依赖于Gateway自带的局部过滤器来实现的https://www.jianshu.com/p/d2c3b6851e1d原创 2019-12-27 21:54:54 · 311 阅读 · 0 评论 -
Thymeleaf处理复杂数据以及与SpringBoot整合
每篇一句2020年, 来了, 在过去的一年里,我成长了很多, 学会了坚持,学会了做自己, 同时也自信了希望今年能继续加油, 坚持下去,一定会有收获的Thymeleaf介绍thymeleaf是一个XML/XHTML/HTML5模板引擎,可用于Web与非Web环境中的应用开发。它是一个开源的Java库,基于Apache License 2.0许可,由Daniel Fernández创建,该...原创 2020-01-07 23:52:07 · 498 阅读 · 0 评论 -
SpringBoot入门
搭建环境有3种方式搭建环境, 切记,搭建环境必须在有网络的环境下进行,网络不好,可能依赖需要下载个几分钟方式一: 手动创建创建maven工程或者Module,不需要骨架添加pom.xml依赖,完整配置文件如下<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org...原创 2019-12-16 23:13:34 · 194 阅读 · 0 评论 -
Spring Security权限管理框架
认证和授权概念认证:系统提供的用于识别用户身份的功能,通常提供用户名和密码进行登录其实就是在进行认证,认证的目的是让系统知道你是谁。授权:用户认证成功后,需要为用户授权,其实就是指定当前用户可以操作哪些功能。RBAC权限模块数据模型前面已经分析了认证和授权的概念,要实现最终的权限控制,需要有一套表结构支撑:用户表t_user、 角色表t_role、权限表t_permission、菜...原创 2019-12-14 18:50:14 · 600 阅读 · 0 评论 -
dubbo使用声明式事务管理,无法发布服务的解决方案
一: 首先是版本问题阿里巴巴的dubbo的版本2.6.0及其以下,直接使用声明式事务,是无法发布服务的 <dependency> <groupId>com.alibaba</groupId> <artifactId>dubbo</artifactId> <...原创 2019-12-05 22:20:46 · 338 阅读 · 0 评论 -
Dubbo就是这么简单
每篇一句莫愁前路无知己,天下谁人不识君分布式RPC框架Apache Dubbo第一章-软件架构的演进过程1.前言 软件架构的发展经历了由单体架构、垂直架构、【SOA架构,微服务】架构的演进过程.我们需要对软件架构的演进过程有一定的了解.2.发展顺序单体架构垂直架构SOA架构微服务架构3.详解3.1单体架构架构说明全部功能集中在一个项目里面(All in ...原创 2019-12-02 20:21:00 · 208 阅读 · 0 评论 -
web.xml中加载Spring配置文件的方式(spring5.0+)
每篇一句把努力当成一种习惯,而不是三分钟热度。坚持才是王道,每一个你羡慕的收获,都是别人努力用心拼来的。你可以抱怨,也可以无视,但记住,不努力,连输的资格都没有!第一种:在DispatcherServlet里的加载 <!--配置SpringMVC的前端控制器(核心控制器)--> <servlet> <servlet-name>...原创 2019-12-02 16:22:15 · 706 阅读 · 0 评论 -
Spring如何解决循环依赖
对自己说的话深入spring原理对现在的自己来说确定太难了,但是要坚持,点滴的积累,一定会有收获的~加油!什么是循环依赖所谓的循环依赖是指,A 依赖 B,B 又依赖 A,它们之间形成了循环依赖。或者是 A 依赖 B,B 依赖 C,C 又依赖 A。它们之间的依赖关系如下:根据创建对象的方式不同, 分为三种情况:第一种:构造器参数循环依赖第二种:setter方式单例,默认方式第三...原创 2019-11-29 16:00:20 · 321 阅读 · 0 评论 -
Spring异常处理的三种方式
一. 异常处理分析系统中异常包括两类:预期异常和运行时异常 RuntimeException,前者通过捕获异常从而获取异常信息, 后者主要通过规范代码开发、测试通过手段减少运行时异常的发生。 系统的 dao、service、controller 出现都通过 throws Exception 向上抛出,最后由 springmvc 前端 控制器交由异常处理器进行异常处理,如下图:Spring M...原创 2019-11-29 10:49:55 · 1503 阅读 · 0 评论 -
使用SpringMVC完成多文件上传,以及设置文件类型
一: 环境准备导入maven依赖: <dependencies> <!--springmvc--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-w...原创 2019-11-28 23:13:38 · 723 阅读 · 0 评论 -
Spring5.x整合mybatis3.x的配置文件详解
项目目录结构如下图:一: 配置文件的约束约束,就是用到了什么就加上就好,一般以下约束就足够了:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/X...原创 2019-11-25 00:07:49 · 327 阅读 · 0 评论 -
Spring配置文件头部约束和命名空间配置解释
比如一个标准的beans.xml文件如下所示:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:sch...原创 2019-11-19 22:50:27 · 627 阅读 · 0 评论 -
自定义IOC解耦的过程分析
版本一:在需要对象的时候直接new对象这是最原始的做法,这样做的缺点是:耦合度非常高,有编译器的依赖如果该对象发送了变化,使用它的地方也要修改,牵一发而动全身,程序难以维护版本二: 使用反射创建对象UserServlet类: private UserService userService = (UserService) BeanFactory.getBean("com.zuoyue...原创 2019-11-19 16:29:57 · 137 阅读 · 0 评论