自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

stryang的博客

古人学问无遗力,少壮工夫老始成。

  • 博客(30)
  • 收藏
  • 关注

原创 如何使用springboot优雅地校验请求参数

描述通常我们编写一个接口,参数校验这一步是必不可少的,如果传递的参数不符合规范,那么不应该进入到业务方法应该将不合法信息提示给前端。对于参数校验传统的做法是,每个接口在接收到参数后再手动判断是否合法,这样一来每个接口都要手动编写验证规则,很明显这部分工作可以独立出来做统一验证。springboot的参数验证为解决上述问题,springboot本身提供了一个验证框架。<dependency> <groupId>org.springframework.boot</g

2020-09-29 18:59:26 3241

原创 身份认证系统Oauth2介绍

先看两张截图第一张图是登陆微博时使用第三方QQ登陆,跳转至QQ的登陆授权页面。https://graph.qq.com/oauth2.0/show?which=Login&display=pc&client_id=101019034&response_type=code&scope=get_info%2Cget_user_info&redirect_uri=https%3A%2F%2Fpassport.weibo.com%2Fothersitebind%2Fb

2020-06-09 13:32:36 1677 2

原创 nginx笔记

记录nginx使用过程中遇到的配置及调优1、反向代理&负载均衡当后端有多个服务实例运行,通过nginx发布服务实现负载均衡,客户端统一访问nginx端点,再由反向代理分配给具体的服务器处理请求。在server节点下添加需要代理的location,proxy_pass指向代理的服务地址,有多少个location就配多少个。其中webservers是在upstream里面配置的负载的服务,weight表示负载均衡的权重。upstream webservers { server 127..

2020-05-11 14:11:46 171

原创 ActiveMQ配置持久化消息的过期策略

为什么要配置这个策略最近在开发中遇到一个问题,mq的生产者正常工作,此时消费端由于异常与mq失去连接,加入消费端失联时间较长会导致mq堆积大量消息,等下一次消费端连接上的时候会有大量消息涌入,如果处理不好会导致消费端直接内存溢出。所以我们希望如果mq消息在我们设定的时间内没有被消费就把它删掉,一方面也能缓解mq端的消息积压,释放压力。配置过期策略打开配置文件在conf目录下的activemq.xmlmessage过期自动删除配置<broker xmlns="http://activemq

2020-05-09 14:28:55 2502 3

原创 Tomcat验证http头导致前端向后端传值失败的问题

描述The valid characters are defined in RFC 7230 and RFC 3986前端传递含有非法的字符,导致以上错误。原因新版本的Tomcat在 7.0.73, 8.0.39, 8.5.7 版本后,添加了对于http头的验证。准确说是org.apache.tomcat.util.http.parser.HttpParser#IS_NOT_REQ...

2019-10-24 14:21:57 547

原创 使用 JavaScript 实现的开源可视化库-ECharts

为什么选择Echarts1、上手快,只需要简单的配置即可生成各种图形2、百度开源项目,文档全,社区活跃(之前人保项目使用过的chart.js国外开源框架,中文文档较少)3、实例丰富,可以适用各种各样的功能4、跨平台使用,支持PC端及移动端,从 4.0 开始提供了对微信小程序的适配,支持node上的服务端渲染Echarts简介ECharts,一个使用 JavaScript 实现的开源可视...

2019-08-14 15:35:51 3051 2

原创 ActiveMQ消息队列过多导致客户端连接失败

一、异常描述jvm 1 | Exception in thread "ActiveMQ BrokerService[localhost] Task-997" java.lang.OutOfMemoryError: unable to create new native threadjvm 1 | at java.lang.Thread.start0(Native Meth...

2019-07-03 16:21:21 7374

原创 收集几款常用的Intellij Idea插件

一、Lombok实体类简化工具,自动生成get、set方法,几乎是必备插件,只需要一个注解@Data即可二、Mybatis plugin实现在mapper接口与mapper的xml文件之间来回跳转,就想接口跳到实现类那样,可以快速方便的找到sql映射三、Mybatis Log Plugin将Mybatis执行的sql脚本格式化地打印出来,在Tools – > Mybatis Lo...

2019-06-05 17:14:18 588

原创 H5 Plus移动APP开发之原理介绍-早会分享

一、什么是H5 PlusH5 Plus即HTML5 Plus是在HTML5的基础上做的扩展,是HTML5的加强版,它提供了WebApp的一套规范,HTML5+扩展了JavaScript对象plus,使得js可以调用各种浏览器无法实现或实现不佳的系统能力,设备能力如摄像头、陀螺仪、文件系统等,业务能力如上传下载、二维码、地图、支付、语音输入、消息推送等。二、Native.js是一种将手机操作系...

2019-03-20 14:22:37 3275

原创 Java调用webservice的.asmx后缀接口

前两天,在与其他公司做对接中需要回调一个对方的接口,看了文档后发现是webservice的接口,而且接口名后面还有.asmx的后缀,因为之前接触的webservice接口都是wsdl的形式,所以立马网上搜寻一番,在此记录下具体实现。import javax.xml.namespace.QName;import org.apache.axis.client.Call;import org.ap...

2018-12-26 15:07:29 11076 5

原创 数据交换格式之XML

XML是一种基于XML规范语法的标签类型文档,它是重量级的,本文主要介绍XML在java语言里面的生成与解析,XML生成包为Dom4j,有关XML与其他数据格式之间的比较将会在接下来的文章中给出。一、生成xml使用java代码生成以下xml文档&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;Root&gt; &lt;User ...

2018-11-22 17:18:22 837

原创 数据交换格式之JSON

JSON是一种以键值对传递的数据格式,本文主要针对JSON数据格式在JavaScript以及Java语言中的具体应用,JSON相关介绍以及和其他数据格式的比较将在接下来的文章中给出。一、JavaScript是JSON的主战场,JSON可以说是JavaScript对象文字符号的一个子集,由于JSON是JavaScript的一个子集,所以它可以自如的在JavaScript中使用。在JSON中,有...

2018-11-21 17:24:44 634

原创 js获取get提交参数

工作中常遇到第三方程序调用html页面,这时候可能需要传递某些特定参数需要html获取参数并响应,需要通过js获取get提交参数,主要涉及到js对字符串的一些处理,如下function getPar(par) { //获取当前URL var local_url = document.location.href; //获取要取得的get参数位置 var get = local_url.in...

2018-11-15 09:29:57 4020

原创 js实现类似相册的缩略图效果

使用jqthumb.js插件制作缩略图1.将下载好的jqthumb.js插件导入html&amp;lt;script type=&quot;text/javascript&quot; src=&quot;js/jqthumb.js&quot;&amp;gt;&amp;lt;/script&amp;gt;2.创建需要缩略图显示的图片dom,并制定id&amp;lt;img src=&quot;/img/test

2018-11-14 22:01:24 2247

原创 Spring Boot之配置druid监控页面

Spring Boot中使用druid请看spring boot之使用druid作为数据库连接。配置监控页面添加WebFilterpackage com.yang.mb.config;import com.alibaba.druid.support.http.WebStatFilter;/** * @Author: stryang * @Date: 2018/11/8 16:05...

2018-11-08 18:18:34 2574

原创 spring boot之使用druid作为数据库连接

Druid是Java语言中最好的数据库连接池,Druid能够提供强大的监控和扩展功能,后面文章会提供druid监控页面的配置。一、pom.xml添加依赖&lt;dependency&gt; &lt;groupId&gt;com.alibaba&lt;/groupId&gt; &lt;artifactId&gt;druid-spring-boot-starter&lt;/artifactId...

2018-11-08 18:08:27 585

原创 spring boot之整合shiro实现用户认证、授权

一.shiro简介1.简介Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码学和会话管理。使用Shiro的易于理解的API,您可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。Shiro 主要分为两个部分就是认证和授权,在个人感觉来看就是查询数据库做相应的判断而已,Shiro只是一个框架而已,其中的内容需要自己的去构建,前后是...

2018-11-08 17:43:03 369

原创 spring boot之分页插件PageHepler

一.使用原生的PageHepler1.添加依赖&lt;dependency&gt; &lt;groupId&gt;com.github.pagehelper&lt;/groupId&gt; &lt;artifactId&gt;pagehelper&lt;/artifactId&gt; &lt;version&gt;4.1.3&lt;/version&gt;&l

2018-11-08 09:49:38 335

原创 spring boot之项目打包部署

1.修改pom.xml打包方式以及包名相关信息&amp;lt;!--打包方式--&amp;gt;&amp;lt;packaging&amp;gt;war&amp;lt;/packaging&amp;gt;&amp;lt;build&amp;gt; &amp;lt;!--buil下添加包名--&amp;gt; &amp;lt;finalName&amp;gt;ProjectName&

2018-11-07 16:58:15 262

原创 MySql默认接收数据包不超过1M的问题

具体异常如下Caused by: com.mysql.cj.jdbc.exceptions.PacketTooBigException: Packet for query is too large (7,095 &amp;gt; 1,024). You can change this value on the server by setting the 'max_allowed_packet' vari...

2018-11-07 09:34:07 1104

原创 spring boot之配置详解

spring boot支持的配置文件spring boot支持两种类型的配置文件,一种是传统的默认配置文件application.properties ,还有一种是现在被广泛推荐使用的YAML文件。书写上properties是采用键值对的形式来表示,而YAML是以类似大纲的缩进形式,这使得YAML表现形式更为清晰易读, 同时配置内容的字符量也得到显著减少:environments: dev:...

2018-11-01 11:40:07 151

原创 idea搭建spring cloud服务注册中心

1.先创建一个maven主项目,file-&gt;new-&gt;project,选择Maven,next2.创建Eureka服务端,在创建好的maven项目里面右键项目名,new-&gt;module,选择Spring Initialzr,next然后next再finish,创建完成后pom.xml文件如下&lt;?xml version="1.0" encoding="UTF-...

2018-10-31 15:43:34 2187

原创 spring boot之hello world!

1.使用idea搭建spring boot项目工程,选择Spring Initializr,选中jdk然后next2.输入Group,Artifact,选中Maven Project,然后next3.选择web-&amp;gt;web 然后next,再finish4.搭建后项目目录如下DemoApplication.java为项目启动入口package com.example.demo;...

2018-10-30 17:48:33 572

原创 微信小程序使用spring boot获取用户唯一标识openId

1.app.js里面调用wx.login(OBJECT) 获取登录凭证(code)进而换取用户登录态信息,包括用户的唯一标识(openid) 及本次登录的 会话密钥(session_key)等。//app.jsApp({ onLaunch: function() { //调用API从本地缓存中获取数据 var logs = wx.getStorageSync('logs')...

2018-10-30 14:25:47 5784 4

原创 SpringMVC处理请求的工作流程

Spring简介DI(Dependency Injection):依赖注入,四种注入方式IOC(Iversion of Controller):控制反转AOP(Aspect-Oriented Programming):面向切面编程,包括Spring的声明式事务管理处理请求流程1.客户端发送请求到后台服务器;2.springmvc核心控制器DispatcherServlet统一接收请求,...

2018-10-30 14:07:15 3122

原创 SpringMVC整合ActiveMq

实现message监听类import javax.jms.Message;import javax.jms.MessageListener;import javax.jms.TextMessage;import org.springframework.stereotype.Component;@Componentpublic class TopicMessageListener im...

2018-10-30 14:02:44 795

原创 Java常用工具

1.java性能分析神器 jprofiler可分析jvm内存占用,java类的加载情况2.WndSpy窗体侦探用于查看桌面程序窗口信息3.exe4j工具java里面jar包生成工具4.tess4j工具java开源的图像文字识别工具...

2018-10-30 14:00:22 117

原创 MyEclipse、Eclipse中properties文件中文插件

1、Help-&gt;Install from site;2、Add;3、Name填入PropEdit或其它任意非空字符串,在URL中填入 http://propedit.sourceforge.jp/eclipse/updates/ 4、选中PropEdit,然后Next;5、后面按照提示安装完成后 重启eclipse...

2018-10-30 13:59:23 426

原创 Centos7上搭建FreeSwitch服务器

一、Linux环境下使用源码安装(以centos7为例)1.下载源码进入目录 cd /usr/local/src使用git获取源码,没有安装git的话需要先安装 运行 yum install git然后运行git clone -b v1.6 https://freeswitch.org/stash/scm/fs/freeswitch.git freeswitch2.开始编译进入fre...

2018-10-30 10:56:49 3543

转载 Eclipse/MyEclipse实用快捷键总结,保证会用到

在Eclipse里,写一个没有导入相应包的类名(这个类名已经完全写全,比如LayoutManager), 可以用ctrl+shift+M/Ctrl+Shift+o/Ctrl+1导入相应的包. MyEclipse 快捷键1(CTRL) ————————————- Ctrl+1 快速修复 Ctrl+D: 删除当前行 Ctrl+Q  定位到最后编辑的地方 Ctrl+L  定位在某行  Ct

2017-09-12 14:13:34 251

空空如也

空空如也

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

TA关注的人

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