自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Thinkingcao的专栏

CSDN明星博主、博客专家—专注架构、Java、SpringBoot、SpringCloud、分布式等领域

原创 Java开发微信公众号之被动回复用户消息-回复图文消息
原力计划

一、前言hello小伙伴们,大家好,本篇的主题是使用Java开发微信公众号之被动回复用户消息-回复图文消息,那么对于不太了解微信公众号被动回复用户消息(文本消息、图片消息)的小伙伴们,可以先看一下前面我写过的文章: Java开发微信公众号之被动回复用户消息-回复文本消息 , 废话不多说,下面开始进入主题。微信开发文档: 微信官方文档-被动回复用户消息二、版本说明spring boot.version: v2.1.7.RELEASEjava.version: 1.8weixin-java-mp

2020-06-11 00:01:09 400 5

原创 Java开发微信公众号之被动回复用户消息-回复图片消息
原力计划

一、前言hello小伙伴们,大家好,做微信开发两年了,最近看到微信方面的文章阅读量和关注量上升的比较快速,激发了我满满的动力啊,所以就滋生了一个想法,从头开始整理一下微信公众号开发,写一个简易的教程,带着大家实现一下微信开发者文档上面一些使用比较多的功能,避免小伙伴们在接入微信开发后,不知道如何实现微信开发者文档上面的一些API功能,今天带来的主题是: SpringBoot+WxJava开发微信公众号之图片消息回复,,如果不太了解被动回复用户文本信息的小伙伴,可以先看一下前面我写过的一篇文章: Sprin

2020-05-21 18:05:58 342

原创 Java开发微信公众号之被动回复用户消息-回复文本消息
原力计划

一、前言小伙伴们,大家好,关于微信系列的文章好久没有更新了,偶尔看到有小伙伴在文末评论说文章太浅显了,想让我写点有进阶性的东西,其实一开始写微信相关文章的目的是帮助更多零基础的微信开发者快速了解、接入、熟悉到微信公众号开发,快速融入到这个环境中,以及学习如何使用当下比较流行的WxJava这一款SDK框架开发我们自己的微信公众号后台,实现一些常用的: 文本消息回复、图片消息回复、自定义菜单、菜单点击事件、以及模板消息推送、自定义带参数二维码流量分销等功能,因此本篇文章将以在接入开发者后,如何使用Java语言

2020-05-20 17:24:03 584 3

原创 SpringBoot 系列教程(六十五):Spring Boot整合WxJava开发微信公众号

一、前言做微信公众号开发项目以及近两年整了,积累了一点微薄的行业经验,既然开了微信开发专栏博客,那么今天就来回忆回忆,从零开始搭建一个微信公众号开发的框架,可以用于企业级项目开发的脚手架,同时搭配博客讲解,带着大家学习,让刚接触微信开发行业的小伙伴们第一次看到我的文章时能有一种打开大门的感觉,不那么生涩,也能够看两眼我的博客,自己搭建一套自己公司或者自己学习的微信开发基础框架,这就是我的目的。...

2020-01-17 16:27:26 2526 7

原创 SpringBoot 系列教程(七十六):SpringBoot整合定时任务Quartz

Quartz是一款功能强大的任务调度器框架,它完全由Java写成,并设计用于J2SE和J2EE应用中,它可以实现较为复杂的调度功能,如每月一号执行、每天凌晨执行、每周五执行等等这些复杂场景,还支持分布式调度。它提供了巨大的灵 活性而不牺牲简单性。你能够用它来为执行一个作业而创建简单的或复杂的调度。它有很多特征,如:数据库支持,集群,插件,EJB作业预构 建,JavaMail及其它,支持cron-like表达式等等。

2019-12-11 12:40:26 178 5

原创 SpringBoot 系列教程(五十八):SpringBoot整合Mybatis+BootStrap增删改查XML版

一. 前言在前面的SpringBoot学习过程中,我写过一篇通过SpringBoot整合Mybatis,做一个简单增删改查功能,Mybatis的的SQL语句使用注解形式:SpringBoot 系列教程(三十):SpringBoot整合Mybatis注解版增删改查,今天准备来出一个SpringBoot整合Mybatis增删改查XML版的,Mybatis的的SQL语句使用XML配置的形式,毕竟注解...

2019-11-20 13:53:23 2593

原创 SpringBoot 系列教程(五十五):SpringBoot整合MapStruct自动映射DTO

