自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 Java-支付宝(PC扫码支付,退款)从0-1

一.准备工作 登录支付宝开放平台进行扫码登录 登录后对个人信息填写 右上角进入管理中心 选择研发服务 进入界面对密钥进行设置 下载工具 下载密钥生成工具 手机下载支付宝沙箱版,用于测试时付款 开发思想 来自官网 调用顺序如下: 商户系统请求支付宝接口 alipay.trade.page.pay,支付宝对商户请求参数进行校验,而后重新定向至用户登录页面。 用户确认支付后,支付宝通过 get 请求 returnUrl(商户入参传入),返回同步返回参数。 交易成功后,支付宝通过 post 请求 no

2020-08-18 23:23:17 1024 1

原创 Bean的生命回调函数

1.6.自定义Bean的性质 spring框架提供了很多接口,我们可以使用这些接口去自定义一个bean 1.6.1.生命回调函数 我们可以通过实现InitializingBean和DisposableBean接口,让容器与bean生命周期的管理进行交互 容器初始化和销毁分别执行的函数afterPropertiesSet()和destory() JSR-250中使用注释来表示初始化和销毁函数,@PostConstruct和@PreDestory这就意味着bean没有耦合spring接口 使用注解的时候,需要在

2020-08-13 20:17:38 344

原创 深拷贝与浅拷贝

基本介绍: 原型模式(Prototype):原型实例指定创建对象的种类,并且通过拷贝这些原型,创建新的对象 原型模式是一种创建型设计模式,允许一个对象再创建另一个可定制的对象,无需知道如何创建的细节 工作原理:在原型对象中,实现Clone接口,重写clone方法,其他对象需要创建多个原型对象时,可以使用对象.clone() 浅拷贝: 对于数据类型是基本数据类型的成员变量,浅拷贝会直接进行值传递,也就是将该属性值复制一份给新的对象 对于数据类型是引用数据类型的成员变量,比如说成员变量是某个数组,某个类的对象

2020-08-12 22:20:46 222

原创 Spring官方文档阅读(四)之浅谈Bean Scope

1.5.Bean Scope Bean在Spring 3.0之前存在6种作用域,3.0+ 存在7种作用域,多出的一种是线程作用域(Thread Scope) singleton:(默认)为每个Spring IoC容器将单个bean定义的作用域限定为单个对象实例。 prototype:将单个bean定义的作用域限定为任意数量的对象实例。 request:将单个bean定义的范围限定为单个HTTP请求的生命周期。也就是说,每个HTTP请求都有一个在单个bean定义后面创建的bean实例。仅在可感知网络的Spr

2020-08-11 16:28:08 334

原创 Spring官方文档阅读(三)之Bean的依赖相关知识点

1.4.依赖关系 什么是依赖 我们可能在A类中,会使用到B类,这时需要在A类中对B类进行一个依赖注入,常见的注入方式有 声明变量,在变量上添加@Autowried注解 在XML文件中,对另外一个Bean的引用 1.4.1.依赖注入与控制反转 依赖注入(Dependency injection DI)是一个过程,对象只能通过构造函数参数,工厂方法的参数在构造或创建对象实例后,通过对象的属性中来确定它们的依赖关系,然后容器在创建那些bean时,会注入有依赖的bean,而不需要用户去通过new来获取到这个

2020-08-07 19:51:14 816

原创 Spring官方文档阅读(二)之Bean的简单理解与使用

