- 博客(33)
- 资源 (1)
- 收藏
- 关注

原创 华为云会议对接,华为云会议事件消息订阅
具体的需求是,我们的app上集成了华为云会议sdk,在用户开启聊天的时候没有收到相关消息通知,解决思路是,当用户在app上调华为云会议sdk接口发起通话成功之后,调用服务端接口进行会议事件消息的订阅,由我们服务端与华为云会议服务端进行socket通信,通过订阅华为云会议事件消息给用户发送相关通知。1、获取accessToken 接口(在调用华为云会议的相关接口之前需要通过appid与appKey 进行鉴权获取accessToken) - http接口。2、获取会控token接口 - http接口。
2024-05-29 16:27:36
857
1

原创 drools规则引擎小案例二
最近遇到一个同学说想实现一个在一个规则文件中的多个规则中将上一个规则的执行输出作为下一个规则的执行条件,实现如下效果login_rule_1 执行后给amount赋值为 10login_rule_2 执行时如果amount = 10 则将flag 赋值为 truepackage com.drools.rule.reqimport com.drools.rule.req.LoginActionReqrule login_rule_1when$s:LoginActionReq(log...
2020-12-03 15:16:14
303

原创 drools规则引擎小案例一
1、基于drools规则引擎实现的动态创建规则语法生成结果如下:package com.drools.rule.reqimport com.drools.rule.req.LoginActionReqrule login_rule_1when$s:LoginActionReq(loginNum==1)then$s.amount=10;update($s);end代码实现:public class RuleReq { //LOGIN、登陆,PAY、支付 ...
2020-12-03 14:59:31
671

原创 微信小程序自动回复用户消息
最近用java做了一个实现在微信小程序内根据用户发送的消息内容回复用不通的消息功能,相当于一个自动回复的客服消息,效果图如下:当用户在小程序输入框中输入内容或其他操作时,后台根据用户输入的内容动态给用户回复,微信的参考文档为:https://developers.weixin.qq.com/community/develop/article/doc/00066a67324e70bdf0981381b5c813https://developers.weixin.qq.com/miniprogram
2020-08-28 14:53:05
5022

原创 微信app支付与支付宝app支付
2019-2020 注定是不安的一年,楼主经历了p2p公司倒闭(倒闭之前楼主已经溜了),但是之前在公司投入的资金也没要到。后来入职的公司5个月后因非法获取用户信息,某日早上公司全部技术人员都被请去“喝茶”直到24小时后才重获自由,然后发誓以后一定要做一个守法公民。然后计划着回武汉发展,然而还没成行就爆发了新冠,一地鸡毛无力吐槽。因此2019年基本上没有精力来更新博客,这次给大家带来微信app支付与支付app支付相关代码吧 我仿照着支付宝的模式提供了一个微信app支付的sdk有j...
2020-05-27 17:20:17
416

原创 drools规则引擎动态配置规则
先说下我的业务需求背景,最近公司要推出运营活动,根据用户行为送用户积分;比如用户注册送、首次消费送,非首次消费送、累积消费送、针对我们这个的特殊要求是跟具体规则绑定;比如说规则1 用户累积消费首次达到10000送积分20;规则2 用户累积投资首次达到 20000 送积分40;这两条规则是不能同时生效,但如果他们的时间是错开用户是可以针对这两条规则获取到奖励的用户然后运...
2018-11-30 17:05:49
20290
4

原创 微信H5支付
2018年一月本人有幸给公司做了一个对接支付宝支付与微信支付的项目,先做的支付宝支付,然后做的微信支付;这里不得不说支付宝真的是强,api文档清晰,说明准确,测试环境(沙箱)好用,你在支付宝开通商户账户后支付宝会分配相应的沙箱商户账户和用户账户,测试方便。微信可就不那么方便了,简直是满地的坑啊。在微信支付文档上已经有写明的我就不说的,有兴趣的可以去看:https://pay.weixin.qq.c
2018-02-02 10:38:06
5950
原创 shiro 集成cas实现单点登录
之前写了security 集成cas实现单点登录的文章,有小伙伴私聊我问有没有基于shiro实现的,我研究了一下搞了个shiro版本,相关业务背景就不说了,可以看我spring security 集成cas实现单点登录这篇文章,废话不多说直接上代码首先兴建一个 cas-shiro-boot-starter的spring boot 项目具体目录如下pom.xml<?xml version="1.0" encoding="UTF-8"?><proje...
2021-08-25 09:39:58
927
原创 spring security 集成cas实现单点登录
最近接了一个任务,公司之前为客户做了很多的系统,后面做成了通用的业务系统准备向外销售,因此需要做一个演示系统将所有业务系统都放到演示系统中,用户在演示系统登录后可以访问其中的任意业务系统,这一听就是一个单点登录的需求啊,因此就去了解了下,发现了CAS,CAS是中央认证服务Central Authentication Service的简称。最初由耶鲁大学的Shawn Bayern 开发,后由Jasig社区维护,经过十多年发展,目前已成为影响最大、广泛使用的、基于Java实现的、开源SSO解...
2021-08-24 10:40:31
2503
原创 spring 源码解读十一 finishBeanFactoryInitialization(beanFactory);
今天解读spring最重要的方法之一finishBeanFactoryInitialization(beanFactory);此方法用来初始化、实例化用户在系统中定义的单例bean,具体有哪些bean会被初始化跟实例化可以在refresh 方法的第五步invokeBeanFactoryPostProcessors(beanFactory); 这个方法执行完成后查看BeanFactory中的BeanDefinitionMap集合中的数据,BeanDefinitionMap集合中的数据就是即将被初始化跟..
2021-07-19 15:54:03
350
原创 spring 源码解读十 registerListeners
registerListeners 是将各种实现了ApplicationListener 的监听器注册到ApplicationEventMulticaster
2021-06-01 11:47:37
218
原创 spring 源码解读九 onRefresh()
onRefresh 是一个用户可扩展的方法,具体实现可以看下spring boot 后面如果能更新到spring boot在细说
2021-06-01 11:24:57
213
原创 spring 源码解读八 initApplicationEventMulticaster()
initApplicationEventMulticaster 初始化事件广播器/** * Initialize the ApplicationEventMulticaster. * Uses SimpleApplicationEventMulticaster if none defined in the context. * @see org.springframework.context.event.SimpleApplicationEventMulticaster */ pr.
2021-06-01 11:10:16
205
原创 spring 源码解读七 initMessageSource()
/** * Initialize the MessageSource. * Use parent's if none defined in this context. */protected void initMessageSource() { //获取到之前创建的 DefaultListableBeanFactory ConfigurableListableBeanFactory beanFactory = getBeanFactory(); /** * 首先判断一下用.
2021-06-01 11:02:34
281
原创 spring 源码解读六 registerBeanPostProcessor(beanFactory)
这节分析AbstractApplicationContext -> registerBeanPostProcessors(beanFactory) 这个方法这个方法是向BeanFactory中注册所有实现了BeanPostProcessor的接口用来在 bean实例化前后,初始化前后进行执行AbstractApplicationContext -> registerBeanPostProcessors(beanFactory)/** * Instantiate and register..
2021-05-25 17:46:04
171
原创 spring 源码解读五 ConfigurationClassPostProcessor
ConfigurationClassPostProcessor 是spring注解注入bean的核心类,ConfigurationClassPostProcessor implements BeanDefinitionRegistryPostProcessor因此ConfigurationClassPostProcessor是BeanDefinitionRegistryPostProcessor 的子类,在执行 BeanFactoryPostProcessor的时候回首先执行到postProces...
2021-05-25 17:04:49
204
2
原创 spring 源码解读四 invokeBeanFactoryPostProcessors(beanFactory) 方法
这一章重点看下AbstractApplicationContext ->invokeBeanFactoryPostProcessors(beanFactory) 这个方法AbstractApplicationContext ->invokeBeanFactoryPostProcessors(beanFactory)这个方法算是spring的灵魂方法之一了,在说这个方法之前有必要画下spring实例化单例bean的流程图如图所示,这次我们要看的这个方法就是执行beanFa...
2021-05-25 14:50:24
384
1
原创 spring 源码解读三 prepareBeanFactory 方法
今天来看prepareBeanFactory(beanFactory) 这个方法AbstractApplicationContext ->prepareBeanFactory(beanFactory)/** * Configure the factory's standard context characteristics, * such as the context's ClassLoader and post-processors. * @param beanFacto...
2021-05-20 17:06:43
168
原创 spring 源码解读二 AbstractApplicationContext refresh
今天我们重点来看下AbstractApplicationContext 的refresh()方法,上次说了这个方法算是spring最核项的方法了大概可以归为 13个方法@Override public void refresh() throws BeansException, IllegalStateException { synchronized (this.startupShutdownMonitor) { // Prepare this context for refreshin..
2021-05-19 18:12:22
200
原创 spring 源码解读一 ClassPathXmlApplicationContext
最近闲来无事翻阅了下spring的源码,在此记录下心得体会spring 是一个ioc框架,我们要进行spring相关的源码阅读最好的入口就是ClassPathXmlApplicationContext通过以下代码正式进入spring的源码世界:ApplicationContext applicationContext = new ClassPathXmlApplicationContext("myApplicationContext.xml");它的类图结构如下:我们通过d...
2021-05-19 16:09:00
627
2
原创 spring boot 集成 shiro权限控制框架
本文主要是使用spring boot 集成shiro 实现shiro-spring-boot-starter1、首先创建相关配置文件有两个ShiroProperties,JwtPropertiespackage com.shiro.sdk.properties;import org.springframework.boot.context.properties.ConfigurationProperties;import org.springframework.boot.context...
2021-01-19 17:16:16
526
原创 shiro spring boot starter 集成
因为shiro是一个集合了认证授权的框架,因此既可以用来做登陆认证,也可以用来做用户授权,本次已经将shiro结合spring boot 做成了一个可配置的sdk,方便以后其他项目的使用。使用时只需配置4步即可完成授权认证的相关功能1、pom.xml 文件引入相关sdk<dependency><groupId>com.shiro.authorization</groupId><artifactId>shiro-spring-boot..
2020-12-21 15:06:19
914
原创 快速开发一个自定义的spring boot starter
首先 pom文件:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache
2020-06-28 17:03:19
224
原创 装饰器模式融合责任链模式的组合模式
public class Param { double number; public double getNumber() { return number; } public void setNumber(double number) { this.number = number; }}public class Result { private double result; public double .
2020-06-04 15:11:15
759
原创 责任链模式仿照了netty责任链
public class Leave { private String userName; private int leaveDays; public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public int getLe.
2020-06-04 15:02:34
313
原创 装饰者模式
public class Param { private double number; public double getNumber() { return number; } public void setNumber(double number) { this.number = number; }}public class Result { private double result; pu...
2020-06-04 14:55:12
246
原创 发布订阅模式
废话不多说了,直接上代码了1、首先来一个事件源接口和一个订阅者接口public interface Event {}public interface Listener<T extends Event> { /** * 订阅事件 * * @return */ List<Class<T>> interest(); /** * 处理事件 */ Boolean onEvent(T e.
2020-05-27 17:47:01
471
原创 java poi 3.15 生成pptx并导出
因为pptx页数比较多,所以用的 XMLSlideShow 做的表格和数据填充,需要预先提供一个简易模板,直接上代码了//业务模块中需要提供简易模板和需要填充的数据XMLSlideShow xmlSlideShow = new PptUtil().writePPTTemplate(templatePath + templateKey, datas, pptQuery.getRepayme...
2018-07-30 17:26:11
2038
原创 java Graphics2D 后端生成组合图片
最近做了一个用java Graphics2D 根据设计稿和原始图片生成一张新的图片的功能,感觉挺有意思,跟小伙伴们分享下,废话不多说直接上代码://1、提供给外部直接调用的方法中的主要代码ShareImageUtil shareImageUtil = new ShareImageUtil(240 * 8, 426 * 8 + 20);RoundRectangle2D clip = new Rou...
2018-05-07 11:06:57
1542
原创 Zookeeper作数据存储
/** * 这是一简单的接口类 * @author tianji * */public interface ZookeeperService { void create(String path, byte[] data, boolean ephemeral); byte[] getData(String path); String get...
2017-02-17 13:51:55
234
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人