![](https://img-blog.csdnimg.cn/2020071810323270.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java 学习记录
文章平均质量分 82
记录学习点滴!
柏竹
无
展开
-
Spring Cloud学习记录 08Spring Cloud Bus服务总线
Bus 服务总线Spring Cloud Bus 是轻量的消息代理,将分布式节点连接,用于广播配置文件的更新 或 监控管理补充说明&优点Bus 是轻量级消息代理Bus 主要实现 配置的自动更新 (无需配置)Bus 底层基于 RabbitMQ实现广播配置文件、监控管理存在问题上篇文章的 Config配置中心 启动后,此时更改 远端仓库 中某一微服务的配置文件,是不会同步本地缓存中的配置文件。因此在某一微服务运行后是不会及时更新配置文件,而是需要重启微服务才能更新生效问题示例原创 2021-11-05 12:33:42 · 1360 阅读 · 1 评论 -
Spring Cloud学习记录 07Spring Cloud Config 配置中心
Config 配置中心Spring Cloud Config 为微服务提供了集中式的配置方案,它主要通过远端仓库进行获取相关配置文件配置中心也是微服务,需要注册到 Eureka 服务注册中心主要功能:提供 配置服务支持集中管理各个环境的配置文件仓库 版本管理模式搭建远端仓库远端仓库搭建于 gitee,把之前配置好的 application.yml 文件信息,推送到远端仓库中,进行服务!由于GitHub国内访问较慢,因此应用 gitee 示例对 Git 不了解? 点击 Git原创 2021-11-02 22:20:06 · 163 阅读 · 0 评论 -
Spring Cloud学习记录 06Spring Cloud Gateway 网关
Gateway 网关Spring Cloud Gateway 网关 组件核心是一系列的过滤器,通过这些过滤器可以将客户端发送的请求转发(路由)到对 应的服务。补充说明&优点Gateway 替换了 Netflix Zuul 的一套解决方案隐藏 服务的 IP/端口 等信息提供统一的API路由管理方式 (url管理)Gateway 核心功能 过滤/路由/断言Gateway 也是个微服务,需要注册到 Eureka核心功能Route (路由) :路由信息由 ID、目标URL、一组断言原创 2021-10-31 22:14:16 · 371 阅读 · 0 评论 -
Spring Cloud学习记录 05Spring Cloud Feign
FeignFeign 是一个声明式的 REST客户端,它能让 REST 调用更加简单Feign 供了 HTTP 请求的模板,通过 接口 、注解的形式,定义好 HTTP 参数示例大致流程概述:消费者 引入依赖消费者 启动器类 添加注解 @EnableFeignClients消费者 创建 服务客户端接口 (用于访问请求的消费者 创建 新的controller (用于测试 步骤3访问可行消费者 pom.xml<!-- Feign --><dependency&g原创 2021-10-23 23:27:08 · 115 阅读 · 0 评论 -
Spring Cloud学习记录 04Spring Cloud Hystrix 熔断器
Hystrix 熔断器Hystrix 是一个用于分布式系统的 延迟、容错 的开源库。在分布式系统里,许多依赖不可避免的调用失败,比如超时、异常等。Hystrix能够保证在一个依赖出问题的情况下,不会导致整个服务失败,避免级联故障,以提高分布式系统的弹性。Hystrix 能为系统做:保护并控制通过第三方客户库访问的 延迟 和 故障(通常是通过网络访问的依赖关系)停止复杂分布式系统中的级联故障失败快速和快速恢复回退,并尽可能优雅地降级实现近实时监控、警报和操作控制雪崩效应在 分布式系统 中原创 2021-10-19 13:41:14 · 129 阅读 · 0 评论 -
Spring Cloud学习记录 03Spring Cloud Ribbon 负载均衡
Ribbon 负载均衡Spring Cloud Ribbon 是一个基于 Http、TCP 的客服端负载均衡工具,它是基于 Netflix Ribbon 实现的。主要解决高量访问均匀的分布到每个节点负载均衡示例提供者需要形成集群,负载均衡的功能集成到消费方,进行请求均衡分配提供者提供者 pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.原创 2021-10-17 13:34:45 · 111 阅读 · 0 评论 -
Spring Cloud学习记录 02Spring Cloud Eureka 服务注册中心
Eureka 注册中心Eureka 是 微服务的套件,基于 REST服务 。用于定位服务,以实现云端中间层服务发现 和 故障转移等功能Eureka 组件Eureka Server 服务注册中心(服务方)提供 服务注册 和 发现 功能Service Provider 服务器 (提供方)将自身服务注册到 Eureka ,使 客户端 可业务服务功能Service Consumer 客户端(应用方)从 Eureka 获取注册服务列表,实现 业务服务 功能Eureka Serve 也可是一个集原创 2021-10-15 23:06:30 · 118 阅读 · 0 评论 -
Spring Cloud学习记录 01Spring Cloud 概念
Spring Cloud 认知Spring Cloud 是一系列框架的集合,它整合了优秀框架到自己项目中。其中实现了:配置管理、服务发现、智能路由、负载均衡、熔断器、控制总线等功能。主要涉及到的组件:Eureka:服务注册中心,用于服务管理Ribbon:基于客户端的负载均衡组件Hystrix:容错框架,能够防止服务的雪崩效应Feign:Web 服务客户端,能够简化 HTTP 接口的调用Zuul:API 网关,提供路由转发、请求过滤等功能Config:分布式配置管理Sleuth:服务跟踪原创 2021-10-15 23:05:22 · 109 阅读 · 0 评论 -
Java学习记录 Lombok简化开发应用
Lombok简化开发应用Lombok是一个Java库,它是款可帮助开发人员减少 Java对象(POJO)的代码冗余,通过注解实现这一目的常用注解说明:注解用于说明val属性声明将变量声明为 final@NonNull方法参数、属性对参数进行是否为空的校验,空则抛出NPE异常@Cleanup局部变量当前变量范围内即将执行完毕退出之前会自动清理资源,自动生成try-finally这样的代码来关闭流@Getter/@Setter属性、类无需手写get、转载 2021-10-08 10:23:53 · 78 阅读 · 0 评论 -
Spring Boot学习记录 05SpringBoot MyBatis Plus应用
SpringBoot MyBatis Plus应用MyBatis Plus是MyBatis的增强工具,在MyBatis的基础上做了增强不改变的开发实现,从而提高效率。首次应用应用说明:内存数据库(h2) 进行测试引入依赖 pom.xml<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.re原创 2021-09-25 10:39:14 · 118 阅读 · 0 评论 -
Spring Boot学习记录 04SpringBoot Thymeleaf应用
SpringBoot Thymeleaf应用Thymeleaf是用于 Web 和 独立环境 的Java模板引擎(类似于JSP)SpringBoot 为 Thymeleaf 提供一系列的默认配置,Thymeleaf依赖 一旦导入,项目会自动配置thymeleaf优点:Thymeleaf 在有网络和无网络的环境下皆可运行,通过美工实现页面数据的动静结合有网络则覆盖静态显示的内容数据无网络则显示默认静态的内容数据SpringBoot完美整合,springboot默认整合thymeleafSpr原创 2021-09-20 22:10:19 · 211 阅读 · 0 评论 -
Spring Boot学习记录 03SpringBoot 整合其他框架
SpringBoot整合其他框架SpringBoot 抛弃了传统 xml 配置文件,通过JavaBean形式进行配置。因此其他配置整合需要应用说明整合SpringMVCSpringBoot 对 SpringMVC 的一些自动配置可以满足大部分需求,但也可以自定义配置类 并实现WebMvcConfigurer接口 进行配置WebMvcConfigurer接口主要重写的方法返回方法说明voidaddInterceptors(InterceptorRegistry registr原创 2021-09-20 22:07:00 · 210 阅读 · 0 评论 -
Spring Boot学习记录 01SpringBoot 认知应用
Spring Boot概念Spring Boot 是 Spring 框架的优化版本,Spring Boot 大大优化了 Spring的 复杂配置 和 依赖配置版本 问题特点独立运行 Spring项目内嵌 tomcat 和 jetty 容器简化 maven配置无代码生成 和 xml配置…首次应用创建 Maven无骨架项目 IDEA创建Maven项目 (无骨架Java项目)pom.xml 引入 SpringBoot相关依赖<project> ...原创 2021-09-19 12:33:11 · 91 阅读 · 0 评论 -
Spring Boot学习记录 02SpringBoot 数据配置
SpringBoot数据配置Spring注解配置Spring全注解配置,常用注解:@Configuration :声明在类上,作为配置类(代替xml文件)@Bean :声明在方法上,将方法返回值导入Bean容器,(代替 标签)@value :属性注入(需要属性文件进行搭配应用)@PropertySource :指定外部属性文件以下代码用 连接池配置进行 测试在以上篇章 首次应用的代码 基础上进行更改pom.xml 引入 Druid连接池依赖<dependency>原创 2021-09-19 12:34:38 · 200 阅读 · 0 评论 -
Java学习记录 MyBatis框架应用
文章目录Mybatis框架Mybatis对象ResourcesSqlSessionFactoryBuilderSqlSessionFactorySqlSessioMyBatis构架配置日志Mapper动态代理输入映射传递多个参数#{} 和 ${} 区别输出映射MyBatis全局配置文件配置内容propertiessettingstypeAliasesMappersMyBatis映射关系对一 映射关系对多映射关系动态SQLMyBatis缓存一级缓存二级缓存二级缓存其他设置MyBatis逆向生成参考文档:my原创 2021-07-31 12:10:13 · 307 阅读 · 0 评论 -
Java学习记录 08SpringMVC RESTful风格
SpringMVC REST风格REST(Representational State Transfer)即 表述性转移,是目前最流行的一种软件架构风格REST指的是一组架构 约束条件 和 原则 。满足这些约束条件和原则的应用程序或设计就是RESTfulREST特性:资源(Resources): 互联网所有的事物都可以被抽象为资源 。它可以是一段文本、一张图片、一首歌 曲、一种服务,总之就是一个具体的存在。可以用一个URI(统一资源定位符)指向它,每种资源对应 一个特性的URI。要获取这个资源,访原创 2021-07-20 10:45:16 · 109 阅读 · 0 评论 -
Java学习记录 07SpringMVC 上传&下载
SpringMVC 上传&下载上传SpringMVC框架 文件上传是基于 commons-fileupload组件 ,并且对该组件 进一步的封装。文件上传提供支持可直接 用 MultpartResolver接口 。该接口用于处理上传请求,请求包装成 可直接获取文件的数据!!MultpartResolver接口方法:public interface MultipartFile extends InputStreamSource { // 返回请求参数的名称 String getN原创 2021-07-18 10:58:25 · 81 阅读 · 0 评论 -
Java学习记录 06SpringMVC 拦截器
SpringMVC 拦截器Spring MVC 提供了 Interceptor 拦截器机制,用于请求的预处理和后处理Spring MVC 的拦截器(Interceptor)与 Java Servlet 的过滤器(Filter)类似,它主要用于拦截用户的请求并做相应的处理,通常应用在权限验证、记录请求信息的日志、判断用户是否登录等功能上。了解Java Servlet 的过滤器:JavaWeb学习记录 Servlet过滤监听应用拦截器定义在 Spring MVC 框架中定义一个拦截器需要对拦截器进行定原创 2021-07-16 14:43:16 · 67 阅读 · 0 评论 -
Java学习记录 05SpringMVC 异常
SpringMVC 异常在该框架 开发过程中,难免都会有些可预知的异常,和不可预知的异常,但可以捕捉到它们,在捕捉这一过程,异常处理保证在出现问题的前提也不会终止程序!!@ExceptionHandler 注解实例实现:(项目结构) . | ├── com │ ├── controller | | └── ExController │ ├── exceptions | | ├── GlobalExceptionHandler | | ├原创 2021-07-15 23:05:00 · 68 阅读 · 0 评论 -
Java学习记录 04SpringMVC 重定向和转发
SpringMVC 重定向和转发Spring MVC 请求方式 分为:转发、重定向 2种。在Servlet中 请求方式处理都是在 controller层 !!!转发客户浏览器发送 http 请求,在内部方法中完成请求处理和转发动作。在这里转发的路径必须是同一个 Web 容器下的 URL,其不能转向到其他的 Web 路径上,中间传递的是自己的容器内的 request重定向客户浏览器发送 http 请求,Web 服务器接受后发送 302 状态码响应及对应新的 URL地址 给客户浏览器,客户浏览器原创 2021-07-15 23:01:47 · 140 阅读 · 0 评论 -
Java学习记录 03SpringMVC 传递参数
Spring MVC传递参数Spring MVC Controller 接收请求参数的方式有很多种,有的适合 get 请求方式,有的适合 post 请求方式,有的两者都适合。主要有以下几种方式:通过 处理方法的形参接收请求参数通过 HttpServletRequest 接收请求参数通过 @PathVariable 接收 URL 中的请求参数通过 @RequestParam 接收请求参数获取 不同类型的对象 (日期、数组、集合、…)项目结构:(主要测试文件其余省略) . | ├─原创 2021-07-13 10:24:22 · 120 阅读 · 2 评论 -
Java学习记录 02SpringMVC 访问静态资源
静态资源的访问静态资源一般在web.xml 配置时需要添加允许路径url(url-pattern节点)。url-pattern节点 中的值一般有两种写法:*.doSpringMVC 的前端控制器 DispatcherServlet 的常使用后辍匹配方式,可以写为*.do 或者 *.action, *.mvc 等。/DispatcherServlet 会将向静态内容。例如 .css 、.js 、图片 等资源的获取请求 时,也会当作是一个普通的 Controller 请求,因此所有的静态资源获取请原创 2021-07-13 10:23:28 · 98 阅读 · 0 评论 -
Java学习记录 01SpringMVC认知和应用
文章目录SpringMVC首次应用工作流程组件@Controller和@RequestMapping注解SpringMVCSpring MVC 是 Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,本质上相当于 Servlet(底层运行)Spring MVC 分工明细 ,和框架无缝结合,采用了松散耦合可插拔组件结构,比其他 MVC 框架更具扩展性 和灵活性MVC设计模式了解:JavaWeb学习记录 MVC与三层的设计模式_**SpringMVC优势 **轻量级,不依赖原创 2021-07-13 10:22:31 · 102 阅读 · 2 评论 -
Java学习记录 Spring-事务
Spring事务事务(Transaction)是面向关系型数据库(RDBMS)企业应用程序的重要组成部分,用来确保数据的完整性和一致性。事务了解 :MySQL学习记录 事务篇Spring 实现声明式事务管理主要有 2 种方式:基于 XML 方式的声明式事务管理通过 Annotation 注解方式的事务管理事务管理接口Spring 的事务管理 :PlatformTransactionManager、TransactionDefinition 是事务主要核心接口PlatformTransac原创 2021-07-08 22:37:28 · 372 阅读 · 2 评论 -
Java学习记录 Spring-JDBC
Spring-JDBC实现Spring 针对数据库开发提供了 JdbcTemplate 类,它封装了 JDBC,支持对数据库的所有操作JDBC以往的说明:Java学习记录 JDBC篇Class JdbcTemplateorg.springframework.jdbc.core.JdbcTemplate方法修饰符返回方法说明publicintupdate(String sql)用于执行新增、修改、删除等语句publicintupdate(String s原创 2021-07-06 22:25:13 · 82 阅读 · 1 评论 -
Java学习记录 Spring核心Aop
文章目录Spring核心AOPAOP代理静态代理动态代理基于JDK的动态代理基于CGLIB的动态代理Spring AOPAspectJ 实现AOPXML实现AOPAnnotation实现AOPXML与Annotation 声明区别Spring核心AOPAOP 的全称是“Aspect Oriented Programming” 面向切面编程,是一种编程模式,将业务逻辑的各个部分进行隔离,使开发业务逻辑时可 减少代码重复率、提高业务开发效率AOP代理代理:自己不做,找人帮你做代理模式:在一个原有功能的原创 2021-07-04 11:29:28 · 55 阅读 · 1 评论 -
Java学习记录 Spring核心loC
Spring IoC容器Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想Ioc 在开发中,无需自行实例对象,而是有 Spring Ioc容器 创建。Spring容器会负责控制程序之间的关系,而不是由代码直接控制,因此,控制权由 Spring容器 接管,控制权发生了反转,是Ioc设计思想Spring 提供了两种 IoC 容器,分别为 BeanFactory 和 ApplicationContext.BeanFactoryBeanFactory是一个管理原创 2021-06-25 10:18:40 · 386 阅读 · 0 评论 -
Java学习记录 Spring概述
SpringSpring是主流的 Java Web开发框架 ,该框架是轻量级、性能好、易于测试。Spring具有控制反转(IoC)和面向切面(AOP)两大核心。Java Spring 框架通过声明式方式灵活地进 行事务的管理,提高开发效率和质量Spring优势方便解耦,简化开发方便继承各种优秀框架降低 Java EE API 使用难度方便程序测试AOP编程支持声明式事务支持Spring体系结构Spring提供了一站式服务,是以模块化形式呈现需要自行选择数据访问/集成JD原创 2021-06-25 10:17:32 · 80 阅读 · 0 评论 -
Java学习记录 Java应用Redis(IDEA)
Jedis连接环境下载 jedis.jar 下载jar包Maven项目 ,导入依赖<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version></dependency>连接服务器实例对象连接Jedis jedis = new Jedis(“i原创 2021-06-18 18:22:21 · 63 阅读 · 0 评论 -
Java学习记录 Maven依赖
Maven依赖依赖管理项目依赖管理 ,pom.xml 文件中定义jar包的GAV坐标,<dependencies> <dependency> <!--依赖 GAV坐标--> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.10</version> <!--依赖原创 2021-06-12 18:38:31 · 188 阅读 · 0 评论 -
Java学习记录 Maven常用命令
Maven常用命令Maven命令需要在 pom.xml 所在目录中执行mvn compile生成 target目录,该目录中存放了编译后的字节码文件mvn clean删除 target目录mvn test在 target目录 中生成,surefire、 surefire-reports(测试报告)、test-classes(测试的字节码文件)三个文件夹mvn package在 target目录 中生成本项目的 jar包 或 war包 等mvn install将打包好的 jar包原创 2021-06-12 11:44:49 · 1231 阅读 · 1 评论 -
Java学习记录 IDEA搭建Maven项目&Tomcat应用
IDEA应用Maven项目IDEA配置打开所有设置(必须在这里打开设置,否则其他项目无效)设置Maven项目目录运行环境Java项目的创建有骨架创建项目,选择骨架配置项目基本信息确认信息无骨架只需关闭选中,其他步骤跟有骨架的一致无骨架创建项目需要自行配置 pom.xml手动将Maven文件夹补齐JavaWeb项目的创建有骨架步骤就一步不一样,其他剩下步骤就不赘述了!无骨架无骨架创建项目后,需要自行配置 JavaWeb信息项目配置手动原创 2021-06-12 09:54:20 · 1361 阅读 · 1 评论 -
Java学习记录 Maven项目概念篇
Maven概念目录布局Maven创建项目,目录结构都是有标准的模板目录说明src/main/java应用程序的源代码的目录src/main/resources项目的源文件所在的目录src/main/filters资源筛选器文件src/main/webappWeb 应用程序源src/test/java测试代码所在的目录,src/test/resources测试资源src/test/filters测试资源筛选器文件src/it集原创 2021-06-11 18:12:34 · 115 阅读 · 0 评论 -
JavaWeb学习记录 JspSmartUpload应用
JspSmartUpload应用jspSmartUp是一种早期流行的使用框架,适合于上传小型的文件,具有灵活性简单高效。使用方法很简单FileFile类 包装上传文件的所有信息。通过 File类 可 获取/设置 文件的相关信息常用方法返回方法说明booleanisMissing()判断文件是否对应表单的voidsaveAs(String url, int type)将文件进行保存StringgetFieldName()获取 文件的表单name属性值原创 2021-04-29 23:28:46 · 359 阅读 · 0 评论 -
JavaWeb学习记录 JSON操作
JSONJSON 语法是 JavaScript 对象表示法语法的子集数据在名称/值对中数据由逗号分隔花括号保存对象方括号保存数组var 变量名 = { "key" : value , // Number类型 "key2" : "value" , // 字符串类型 "key3" : [] , // 数组类型 "key4" : {}, // json 对象类型 "key5" : [{},{}] // json 数组};JSON 值数字(整数或浮点数)字符串(在双引号中)布原创 2021-04-25 11:51:52 · 86 阅读 · 0 评论 -
JavaWeb学习记录 Ajax应用
AjaxAJAX 是一种用于创建快速动态网页的技术是 HTML/XHTML 、 CSS 、 JavaScript/DOM 知识的结合应用,结合出的新技术新方法通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。可在不重新加载整个网页的情况下,对网页的某部分进行更新Ajax工作原理Ajax的工作原理相当于在用户和服务器之间加了—个中间层(AJAX引擎),客户端操作与服务器响应异步化。并不是所有的用户请求都提交给服务器,只有确定需要从服务器读取新数据时再由Ajax引擎代为向服务器提交原创 2021-04-24 11:44:17 · 120 阅读 · 0 评论 -
JavaWeb学习记录 MVC与三层的设计模式
MVC设计模式MVC设计是用于应用程序的分层开发的模式模型层(Model)、显示层(View)、控制层(Controller)M: 应用程序的核心功能,管理模块中的数据和值(bean, dao)V: 视图提供模型的展示,会根据用户控制情况进行更变(jsp/html)C: 对用户的输入做出反应,管理用户和视图的交互,是连接模型和视图的枢纽(servlet/service)三层构架三层架构是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数 据访问层(DAL)UI: 用户交原创 2021-04-21 12:46:19 · 232 阅读 · 0 评论 -
JavaWeb学习记录 Servlet过滤监听应用
过滤器过滤器是对web资源进行拦截,做⼀些处理后再交给下⼀个过滤器或servlet处理,通常都是用来拦截request进行处理的,也可以对返回的response进行拦截处理应用步骤:添加 servlet jar依赖包创建对象类 应用 javax.servlet.Filter接口 ,并重写 init() 、 doFileter() 、destroy() 方法配置 web.xml 文件(以下配置用于过滤器使用)<filter> <filter-name>原创 2021-04-20 11:00:08 · 99 阅读 · 1 评论 -
JavaWeb学习记录 Web数据存储/跟踪
会话跟踪会话跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。保持对用户会话期间的数据管理。常用的会话跟踪技术是Cookie与Session。Cookie 通过在 客户端记录 信息确定用户身份Session 通过在 服务器端记录 信息确定用户身份CookieCookie是客户端请求服务器后,服务器发给客户端的⼀个辨认标识,保存在客户端,当客户端再次向服务器发送请求时,会携带着这个辨认标识,服务器就可以通过这个标识来识别 客户端的身份 或 状态等…Cookie应用应用步骤:存数据原创 2021-04-18 20:47:14 · 281 阅读 · 1 评论 -
JavaWeb学习记录 Servlet应用
ServletServlet是在Web服务器运行的Java程序,主要负责与客户端数据交互,生成动态的Web内容。通常 通过HTTP 进行 接收 和 响应 来自客户端的请求!工作步骤:服务器 启动Servlet客户端 发送请求 至服务器服务器 调用Servlet,根据 客户端 请求内容 传给服务器服务器 响应返回 客户端Servlet API点击查看文档implements ServletJava.lang.Objectjavax.servlet用于 接收请求 与 响应请求 ,原创 2021-04-13 13:14:25 · 130 阅读 · 0 评论