- 博客(52)
- 收藏
- 关注
原创 经常使用的设计模式
工厂模式将目的将创建对象的具体过程屏蔽隔离起来,从而达到更高的灵活性,工厂模式可以分为三类:简单工厂模式(Simple Factory)工厂方法模式(Factory Method)抽象工厂模式(Abstract Factory)我们在了解工厂模式时,先从现实生活说起:(1)在没有工厂的时代,如果客户需要一款宝马车,那么就需要客户去创建一款宝马车,然后拿来用。(2)简单工厂模式:后来出现了工厂,用户不再需要去创建宝马车,由工厂进行创建,想要什么车,直接通过工厂创建就可以了。
2022-09-14 11:00:12
417
原创 Springcloud--Sleuth-链路追踪
主要功能就是在分布式系统中提供追踪解决方案。它大量借用了GoogleDapper的设计, 先来了解一下Sleuth中的术语和相关概念。Trace(一条完整链路--包含很多span(微服务接口))由一组Trace Id(贯穿整个链路)相同的Span串联形成一个树状结构。为了实现请求跟踪,当请求到达分布式系统的入口端点时,只需要服务跟踪框架为该请求创建一个唯一的标识(即TraceId),同时在分布式系统内部流转的时候,框架始终保持传递该唯一值,直到整个请求的返回。
2022-08-22 20:59:57
5655
原创 SpringCloud--Gateway网关
Spring Cloud Gateway是Spring公司基于Spring 5.0,Spring Boot 2.0和Project Reactor 等术开发的网关,它旨在为微服务架构提供一种简单有效的统一的API 路由管理方式。它的目标是替代 Netflix Zuul,其不仅提供统一的路由方式,并且基于Filter 链的方式提供了网关基本的功能,例如:安全,监控和限流。
2022-08-22 20:10:51
2293
原创 nacos集群模式出现的问题
Failed to start bean 'webServerStartStop'; nested exception is java.lang.reflect.UndeclaredThrowableException
2022-08-21 16:27:39
1751
1
原创 Nacos Discovery--服务治理,OpenFeign--实现服务调用,Ribbon**实现负载均衡
OpenFeign是提供的一个声明式的伪Http客户端, 它使得调用远程服务就像调用本地服务一样简单, 只需要创建一个接口并添加一个注解即可。Nacos很好的兼容了Feign,Feign负载均衡默认集成了Ribbon, 所以在Nacos下使用Fegin默认就实现了负载均衡的效果。
2022-08-19 21:24:01
862
原创 SpringCloud微服务架构搭建
可以创建springboot工程,也可以使用maven工程,但spring工程里一些东西使用不到,这里使用的是springboot工程创建的父工程。客户向订单微服务发起一个下单的请求,在进行保存订单之前需要调用商品微服务查询商品的信息。在这种场景下,订单微服务就是一个服务消费者, 商品微服务就是一个服务提供者。父工程 ----jar的版本管理 公共jar的引入。在微服务架构中,最常见的场景就是。我们一般把服务的主动调用方称为。技术栈 druid。,把服务的被调用方称为。微服务之间的相互调用。
2022-08-19 20:02:12
2243
原创 SpringCloud微服务架构常见问题及理论知识
微服务架构,简单的说就是将单体应用进一步拆分,拆分成更小的服务,每个服务都是一个可以独立运行的项目。
2022-08-19 17:32:23
999
原创 Vue简单使用
我们之前的vue和我们的java代码是不是都在一个工程下。没有做到前后端完成分离。企业中前端也会由自己的服务器,也有自己的开发工具。前端服务器Nodejs 开发工具VsCode[我们为了和idea匹配使用WebStorm]....
2022-08-13 15:54:36
98
原创 ssm整合shiro完成前后端分离
前后端完全分离:后端响应的都是json数据,而不再是网页。1. 登录成功或者失败应该返回json数据2. 当未登录时返回的也是json数据3. 访问未授权的资源,也要分会json。
2022-08-09 19:28:47
295
原创 ssm整合shiro
上面只是在网页中根据不同用户显示不同的菜单,这种方式只能防君子不能防小人。拦截器---获取请求路径 然后根据你的路径判断当前用户是否具有该权限。spring整合shiro时提供了一个注解:可以加载相应方法上。shiro中内置很多过滤器,而每个过滤都有相应的别名.可以在jsp中获取当前登录者的账号。...
2022-08-09 19:26:13
279
原创 SpringBoot整合redis
springboot整合redis时提供了两个模板工具类,StringRedisTemplate和RedisTemplate.
2022-08-08 23:07:15
123
原创 Redis的简单使用
nosql(not only sql)不仅仅是sql。NoSQL,泛指非关系型的数据库。非关系型的数据库则由于其本身的特点得到了非常迅速的发展。
2022-08-08 23:03:06
1990
原创 nginx的简单了解使用
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。开源软件,服务器软件.能够支持高达 50,000 个并发连接数的响应,...
2022-08-08 16:54:39
161
原创 shiro安全框架
身份认证,就是判断一个用户是否为合法用户的处理过程。最常用的简单身份认证方式是系统通过核对用户输入的用户名和口令,看其是否与系统中存储的该用户的用户名和口令一致,来判断用户身份是否正确。对于采用指纹等系统,则出示指纹;对于硬件Key等刷卡系统,则需要刷卡。授权,即访问控制,控制谁能访问哪些资源。主体进行身份认证后需要分配权限方可访问系统的资源,对于某些资源没有权限是无法访问的。......
2022-08-04 09:22:01
120
原创 linux系统--项目部署
安装虚拟机:VMware Workstation Pro创建多个虚拟电脑---每个电脑可以安装自己相应的系统镜像。 使用ifconfig 查看你虚拟机的ip地址。如果上面的命令不能用ip addr window和linux之间如何传递文件:xftp---文件传输。(1)压缩文件上传到指定目录下(2) 解压该文件 (3)配置环境变量 vi /etc/profile (4)刷新配置 (1)上传并解压--省略(2)启动tomcatps -ef | grep tomcat -----查看指定的进程 kil
2022-08-02 09:30:25
326
原创 SpringBoot
注意:1.JDK必须为1.8以上2.spring的jar必须5.0以上3.maven必须3.3以上 注意 :默认springboot扫描的包为主启动类所在的包以及子包。第二种:yml文件 通过@PropertiesConfiguration或者@Value注解。5.profiles文件的介绍 配置过滤器Filter.........
2022-07-21 21:02:19
210
原创 JDK8新特性--Stream流
当我们需要对集合中的元素进行操作的时候,除了必需的添加、删除、获取外,最典型的就是集合遍历。我们来体验集合操作数据的弊端,需求如下一个ArrayList集合中存储有以下数据张无忌,周芷若,赵敏,张强,张三丰需求1.拿到所有姓张的2.拿到名字长度为3个字的3.打印这些数据分析这段代码中含有三个循环,每一个作用不同首先筛选所有姓张的人;然后筛选名字有三个字的人;最后进行对结果进行打印输出。每当我们需要对集合中的元素进行操作的时候,总是需要进行循环、循环、再循环。这是理所当然的么。......
2022-07-21 13:54:20
322
原创 JDK8的新特性
Lambda引入了新的操作符->(箭头操作符)->将表达式分成两部分左侧(参数1,参数2.....)表示参数列右侧{}内部是方法体注意事项形参列表的数据类型会自动推断如果形参列表为空,只需保留()如果形参只有一个可以省略(),只需要参数名就可如果执行语句只有一句,切无返回值,{}可以省略,如有返回值,若想省去{}则必须同时省略ruturn,切执语句也保证只有一句Lambda不会生成一盒单独的内部类文件。............
2022-07-19 21:35:46
247
原创 Java--多线程
线程,又称轻量级进程(LightWeightProcess)。进程中的一条执行路径,也是CPU的基本调度单位。一个进程由一个或多个线程组成,彼此间完成不同的工作,同时执行,称为多线程。
2022-07-18 21:32:32
106
原创 Java—反射
JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象....
2022-07-14 21:22:05
85
原创 Java高级—注释
注解是给程序看的,但看到这个注解时就应该解析他了。注解的分类:1.预定义注解 预定义注解就是JDK自带的一些注解,该注解被jvm解析 例如: 2.自定义注解3.源注释 定义在注解上的注解称为元注解。3.自定义注解语法:使用自定义注解:实例:43元注释...
2022-07-14 09:59:43
204
原创 Java高级—泛型
所谓的泛型就是在类定义时,不为类中属性和方法指定数据类型,而是在类对象创建时为其指定相应的数据类型。泛型可以定义在类上,接口上,方法上。 泛型类,泛型接口以及泛型方法。泛型可以解决数据类型的安全性问题,其主要原理是在类声明时通过一个标识表示类中某个属性的数据类型或者是某个方法的返回值及参数类型。这样在类声明或者实例化时只要指定好需要的类型即可。格式:实例:3.通配符在开发中对象的引用传递是最常见的,但是如果在泛型类的操作中,在进行引用传递时泛型类型必须匹配才可以传递,否则是无法传递的。如果想
2022-07-13 21:19:25
201
原创 git版本控制器
版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。1.实现跨区域多人协同开发. 2.追踪和记载一个或者多个文件的历史记录3.组织和保护你的源代码和文档4.统计工作量5.并行开发、提高开发效率.6.跟踪记录整个软件的开发过程7.减轻开发人员的负担,节省时间,同时降低人为错误a、集中式版本控制工具 集中式版本控制工具,版本库是集中存放在中央服务器的,team里每个人work时从
2022-06-18 11:01:08
193
原创 ssm的整合
2.添加所用依赖3.编写spring配置文件4.配置web.xml5.配置tomcat并启动 看是否出错6.generator生成代码(1)依赖(2)配置文件(3) 测试
2022-06-16 09:03:12
77
原创 spring框架
2.spring 系统架构Spring 框架具有以下几个特点。方便解耦,简化开发Spring 就是一个大工厂,可以将所有对象的创建和依赖关系的维护交给 Spring 管理。方便集成各种优秀框架Spring 不排斥各种优秀的开源框架,其内部提供了对各种优秀框架(如 Struts2、Hibernate、MyBatis 等)的直接支持。降低 Java EE API 的使用难度Spring 对 Java EE 开发中非常难用的一些 API(JDBC、JavaMail、远程调用等)都提供了封装,使这些 API
2022-06-14 09:44:41
233
原创 springmvc的文件上传
(1)引入文件上传的依赖。(2) 创建一个页面(3)在springmvc中配置文件上传解析器(4)创建upload01接口方法3.elementui+vue+axios完成文件上传(1)页面的布局(2)后台的接口
2022-06-10 10:46:41
778
原创 springmvc简单使用
springMVC它是spring框架的一个分支,该springMVC框架主要完成的功能是:接收浏览器的请求响应,对数据进行处理,然后返回页面进行显示 可以把它理解为和Servlet干的工作是一样的。1.创建一个maven-web工程注:需要将原来的web.xml文件替换现在的web.xml资源2.引入springmvc的依赖3.注册DispatcherServlet到web.xml文件上4.创建我们的springmvc配置文件5.创建一个controller类,5.springmvc的运
2022-06-08 11:06:20
879
原创 mybatis代码生成器--generator的简单使用
作用: 根据表帮你生成实体类,和dao和xml映射文件。就是简单的CRUD。http://mybatis.org/generator/(1)引入mybatis-generator的依赖jar包。(2)generator的配置文件(3)运行你的配置文件
2022-06-07 09:50:42
291
原创 分页插件PageHelper
(2)mybatis中设置pageHelper的拦截器(3)使用pageHelper2.pageinfo中拥有的属性pageNum当前页pageSize每页的数量size当前页的数量orderBy排序startRow本页第一条从第几条数据开始endRow本页第一条从第几条数据结束total查询到的总记录数pages总页数list 本页结果显示集prePage前一页nextPage下一页isFirstPage是否为第一页isLastPage是否为最后一页hasPreviou
2022-06-06 21:09:43
694
原创 mybatis框架
什么是框架:框架就是别人搭建好的某些功能,你只需要引用该框架并加入自己的业务代码。好处: 提高我们的开发效率。mybatis的介绍:MyBatis 是一款优秀的持久层Dao框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Java实体类)映射成数据库中的记录.可以简化jdbc的操作以及占位符赋值以及查询结果集的封装。(2)在
2022-06-01 09:20:54
352
原创 maven的安装及简单实用
1.安装maven软件.https://maven.apache.org/download.cgi 下载网址最好别下载最新版本 有点不好用下载好以后开始解压,然后配置环境变量配置环境变量:MAVEN_HOME: maven的解压路径PATH: %MAVEN_HOME%\bin校验maven是否配置成功:cmd----mvn -version代表安装成功修改maven的本地仓库如果没有配置本地仓库默认会在 C:\Users\用户名.m2\repository我们应该把它修改其他
2022-05-31 11:07:57
104
原创 Vue的简单使用
1.什么是Vue2.如何使用Vue<html> <head> <title>$Title$</title> <%--导入vue得脚本--%> <script type="text/javascript" src="js/vue.js"></script> </head> <body> <%--创建一个双标签--%> <d
2022-05-30 10:07:17
138
原创 json的简单使用
1.服务响应的数据类型:(1)文本类型----它是默认的。(2)json对象类型--->重要.---一定是最多的。(3)xml类型----->一般不要,人工智能。微信小程序。<people> <name>张三</name> <age>19</age></people>这就是xml文件。2.什么是json。JSON(JavaScript Object Notation)一种简单.
2022-05-21 11:49:11
334
原创 简单使用ajax
简单的使用ajax借助jquery: https://jquery.cuishifeng.cn/(1) 在网页中引入jquery库 <!--引入jquery库--> //注意: <script>必须使用双标签 <script type="text/javascript" src="js/jquery-3.5.1.min.js"></script>(2)ajax的语法:—get提交方式。 [] 表示可有可无。 jQuery
2022-05-21 11:45:46
280
原创 过滤器Filter
过滤器的原理如何创建一个过滤器(1)创建一个类并实现Filter接口并重写相应的方法package com.aaa.filter;import javax.servlet.*;import java.io.IOException;/** * @program: web07 * @description: * @author: 闫克起2 * @create: 2022-05-19 14:46 **/public class MyFilter implements Filter
2022-05-20 11:10:31
1285
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人