![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
springboot
海中源
Java软件工程师,数据挖掘,智能算法,Netty
展开
-
SpringBoot序列化与反序列化引起的车祸
序列化与反序列化原创 2020-07-14 15:09:19 · 554 阅读 · 0 评论 -
API带签名接口设计
说明:在实际的业务中,难免会跟第三方系统进行数据的交互与传递,那么如何保证数据在传输过程中的安全呢(防窃取)?除了https的协议之外,能不能加上通用的一套算法以及规范来保证传输的安全性呢?下面我们就来讨论下常用的一些API设计的安全方法,可能不一定是最好的,有更牛逼的实现方式,但是这篇是我自己的经验分享.本章目录:token简介timestamp 简介sign 简介防止重复提交使用流程代码分享一:token 简介Token:访问令牌access token, 用于接口中, 用于标识转载 2020-06-22 17:53:47 · 815 阅读 · 0 评论 -
SpringBoot使用Jwt来进行安全验证机制
一. HTTP Basic AuthHTTP Basic Auth简单点说明就是每次请求API时都提供用户的username和password,简言之,Basic Auth是配合RESTful API 使用的最简单的认证方式,只需提供用户名密码即可,但由于有把用户名密码暴露给第三方客户端的风险,在生产环境下被使用的越来越少。因此,在开发对外开放的RESTful API时,尽量避免采用HTTP Basic Auth二.OAuthOAuth(开放授权)是一个开放的授权标准,允许用户让第三方应用访问该用户在转载 2020-06-19 15:22:21 · 680 阅读 · 0 评论 -
logback-spring.xml中两种相对路径生成日志文件的配置
在jar启动的目录下生成 <property name="log.path" value="./logs/"/>我比较倾向于这一种,由于项目配置,可以将logs目录配置到jar启动的当前目录下。例如在/opt/project/background启动test.jar。则日志会产生在/opt/project/background目录。在jar启动的上层目录生成<property name="log.path" value="../logs" />在jar启动的上层目录.原创 2020-06-11 21:21:52 · 2540 阅读 · 0 评论 -
mysql 高版本 sql_mode=only_full_group_by 问题解决方法
场景介绍SpringBoot整合Mybatis项目,使用列表查询时,出现以下异常: SELECT list is not in GROUP BY clause........ which is not functionally dependent on columns in GROUP BY clause;this is incompatible with sql_mode=only_full_group_by错误原因原理方面这个错误一般发生在mysql 5.7以及 5.7以上的版本中,其原因原创 2020-06-11 21:10:30 · 605 阅读 · 0 评论 -
SpringBoot RestTemplate get请求带参数的坑
Spring中RestTemplate get带参数请求,接受不到请求参数处理。该方法可以自动组装参数public class UrlParametersUtils { /** * 拼接get参数 * * @param baseUrl baseUrl 例如 https://www.baidu.com/ * @param parameterMap parameter map **/ public static URI handleUrlParameters(String原创 2020-06-08 20:33:03 · 2838 阅读 · 0 评论 -
MybatisPlus整合SqlServer遇到的坑
mybatis使用union的坑 select * from ( select wod.Qty as qty,wod.Title as title,wod.Spec as spec,wod.TypeId as typeId,wod.PId as pid, wps.productName,wps.productNum,wod.OrderId,wod.OrderNum from order_detail wod left join ( select proid,c.原创 2020-06-08 20:32:12 · 2118 阅读 · 1 评论 -
SpringBoot请求日志超完整版
主要代码如下所示:import com.alibaba.fastjson.JSONObject;import lombok.AllArgsConstructor;import lombok.extern.slf4j.Slf4j;import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.Around;import org.aspectj.lang.annotation.Aspect;import原创 2020-06-05 17:12:30 · 812 阅读 · 0 评论 -
Spring Boot配置篇(基于Spring Boot 2.0系列)
1:概述SpringBoot支持外部化配置,配置文件格式如下所示:properties filesyaml filesenvironment variablescommand-line arguments使用外部化配置方式:@Value注解Environment抽象(Spring环境接口抽象)@ConfigurationPropertiesPropertySource(文...原创 2019-06-17 15:32:37 · 184 阅读 · 0 评论 -
SpringBoot自定义注解@YmlPropertySource加载yml或者yaml文件
1:概述SpringBoot的@PropertySource注解只支持加载 properties结尾的文件。当使用@ConfigurationProperties注解配合@EnableConfigurationProperties注解将配置转换为JavaBean时,可能需要配合@PropertySource注解加载指定的配置文件。所以为了支持以yml或者yaml文件,我自定义了注解@YmlP...原创 2019-06-16 21:42:07 · 2789 阅读 · 0 评论 -
SpringMvc建立统一异常处理
1.异常处理作用统一的异常处理可以让前台隔离那些对他们无需的信息,但是又让后台可以很好的规避泛滥的异常.2.代码示例:建立业务异常/** * 服务(业务)异常如"账号或密码错误",该异常只做INFO级别的日志记录 * * @see com.ley.springboot.seed.config.WebConfig */public class ServiceExceptio...原创 2018-10-30 16:09:50 · 230 阅读 · 0 评论 -
Springboot整合mybatis实现多数据源
1:SpringBoot整合mybatis实现多数据源有两种方法1:静态方式将每个数据源都实现一个mybatis的sqlSessionFactory中,但是这种方法,缺点在于:你有几个数据源都会有几个mybatis的配置类;对于数据源的事务也不是很好控制,你的声明数据源的事务配置类2:动态方式使用SpringBoot提供的AbstractRoutingDataSource 类进行数据...原创 2018-10-17 17:36:44 · 666 阅读 · 0 评论 -
SpringBoot整合Redis实现自动缓存、更新、删除
1:引入springboot redis的maven依赖(建议使用spring-boot-dependencies或者使用spring-io-platform进行构建项目) <dependency> <groupId>org.springframework.data</groupId> <ar...原创 2018-10-16 11:06:14 · 6694 阅读 · 0 评论 -
SpringBoot之定时任务和多线程编程
定时任务1-1:使用@EnableScheduling注解默认配置的问题定时任务一般是项目中都需要用到的,可以用于定时处理一些特殊的任务。在spirngboot中使用定时任务变的特别简单,只需要在启动类上增加一个@EnableScheduling注解即可。默认情况下,如果什么都不进行配置,就会导致一个问题,系统中所有的定时任务都是使用的一个线程去执行的,也就是说,如果如果同一个时刻有2个定...原创 2018-09-28 14:51:42 · 518 阅读 · 0 评论 -
Java常见加密和解密算法
1:加密和解密辅助工具类:/** * byte hex utility class **/public class ByteHexUtils { private static final String HEX_STR = "0123456789ABCDEF"; /** * @param hex * @return */ publi...原创 2018-09-25 10:49:08 · 591 阅读 · 0 评论 -
Request header is too large 的问题解决
1:问题原因:后台接受前台传入的内容字符串,由于内容字符串太大,导致打印台报错.1-1:错误描述:java.lang.IllegalArgumentException: Request header is too large at org.apache.coyote.http11.Http11InputBuffer.fill(Http11InputBuffer.java:701)...原创 2018-09-25 10:02:01 · 5026 阅读 · 0 评论