
Spring
spring
好运haoyun
这个作者很懒,什么都没留下…
展开
-
狂神SpringCloud 服务降级
服务降级 因为Feign项目的不成功,导致服务降级也无法完成 问题已解决,版本问题根据实际业务情况以及流量,对一些服务喝页面有策略的不处理或换简单的方式处理,从而释放服务器资源以保证核心服务正常运作或高效运作使用场景:当负载超过了预设的阀值或流量超出预计,保证重要的服务能正常运行,将不紧急,不重要的服务延迟使用或暂停使用核心设计服务降级-分布式开关超时降级:设定超时重试次数和机制,使用异步机制探测恢复情况失败次数降级:一些不稳定的API,当失败次数达到一定阀值,自动降级,原创 2020-11-09 10:48:43 · 225 阅读 · 0 评论 -
Ribbon负载均衡例子以及BUG解决
负载均衡RibbonSpring-Cloud-Ribbon是基于Netfilx Ribbon实现的一套客户端负载均衡的工具给客户端软件提供负载均衡算法Ribbon提供一系列完整的配置项,连接超时、重试等等LB(Loocal Balance),负载均衡将将用户请求平坦到多个服务器上,从何达到系统的HA(高可用)常见的负载均衡软件有Nginx,LVs等等,lvs也只是在客户端和服务端之间加一层,按需分配负载均衡分类集中式LB在消费方和服务方之间使用独立的LB设施,设施通过某种策略转发请原创 2020-09-30 10:52:36 · 649 阅读 · 0 评论 -
SpringCloud 单Eureka简单例子consumer-provider
SpringCloud版本选择建议使用F或G开头的创建项目需要的工作maven设置打包方式导入依赖文本SpringCloud,provider和consumer都需要加spring-cloud包,并且要设置<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifa原创 2020-09-30 10:46:03 · 450 阅读 · 0 评论 -
Shiro 简单项目记录、狂神Shiro、 Spring整合Shiro、认证、授权、Shiro-Thymeleaf整合,Shiro整合Mybatis
Shiro简单项目记录项目结构pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://原创 2020-09-21 08:46:31 · 501 阅读 · 0 评论 -
Spring声明式事务(交由容器管理事务)
声明式事务回顾事务transaction事务在项目开发中十分重要,涉及到数据的一致性事务ACID原则原子性一致性隔离性多个业务可能操作同一个资源,防止数据损坏持久性事务一旦提交,无论系统发生什么问题,结果都不会被影响这里举了一个例子,进行insert操作和delete操作,insert操作成功,delete操作失败,根据ACID原则,这一组业务应该一起成功或者一起失败在官方文档中介绍了两种事务的实现类型http://mybatis.org/spring/zh/t原创 2020-08-24 07:57:19 · 309 阅读 · 1 评论 -
Spring-Mybatis 整合的两种方式
整合Mybatis回顾Mybatis步骤:导入相关包junitmybatismyssqlspringaopmybatis-spring编写配置文件测试导包<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId>原创 2020-08-24 07:53:24 · 426 阅读 · 0 评论 -
Spring实现AOP(使用API接口、使用自定义类、使用注解)
AOP不改变原有的业务,增加功能AOP在Spring中的作用横切关注点:跨越应用程序多个模块的方法或功能,于我们业务逻辑无关,但需要关注的部分切面(aspect):横切关注点被模块化的特殊对象,是一个类通知(Adivce):切面必须要完成的工作,类中的一个方法目标(Target):被通知的对象代理(Proxy):向目标对象应用通知后创建的对象切入点(PointCut):切面通知 执行的“地点”的定义连接点(JointPoint):于切入点匹配的执行点SpringAOP中,通过Ad原创 2020-08-24 07:50:49 · 990 阅读 · 0 评论 -
SpringAOP代理模式-静态代理-动态代理
代理模式SpringAOP的底层,SpringAOP和SpringMVC必问代理模式:静态代理动态代理静态代理抽象角色:一般会使用接口或者抽象类来解决真实角色:被代理的角色代理角色:代理真实角色,代理真实角色后,我们一般会做一些附属操作客户:访问代理对象的人租房例子客户找中介,中介找房东,实现租房的方法,还能添加一些附属操作代码步骤:接口真实角色代理角色客户端访问角色代理模式的好处:可以使真实角色的操作更加存粹,不用去关注一些公共的业务公共业务交给代理角原创 2020-08-24 07:47:03 · 156 阅读 · 0 评论 -
Spring使用Java方式依赖注入@Configuration@Bean
使用Java的方式配置Spring完全不使用XML配置文件,全部使用Java的方式来做@Configuration@ComponentScan("com.haoyun.POJO")public class HaoyunConfig { @Bean public User UserBean() { return new User(); }}经过@Configuration的配置HaoyunConfig已经成为一个配置类了,类似于Contex原创 2020-08-24 07:44:36 · 792 阅读 · 0 评论 -
Spring使用注解注入
使用注解注入在Spring4之后,要使用注解开发,必须要保证AOP的包导入了bean属性如何注入在applicationContext.xml中指定要扫描的包,才能使用注解<!--指定要扫描的包,这个包小的注解就会生效--><context:component-scan base-package="com.haoyun.POJO"/>衍生的注解@Component有几个衍生注解,我们在web开发中,会按照MVC三层架构分层添加后应原创 2020-08-24 07:42:34 · 196 阅读 · 0 评论 -
Spring使用注解自动装配、@Autowired和@Resource比对
Annotation-based Container Configuration使用annotation配置更加简洁,Spring都支持这两种配置风格spring2.0引用了@Requiredspring2.5采用通用的方法来驱动spring依赖注入@Autowired2.5还添加了JSR-250注释的支持,@PostConstruct和@PreDestroy(初始化方法)(销毁方法)需要注册单独的Bean定义,和context命名空间<?xml version="1.0" encodi原创 2020-08-22 10:46:11 · 294 阅读 · 0 评论 -
Spring Bean的自动装配-XML配置
Bean的自动装配自动装配,spring满足bean依赖的一种方式autowirespring会在上下文中自动寻找,并自动给bean装配属性在spring中有三种装配方式在xml中显示的配置在java中显示的配置隐式 的自动装配bean【重要】XML Configuration Demo原先使用的方法<bean id="cat" class="com.haoyun.POJO.Cat"/><bean id="dog" class="com.haoyun.原创 2020-08-22 10:44:16 · 189 阅读 · 0 评论 -
Spring Bean-Scopes作用域-Singleton单例模式、ProtoType原型模式
Bean-Scopes作用域Singleton 单例Prototype 原型request 请求session 会话application 应用WebSocket 连接主要使用前两种Singleton 单例模式单例模式是Spring的默认机制只管理Singleton bean 的一个共享实例,带有一个或多个match bean定义的id到导致只返回一个特定的bean实例定义的bean限定为singleton时,只创建该bean定义的object的一个实例,存储在s原创 2020-08-22 10:42:10 · 338 阅读 · 0 评论 -
Spring-依赖注入Constructor、Setter、 p-namespace、c-namespace
IOC创建对象的方式使用无参构造创建对象,默认使用有参构造,通过构造器创建@Datapublic class Hello { private String name; public Hello(String name){ }}添加了一个有参构造函数<bean id="Hello" class="com.haoyun.POJO.Hello"> <property name="name" value="sdafsdf"/&g原创 2020-08-22 10:39:04 · 210 阅读 · 0 评论 -
Spring-import Context.xml-导入应用上下文配置文件
import配置文件之前官网说一个正规的beans命名为applicationContext.xml,这是一个总的配置文件,项目中可以有多个配置文件,这样的好处是,可以由多个人编写,最后汇总,汇总到主配置文件applicationContext.xmlApplicationContext classPathXmlApplicationContext = new ClassPathXmlApplicationContext("applicationContext.xml","Beans.xml");创原创 2020-08-22 10:35:26 · 542 阅读 · 0 评论 -
Spring-bean-id alias别名setting
别名alias<bean id="Hello" class="com.haoyun.POJO.Hello"> <constructor-arg name="name" value="haoyun"/></bean><alias name="Hello" alias="safsdf"/>原来的名字也能用,别名也能用这个又是没用的,直接再bean标签使用name也能起别名,里面的内容,用逗号或分号或空格都能起别名<bean id="He原创 2020-08-22 10:33:42 · 183 阅读 · 0 评论 -
HelloSpring-Demo
HelloSpring制作一个简单演示,如何将new对象交给第三方来做,用户可以通过修改xml文件来实现IoC操作导入包配置类加载路径应用上下文xml文件编写JavaBean测试,通过上下文获取bean来new对象导入包<dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId>原创 2020-08-22 10:28:34 · 136 阅读 · 0 评论 -
Spring-IoC理论推导
IOC理论推导之前使用的流程:UserDao接口UserDaoImpl实现类UserService业务接口UserServiceImpl业务实现类在之前的业务中,用户的需求会影响到我们原来的代码,需要根据用户需求去修改源代码,如果程序代码量巨大,修改一次的成本十分昂贵使用set接口来实现也是一种动态实现 值的注入之前,程序是主动创建对象,控制权在程序员手上使用了set注入后,程序不再具有主动性,而是变成了被动的接受对象这种思想,本质上解决了问题,程序员不用再去管理对象的创建,系统原创 2020-08-22 10:27:03 · 229 阅读 · 0 评论 -
Spring组成-七大模块
Spring组成spring组成的七大模块核心容器(SpringCore)核心容器提供Spring框架的基本功能。spring以bean的方式组织和管理Java应用的各个组件及其关系,spring使用BeanFactory来产生和管理Bean,是工厂模式的实现,BeanFactory使用控制反转(IoC)模式将应用的配置和依赖性规范与实际的应用程序代码分开应用上下文(Spring Context)Spring上下文是一个配置文件,向spring提供上下文信息,spring上下文包括企业原创 2020-08-22 10:24:32 · 5894 阅读 · 0 评论