MapStruct: https://mapstruct.org前言MapStruct是一个Java注释处理器,在比较常见的项目开发过程中,前端提交往后端的数据,一部分是不需要存入数据库当中的;后端从数据库中取出的数据,一部分是不可以交给用户的;那么,Po面向的是DB,访问数据库交互,Vo面向的是客户端,封装返回数据到前端的对象;mapstruct就提供了Vo与Po自动转换的一种方式;...

2019-11-05 01:05:33 390

原创 使用IDEA整合Spring+SpringMVC+Mybatis框架完整教程

源码:https://github.com/Thinkingcao/silence-xml-ssm目录一、前言二、三层架构三、概述四、SSM框架搭建环境4.1. 开发工具版本4.2. 框架依赖版本4.3.创建数据库和表结构语句脚本4.4.IDEA创建Maven项目,导入依赖,pom.xml依赖如下4.5 项目截图4.6. 编写实体类...

2019-10-16 10:23:13 1017 6

原创 Java微信公众号开发微信网页授权之前端传递code方式获取用户信息

本片博客讲解的网页授权分为两步,前端先传递backUrl(回调地址)到后台网页授权接口,该接口拿到回调地址后组装授权连接,重定向到前端页面,前端页面截取Code,传入后端获取用户信息方法,获取用户信息的方法拿到code后,完成授权流程,获取用户信息完成;一、网页授权获取用户基本信息如果用户在微信中(Web微信除外)访问公众号的第三方网页,公众号开发者可以通过此接口获取当前用户基本信息(...

2019-08-05 18:03:12 5501 13

原创 SpringBoot 系列教程(四十一):SpringBoot集成RocketMQ(多模块方式)

一、前言RocketMQ是一款分布式、队列模型的消息中间件,是阿里巴巴集团自主研发的专业消息中间件,借鉴参考了JMS规范的MQ实现,更参考了优秀的开源消息中间件KAFKA,实现了业务消峰、分布式事务的优秀框架。二、项目结构: SpringBoot的Maven多模块spring-boot-rocketmq-consumer:消费者spring-boot-rocketmq-produc...

2019-06-05 22:21:17 1477 4

原创 Java开发微信公众号之整合weixin-java-tools框架开发微信公众号

微信开发者接入文档 :https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421135319一、前言在要做微信项目开发前,大家都会去了解微信公众号的类型和注册流程,以及不同公众号的功能使用权限,这个我前面文章也有过介绍,做微信开发公众号最起码得是一个已认证的服务号,这里我是指企业项目哈,当然如果是自己学习研究的话,直接去...

2019-04-16 14:30:07 12800 15

原创 Java微信公众号开发之发送微信模板消息

微信发送模板消息接口文档地址:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1433751277温馨提示:请各位开发者使用微信模板消息功能前,仔细阅读上述发送模板消息接口文档,少走弯路;一、微信公众号开发框架 <!-- 微信框架 参考:https://github.com/Wechat-Gr...

2019-03-28 14:48:25 5945 8

原创 Java微信公众号开发之网页授权获取用户基本信息

本篇博客讲解的网页授权只需要前端传递一个backUrl(回调地址) 到后台接口,后台接口会完成整个授权流程,无需前端做更多工作;前言微信公众号开发,需要用到网页授权获取用户信息,通过OAuth2.0网页授权机制,来获取用户基本信息,进而实现自己的业务逻辑。(前提条件:公众号为服务号,且通过认证),我的项目开发就是已认证的服务号,写这篇文章的目的是因为刚接触微信开发的小白对微信授权的文...

2019-02-25 16:49:07 5339 13

原创 SpringBoot系列教程(三十四):Spring Boot集成freemarker模板展示数据

freemarker和thymeleaf是模板引擎。在早前我们使用Struts或者SpringMVC等框架的时候,使用的都是jsp,jsp的本质其实就是一个Servlet,其中的数据需要在后端进行渲染,然后再在客户端显示,效率比较低下。而模板引擎恰恰相反,其中的数据渲染是在客户端,效率方面比较理想一点。前后端不分离的话用模板引擎比较好,前后端分离的话其实用处并不大很大。Spring官...

2019-02-21 17:30:08 286

原创 SpringBoot 系列教程(三十二):SpringBoot整合Redis缓存

前言这篇文章主要介绍springboot整合redis,如果你还不了解redis,可以看下这篇文章:Redis入门配置关于RedisTemplate的使用可查阅文章:https://blog.csdn.net/Thinkingcao/article/details/103730510StringRedisTemplate与RedisTemplate两者区别StringRedis...

2019-02-20 16:32:08 1273 10

原创 SpringBoot 系列教程(二十九):SpringBoot集成Thymeleaf模板展示数据

Thymeleaf是⾯向Web和独⽴环境的现代服务器端Java模板引擎,能够处理HTML,XML,JavaScript,CSS甚⾄纯⽂本。Thymeleaf旨在提供⼀个优雅的、⾼度可维护的创建模板的⽅式。 为了实现这⼀⽬标,Thymeleaf建⽴在⾃然模板的概念上,将其逻辑注⼊到模板⽂件中,不会影响模板设计原型。 这改善了设计的沟通,弥合了设计和开发团队之间的差距。 Thymeleaf从设计之初就遵循Web标准——特别是HTML5标准 ,如果需要,Thymeleaf允许您创建完全符合HTML5验证标准的模板

2019-02-20 12:33:34 217

原创 SpringBoot 系列教程(二十八):SpringBoot集成Swagger2

目录Swagger2介绍一、工程创建二、写Swagger2 配置类三、生成Swagger2文档注解四、创建接口五、项目完整结构图六、在 Security 中的配置七、参考资料Swagger2介绍前后端分离后,维护接口文档基本上是必不可少的工作。一个理想的状态是设计好后,接口文档发给前端和后端,大伙按照既定的规则各自开发,开发好了对接上了就可以上线了。当然这是...

2019-02-19 16:56:26 212

原创 SpringBoot 系列教程(二十二):SpringBoot基于Profile多环境配置方式

在日常的应用开发中,往往需要不同配置文件来支撑应用程序在不同环境下运行,如开发环境,测试环境,生产环境等,程序在不同的环境下可能需要不同的配置,如不同数据源等,如果每次将应用程序部署在不同的环境下时都要去修改配置文件就会显得有些麻烦,做一些没必要的操作,此时就可以通过配置Profile属性,使程序在不同的环境中使用不同的配置文件。

2019-02-14 17:14:09 286 1

原创 SpringBoot 系列教程(十九):基于SpringBoot自定义注解和AOP实现日志记录

目的: 以SpringBoot项目为基础,定义写入日志注解@InsertLog,当项目启动了访问controller时,在标注了注解@InsertLog的controller方法上,将会执行“写入日志到数据库”操作;实现:定义切面LogAspect,实现自定义注解的生效;一、环境准备 开发工具: IntelliJ IDEA 2018.2.3 x64 JDK版本...

2019-01-23 17:55:30 326

原创 SpringBoot 系列教程(十八):SpringBoot通过url访问获取内部或者外部磁盘图片

一、默认静态资源映射1. 在 Spring Boot 中,默认情况下,一共有5个位置可以放静态资源,Spring Boot 默认将 /** 所有访问映射到以下目录,五个路径分别是如下5个:classpath:/META-INF/resources/classpath:/resources/classpath:/static/classpath:/public/"/" : 静态资源...

2019-01-23 17:17:00 12680 18

原创 SpringBoot 系列教程(十六):SpringBoot集成Spring Data JPA实现增删改查

什么是spring data jpa?spirng data jpa是spring提供的一套简化JPA开发的框架,按照约定好的【方法命名规则】写dao层接口,就可以在不写接口实现的情况下,实现对数据库的访问和操作。同时提供了很多除了CRUD之外的功能,如分页、排序、复杂查询等等。Spring Data JPA 可以理解为 JPA 规范的再次封装抽象,底层还是使用了 Hibernate 的 ...

2018-12-21 14:53:04 986 3

原创 SpringBoot 系列教程(十三):SpringBoot集成EasyPoi实现Excel导入导出

easypoi功能如同名字easy,主打的功能就是容易,让一个没见接触过poi的人员 就可以方便的写出Excel导出,Excel模板导出,Excel导 入,Word模板导出,通过简单的注解和模板 语言(熟悉的表达式语法),完成以前复杂的写法

2018-12-16 18:08:22 17010 73

原创 SpringBoot 系列教程(十):搭建SpringBoot集成Mybatis+druid连接池监控

项目源码 :https://github.com/Thinkingcao/SpringBootBucket/tree/master/springboot-mybatis-druid前言 今年注定是不平凡的一年,Spring家族的一套SpringBoot+SpringCloud掀起来一阵热潮,互联网微服务技术火热膨胀,身边的程序员都在学习,我经不住诱惑,准备从零开始学,并且以记录博客...

2018-12-04 15:20:44 999 2

原创 Spring Cloud系列教程(二) - 服务消费者Rest+Ribbon(Finchley版本)

一、注册服务提供者根据上节讲述的服务注册之Eureka注册中心,这节讲述搭建SpringCloud注册服务提供者provider和服务消费者consumer1.1、先新建一个Maven项目,会员提供者1.2、 引入依赖 <parent> <groupId>org.springframework.boot</groupId&gt...

2018-11-28 15:11:44 406

原创 Spring Cloud系列教程(一):服务的注册与发现Eureka(Finchley版本)

一、前言众所周知,SpringCloud是一系列框架的有序集合,在基于SpringBoot基础设施框架之上,巧妙的统一了一套完整的微服务解决方案全家桶,其组建如服务发现注册eureka、配置中心Config、消息总线Bus、负载均衡Ribbon、断路器Hystrix、数据监控Actuator等一系列组件,那么Eureka组件就是其中的一个。Eureka是Netflix公司开源的一个RESTful服务框架组件,主要用于服务的注册发现等服务治理,被SpringCloud所整合,形成一个巨大的SpringClo

2018-11-27 10:16:19 406

原创 SpringBoot 系列教程(八):搭建Spring Boot Admin分布式微服务监控中心

(一)、什么是Spring Boot Admin Spring Boot Admin 是一个针对spring-boot的actuator接口进行UI美化封装的监控工具。他可以返回在列表中浏览所有被监控spring-boot项目的基本信息比如:Spring容器管理的所有的bean、详细的Health信息、内存信息、JVM信息、垃圾回收信息、各种配置信息(比如数据源、缓存列表和命中率)等...

2018-11-22 16:05:11 1477

原创 SpringBoot 系列教程(七):搭建SpringBoot监控中心Actuator

Actuator是spring boot的一个附加功能,可帮助你在应用程序生产环境时监视和管理应用程序。可以使用HTTP的各种请求来监管,审计,收集应用的运行情况。Spring Boot Actuator提供了对单个Spring Boot的监控,信息包含:应用状态、内存、线程、堆栈等等,比较全面的监控了Spring Boot应用的整个生命周期。特别对于微服务管理十分有意义。

2018-11-22 13:48:07 519

原创 Spring拦截器配置详解(如何定义一个拦截器)

SpringMVC拦截器的使用详解:https://blog.csdn.net/xiaokang123456kao/article/details/72831049一、前言springboot的拦截器也是对请求进行的系列验证或处理,关于拦截器和过滤器的区别此文不做介绍,详细可阅读:拦截器与过滤器的区别,下面说一下SSM项目中自定义拦截器的实现。二、自定义拦截器类,写一个类实现...

2018-11-21 11:21:10 1795

原创 Java微信公众号开发之微信素材管理工具类

1、前言微信公众号在使用的接口的时候是通过media_id来进行的,所以在使用的接口的时候我们往往需要先上传素材,素材管理分为临时素材和永久素材1)、临时素材媒体文件在微信后台保存时间为3天,即3天后media_id失效,详细文档查看:上传临时素材2)、开发者可通过本接口上传到微信服务器,永久使用。新增的永久素材也可以在公众平台官网素材管理模块中查询管理。除了可以上传以上提到的4种素...

2018-11-02 14:08:35 2433 4

原创 SpringBoot 系列教程 | 第一百一篇:SpringBoot2.0开发微信小程序之订阅消息推送

做小程序开发的时候,消息推送是一个比较常用的功能,基本表涉及到一些重要提醒的功能时,都会使用到微信小程序的模板消息推送,随着用户和开发者的信息推送诉求日益增长,微信官方下架了之前的`模板消息推送`功能,改为用户自助订阅消息推送,小程序开发者可自行接入,在用户主动订阅消息后可实现消息随时触达功能。

2020-08-07 15:56:59 122

原创 前端进阶资料—免费分享(持续更新)

一、Vue学习资料1. 慕课网Vue Element+Node.js开发企业通用管理后台系统https://pan.baidu.com/s/1vmgZsKjLhfSg5BSn_yZSjw 提取码: vve52. react+ts项目架构源码:https://e.coding.net/FrontendPeople/react-ts-dva-ant.git3. 使用Vue全家桶+Node.js搭建的小型全栈项目:https://hanxueqing.github.io/Douban-Movie/

2020-08-04 23:30:30 45

原创 vue路由传参的三种基本方式

方式一:直接调用$router.push 实现携带参数的跳转 this.$router.push({    path: `/describe/${id}`,  })方案一,需要对应路由配置如下:{   path: '/describe/:id',   name: 'Describe',   component: Describe  }很显然,需要在path中添加/:id来对应$router.push中path携带的参数。在子组件中可以使用来获取传递的参数值。this.$route

2020-08-04 23:02:13 66

原创 VsCode搭建vue通用后台管理系统vue-element-admin

vue-element-admin文档: https://panjiachen.github.io/vue-element-admin-site/zh/在线预览: https://panjiachen.github.io/vue-element-admin/#/dashboard一、vue-element-admin介绍vue-element-admin 是一个后台前端解决方案,它基于 vue 和 element-ui实现。它使用了最新的前端技术栈,内置了i18国际化解决方案,动态路由,权限验证,提炼

2020-08-03 16:23:28 95

原创 vue执行npm install报错: Can‘t find Python executable “python“, you can set the PYTHON env variable

一、描述从网上下载的一个Vue模板项目,导入VsCode,执行npm install命令后,报错了,报错的信息是node-sass安装失败,同时提示需要python环境的错误信息,这是因为安装node-sass失败了,而node-sass依赖于Python环境,node-sass安装失败是因为默认是从国外线路下载,这些大家都是知道的,在网速不好的情况下,失败率很高。1.核心错误日志如下:Can't find Python executable "python", you can set the PYT

2020-08-01 01:10:52 218

原创 node-sass安装失败的解决方案

1.设置全局淘宝镜像源npm config set sass_binary_site https://npm.taobao.org/mirrors/node-sass/2.安装node-sassnpm install node-sass3. 启动vue项目npm run dev

2020-08-01 00:36:44 83

转载 Java 生鲜电商平台 - API 接口设计之 token、timestamp、sign 具体架构与实现

一:token 简介Token: 访问令牌access token, 用于接口中, 用于标识接口调用者的身份、凭证,减少用户名和密码的传输次数。一般情况下客户端(接口调用方)需要先向服务器端申请一个接口调用的账号,服务器会给出一个appId和一个key, key用于参数签名使用,注意key保存到客户端,需要做一些安全处理,防止泄露。Token的值一般是UUID,服务端生成Token后需要将token做为key,将一些和token关联的信息作为value保存到缓存服务器中(redis),当一个请求过来后,

2020-07-22 11:19:30 90

原创 JS中(function(){}()),(function(){})(),$(function(){});之间的区别

一. (function(){}())与(function(){})()这两种写法,都是一种立即执行函数的写法,即IIFE (Immediately Invoked Function Expression)。这种函数在函数定义的地方就直接执行了。关于立即执行函数,可参考:立即执行函数的 N 种写法立即调用的函数表达式(IIFE)通常的函数声明和调用分开的写法如下:function foo() {/*...*/} // 这是定义,Declaration;定义只是让解释器知道其存在,但是

