自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 问答 (1)
  • 收藏
  • 关注

原创 .trim()方法去掉首尾空白符,没有去掉全角空格怎么办?

可以看到,trim()能消除半角空格,但是不能消除全角空格。消除全角空格,只能先讲将其转换成半角空格再调用trim()删除。这是StringUtils类中封装的方法,可以去除所有空格,并且可以匹配空格、制表符、换页符等空白字符的其中任意一个。关于将全角空格转换成半角空格的方法,有多种,最简单的就是使用String类的replaceAll()函数。要想消除全角空格,就必须先将全角空格转换成半角空格,然后再使用trim()函数。我是全角空格,我是半角空格。我是全角空格,我是半角空格。可以匹配去掉所有空格。

2023-07-14 13:35:26 730

原创 java.lang.IllegalArgumentException: invalidcomparison:java.time.LocalDateTime and java.lang.String

报错信息:Error updating database. Cause: java.lang.IllegalArgumentException: invalid comparison: java.time.LocalDateTime and java.lang.String。原因是更新sql中对字段类型是。

2023-02-13 10:43:07 862

原创 org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘xmlModelPlug

报错信息:org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'xmlModelPlugin': Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [springfox.documentation.schema.X

2021-12-27 10:12:55 1050

原创 (最全详解)idea项目报错:Invalid bound statement (not found): com.android.mapper.ClientMapper......

在报这个错误是因为构建后没有没有.xml文件具体原因排查如下五种总有一个适合你(我是第五个原因):1、访问所有的mapper都报此错误,检查 mapper.xml 中的 namespace2、访问mapper中的部分方法时报此错误,检查xml文件中的id是否和接口中的方法名一致3、mapper接口中的方法返回值是List<User>,而select元素没有正确配置ResultMap,或者只配置ResultType4、检查application.prope...

2021-08-06 11:44:48 5168 2

原创 shiro框架的三大核心

1.Subject(主体)应用代码的直接交互对象就是Subject,也就是说Shiro对外的核心API就是Subject,Subject代表了当前“用户”,这个用户不是指具体的某一个人,可以说与当前应用交互的任何东西都是Subject,与Subject的所有交互都会委托给SecurityManager来执行,可以理解为Subject只是一个充当门面的,真正的幕后老大是SecurityManager,SecurityManager才是实际的执行者。2.SecurityManager(安全管理器)所有与

2021-07-30 16:08:46 408

原创 SQL的case when then else end语句的用法

举例:原数据库表sys_oper_log大概显示case when then else end语句用法--具体sql如下select DATE_FORMAT(oper_time,'%Y-%m') yearMonth, sum(case when business_type=1 then 1 else 0 end) addOps, sum(case when business_type=2 then 1 else 0 end) updateOps, .

2021-07-26 16:44:58 216

原创 vue前端实现一个简单折线图

1、首先vue下载echarts 插件:npm install echarts --save2、在components文件中新建一个vue:Echarts.vue在company文件中新建一个vue:Income.vue3、Echarts.vue文件代码如下:<template> <div> <div id="main" style="width: 800px;height:600px;"></di...

2021-07-25 21:13:04 2388 1

原创 在java中对一个数组的重复数据移除(即对list数组内容去重)

1、原始数组hedateObject[ ]hedate= new Object[ ]{2019-04, 2019-04, 2019-04, 2019-07, 2019-07, 2019-07, 2019-08, 2019-08, 2019-08, 2019-10, 2019-11, 2019-11, 2019-11, 2019-12, 2019-12, 2019-12}2、声明一个新的数组xindate用来接收去重后的原始数组hedate3、循环遍历原始数组hedate,并一次添加...

2021-07-25 20:36:51 234

原创 springCloud全局过滤器(自定义全局过滤器)

全局过滤器作用于所有路由, 无需配置。通过全局过滤器可以实现对权限的统一校验,安全性验证等功能。内置全局过滤器自定义全局过滤器内置的过滤器已经可以完成大部分的功能,但是对于企业开发的一些业务功能处理,还是需要我们自己编写过滤器来实现的,那么我们一起通过代码的形式自定义一个过滤器,去完成统一的权限校验。 开发中的鉴权逻辑:当客户端第一次请求服务时,服务端对用户进行信息认证(登录) 认证通过,将用户信息进行加密形成token,返回给客户端aaaa,作为登录凭证 以后每次请求,客户

2021-07-08 18:54:39 1300

原创 断言 (自定义路由断言工厂)

我们来设定一个场景: 假设我们的应用仅仅让age在(min,max)之间的人来访问。第1步:在配置文件中,添加一个Age的断言配置routes: - id: product_route # 路由的唯一标识,只要不重复都可以,如果不写默认会通过UUID产生,一般写成被路由的服务名称 uri: lb://shop-product # 被路由的地址 order: 1 #表示优先级 数字越小优先级越高 predicates:

2021-07-08 18:50:35 351

原创 Gateway核心架构

路由(Route) 是gateway 中最基本的组件之一,表示一个具体的路由信息载体。主要定义了下面的几个信息:id,路由标识符,区别于其他Route。 uri,路由指向的目的地uri,即客户端请求最终被转发到的微服务。 order,用于多个Route 之间的排序,数值越小排序越靠前,匹配优先级越高。 predicate,断言的作用是进行条件判断,只有断言都返回真,才会真正的执行路由。 filter,过滤器用于修改请求和响应信息。...

2021-07-08 18:47:59 401

原创 Gateway快速入门

1、创建一个api-gateway的工程并加入依赖<!--加入gateway的依赖--><dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-gateway</artifactId></dependency>2、创建启动类@SpringBootApplicatio

2021-07-08 18:47:17 410

原创 Gateway--服务网关

大家都都知道在微服务架构中,一个系统会被拆分为很多个微服务。那么作为客户端(pc androud ios 平板)要如何去调用这么多的微服务呢?如果没有网关的存在,我们只能在客户端记录每个微服务的地址,然后分别去调用。 axios.get(ip:port/url) axios.get(ip:port/url)这样的架构,会存在着诸多的问题: 客户端多次请求不同的微服务,增加客户端代码或配置编写的复杂性 认证复杂,每个服务都需要独立认证。 存在跨域请求,在一定场景下处理相对复杂。..

2021-07-08 17:04:30 102

原创 微服务简单小案例(电商)

总SpringCloud1(maven项目)1、shop-commom2、shop-product3、shop-order

2021-07-06 19:15:19 184

原创 微服务环境搭建

1.1 技术选型 maven:3.5.0+数据库:MySQL 5.7以上持久层: Mybatis-plus《Mybatis Mapper Mybatis-plus》其他: SpringCloud Alibaba 技术栈 druid 1.2 模块设计 springcloud-alibaba 父工程 《jar版本的管理》shop-common 公共模块【实体类】 《实体类,公共依赖,工具类。》shop-product 商品微服务 【端口: 8080~8089 搭建集群】...

2021-07-06 17:03:01 342

原创 springCloud与springCloudAlibaba与springBoot版本依赖关系推荐使用。

2021-07-06 17:00:12 362

原创 微服务架构的常见概念

1.2.2.1 服务治理 服务治理就是进行服务的自动化管理,其核心是服务的自动注册与发现。 服务注册:服务实例将自身服务信息注册到注册中心。 服务发现:服务实例通过注册中心,获取到注册到其中的服务实例的信息,通过这些信息去请求它们提供的服务。 服务剔除:服务注册中心将出问题的服务自动剔除到可用列表之外,使其不会被调用到。1.2.2.2 服务调用 在微服务架构中,通常存在多个服务之间的远程调用的需求。目前主流的远程调用技术有基于HTTP的RESTful接口以及基于TCP的R..

2021-07-06 16:46:28 109

原创 微服务架构常见问题以及解决方案

一旦采用微服务系统架构,就势必会遇到这样几个问题:这么多小服务,如何管理他们? ----组件来解决这些问题 这么多小服务,他们之间如何通讯? 这么多小服务,客户端怎么访问他们? 这么多小服务,一旦出现问题了,应该如何自处理? 这么多小服务,一旦出现问题了,应该如何排错?对于上面的问题,是任何一个微服务设计者都不能绕过去的,因此大部分的微服务产品都针对每一个问题提供了相应的组件来解决它们。如图所示组件图片所示组件详解见下篇--微服务架构的常见概念 ...

2021-07-06 16:40:37 835

原创 SpringBoot+Vue实现增删改查2

1、vue2、element.js3、index.js4、index.vue5、App.vue6、main.js7、运行7、8、前台展示首页(查询)9、前台展示(修改:根据id回显数据)10、前台展示(添加,和修改共用一个弹出框,注意点击出现弹出框时先清空弹出框的数据)11、前台展示(删除8号)删除前删除后注意删除后要自动刷新页面!!!!!!!!!!!!!!!!!点个小信心,查看的人终成一代大牛!

2021-07-03 16:35:05 184

原创 SpringBoot+Vue实现增删改查1

java代码编写如下:1、controller层2、entry实体3、mapper层4、service层5、RedisCecheAplication主启动类6、.porperties文件7、java编码在idear运行8、vue看下一篇。。。。。。。。。。。。-SpringBoot+Vue实现增删改查2...

2021-07-03 16:11:25 145

原创 java连接redis缓存(springboot使用redis作为缓存)

1、引入redis的依赖------>jedis2、springboot使用redis作为缓存。 首先:什么样的数据适合放入缓存中。1. 查询频率高 2. 修改频率低 3. 数据安全行要求低的 、、、、、、、、、、、、、、、、、、、代码整合首先:打开虚拟机,配置主从模式端口号示例为:192.168.213.5:6380(从)192.168.213.5:6381(主)开启哨兵192.168.213.5:6380(从)然后:

2021-06-30 20:41:25 165

原创 nginx集群的搭建

首先创建两个虚拟机:例如——192.168.213.4与192.168.213.5其次在每一个虚拟机上安装keepalivedyum install keepalived 安装keepalived yum:联网安装 rpm -q -a keepalived 检查是否安装keepalived ps -ef | grep keepalived然后进入安装路径:cd /etc/keepalived开启所有的nignx 和 keepalived 命令:./nginx

2021-06-23 21:07:54 49

原创 动静分离(nginx)

1. 动态资源:jsp thymeleaf 2. 静态资源:images css js首先创建一个springboot工程并在其里面写入静态资源其次将项目打包jar并放入linux系统在linux上启动项目进入sbin目录 :cd /usr/java/nginx/sbin找到nginx的配置文件并对其进行修改测试在浏览器页面输入地址并访问:例如我的是192.168.213.4:70/main...

2021-06-23 20:56:15 42

原创 nginx反向代理与负载均衡

概念:1. 正向代理: 代理的是客户端,服务器端不知道访问来自哪个客户。 翻墙软件: 2. 反向代理: 代理的是服务器,客户端不知道最终访问的是哪个服务器。如何通过nginx实现反向代理首先创建一个springboot web应用程序再通过idea把web工程打包安装将生成的.jar包上川岛虚拟机并启动java -jar jar包名vim 编辑conf并重新加载编辑页面server中改为...

2021-06-22 20:37:19 47

原创 nginx安装并查看启动

什么是nginx? Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,其特点是占有内存少,并发 能力强,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。为什么使用nginx...

2021-06-22 19:57:59 316

原创 MyBatis-Plus特性

无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑 损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作 强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操 作,更有强大的条件构造器,满足各类使用需求 支持 Lambda 形式调用:通过 Lambda 表达式,方便的编写各类查询条件,无需再担心字段写错 JDK1. 支持主键自动生成:支持多达 4 种主键策略(内含分布式唯一 ID 生成器

2021-06-21 21:15:09 104

原创 MyBatis-Plus整合增删改查

1、控制层详解

2021-06-21 20:51:47 73

原创 SpringBoot的增删改查

1、引入分页依赖和thymeleaf依赖2、在html中引入thymeleaf3、前端展示界面4、修改和增加跳转界面5、entry层代码6、mapper层代码7、controller层代码8、sql语句

2021-06-21 20:35:23 131

原创 2021-06-18

首先在pom文件中继承springboot的父工程,其次引入微博的启动依赖,最后创建一个主启动类。

2021-06-18 19:45:10 77 2

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除