1.3.Bean简介 Spring IoC容器管理一个或多个bean,这些bean是使用我们提供给容器的配置元数据创建的(例如,以XML<bean//>定义的形式 ),在容器本身内,这些bean定义表示BeanDefinition对象,这个对象包含了以下元数据 类名称:通常,定义了Bean的实际实现类(一个class类)。 Bean行为配置元素,用于声明Bean在容器中的行为方式(作用域,生命周期回调等)。 对其他bean进行工作所需的引用。这些引用也称为协作者或依赖项。 要在新创建的对象中设

2020-07-13 23:18:13 231

原创 Spring官方文档阅读(一)之IoC容器

1.2.容器概述 经常在学习spring时,听到ApplicationContext,那么到底什么是ApplicationContext 1.BeanFatory的子接口 2.这个接口代表Spring IoC容器,负责实例化,配置和组装Bean 3.容器读取元数据,对象实例,配置文件,组装那些对象的指令 (这些配置元数据可能是XML,java注释,java代码,它更好的表达了我们的应用程序中,各个对象的依赖性) new ClassPathXmlApplicationContext就是在使用IoC容器 Spr

2020-07-13 22:40:51 252 1

原创 Nginx入门,这篇就够了

概念: Nginx以事件驱动的方式编写,所以有非常好的性能,同时也是一个非常高效的反向代理、负载平衡服务器。在性能上,Nginx占用很少的系统资源,能支持更多的并发连接,达到更高的访问效率;在功能上,Nginx是优秀的代理服务器和负载均衡服务器;在安装配置上,Nginx安装简单、配置灵活。 Nginx支持热部署,启动速度特别快,还可以在不间断服务的情况下对软件版本或配置进行升级,即使运行数月也无需重新启动。 Nginx的安装: 方法一 正式开始前,要先安装好编译环境gcc g++开发库 #安装make yu

2020-06-05 22:29:13 1796 1

原创 ActiveMQ的可靠性和保存数据到mysql中

消息的成功消费通常包括三个步骤:client接收消息 ==> client处理消息 == >消息被确认 持久化的消息 默认是持久化 非持久: messageProducer.setDeliveryMode(DeliveryMode.NON_PERSISTENT) 当服务器宕机,消息不存在 持久化: 在生产者端开启持久化 messageProducer.setDeliveryMode(DeliveryMode.PERSISTENT) 当服务器宕机,消息依旧存在 消息订阅 客户端首先向MQ注册一

2020-05-13 16:47:33 569

原创 activeMQ的HelloWorld

activeMQ主要实现: 流量削峰 异步 系统解耦 启动 下载activeMQ到LINUX中 进入activeMQ的bin目录中 普通启动/关闭: ./activemq start/stop 端口号: 61616 带日志启动: ./activemq start > 日志地址 查看是否启动 ps -ef | grep avtivemq | grep -v grep netstat -anp | grep 61616 window访问http://linuxIP:8161/ 控制台访问 61616是后

2020-05-13 16:04:02 251

原创 浅谈服务调用

调用远程方法前,先获取invoker public class InvokerInvocationHandler implements InvocationHandler { private final Invoker<?> invoker; public InvokerInvocationHandler(Invoker<?> handler) { ...

2020-05-06 10:24:48 394

原创 Dubbo如何进行服务引用

在解析标签时,dubbo:reference标签会被ReferenceBean调用,实现FactoryBean,这是一个Spring的工厂Bean public class ReferenceBean<T> extends ReferenceConfig<T> implements FactoryBean, ApplicationContextAware...

2020-05-06 10:20:15 590

原创 服务暴露那点事

在初始化server的注册解析器时,不是封装到xxxConfig中,而是调用servceBean方法 @Override public void init() { registerBeanDefinitionParser("service", new DubboBeanDefinitionParser(ServiceBean.class, true)); registerBeanD...

2020-05-06 09:55:51 313

原创 Dubbo第一步:解析配置文件

项目启动时,先对xml的标签进行解析 在初始化前,将每一个解析器的内容都封装到相应的XXXConfig.class中 @Override public void init() { registerBeanDefinitionParser("application", new DubboBeanDefinitionParser(ApplicationConfig.class, true))...

2020-05-06 09:36:39 245

原创 Nginx入门简易版

Nginx的安装和启动 1.centOS8安装Nginx使用命令: yum install nginx 2.启动命令: systemctl start nginx 3.在window系统访问Linux的ip地址,在访问之前先开放防火墙的端口号 1)firewall-cmd --add-service=http --permanent 2)firewall-cmd --add-port=80/tcp...

2020-05-02 03:19:04 227

原创 解决Nginx出现forbidden(13: Permission denied)报错的三种方法

1.是否缺失index.html index.htm server { listen 80; server_name localhost; location /www/ { index index.html index.htm; root /data/www/; } } 2.文件是否权限不足 添加权限: chmod 777...

2020-05-01 20:21:07 2917

原创 SpringBoot不同环境下,配置文件的加载

命名:application-{profile}.properties/yml spring.profiles=prod在其他配置文件中,设置这个文件的文件名 在application.properties配置文件中spring.profiles.active=文件名,就可以激活相应的配置文件 yaml可以使用模块化: server: port: 8080 spring: profile...

2020-04-28 16:19:28 511

原创 SpringBoot为什么不用自己写配置文件

@SpringBootApplication做了什么? @SpringBootApplication public class SpringBootApplication { public static void main(String[] args) { SpringApplication.run(SpringBootApplication.class, args); ...

2020-04-28 15:54:50 2631

原创 SpringBoot中yaml,properties最基本的区别与书写

yaml/properties书写注意事项 命名方式 application.properties/yml application-{profile}.properties/yml 配置文件的作用: 修改SpringBoot的默认配置 YAML: 采用的递归的模式, 以数据中心 语法: k: v 表示一对键值对(v前面需要空格) 如果有层级关系, 要用空格缩进, 主要是左对齐的都是一...

2020-04-25 03:29:55 466

空空如也

空空如也

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

TA关注的人

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