2020-07-13 21:12:35 205

原创 Spring Cloud系列教程(十九):下一代网关服务Gateway-全局Filter(Finchley版本)

**GatewayFilter :** `GatewayFilter`称为内置过滤器,需要通过 spring.cloud.routes.filters配置在具体路由下,只作用在当前路由上或者特定路由上,可以通过配置 spring.cloud.default-filters,表明作用在所有路由上,GatewayFilter允许以某种方式修改传入的HTTP请求或传出的HTTP响应。路由过滤器适用于特定路由。Spring Cloud Gateway提供了许多内置的GatewayFilter工厂。

2020-06-30 16:51:41 100

原创 Spring Cloud系列教程(十六):下一代网关服务Gateway-入门篇(Finchley版本)

官网文档: https://cloud.spring.io/spring-cloud-static/spring-cloud-gateway/2.2.1.RELEASE/reference/html/一.什么是Spring Cloud Gateway来自官方文档的一句话: Spring Cloud Gateway提供了一个在Spring生态系统之上构建的API网关,包括:Spring 5,Spring Boot 2和Project Reactor。Spring Cloud Gateway旨在提供一种简单

2020-06-30 15:38:19 137

原创 传统SSM的Web项目如何设置项目访问链接名称

一. 背景可能大家都有这么一个需求场景,就是你的项目是从Github、Gitee、或者是从别人那里copy过来的一个项目工程,这时候需要导入到开发工具Eclipse或者是IDEA,导入进去后不可能立马能跑起来,就算跑起来了之后你在去访问项目登录首页的时候可能会遇到问题,如果没有相关的文档说明你可能都不太清楚具体访问登录首页的路径URL,这篇文章重点讲解项目导入Eclipse后如何设置项目访问路径的URL,主要面向刚接触新项目导入开发工具的小伙伴们。二. 环境1. 开发工具Eclipse : Ver

2020-06-29 16:10:35 358

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