- 博客(10)
- 资源 (1)
- 收藏
- 关注
原创 springboot2 druid加密 多数据源druid加密
前言出于对项目的安全考虑,经常需要对数据库的密码进行加密,本文我们将带大家从源码角度进行分析各个配置的作用,使用druid的自带工具对数据进行加密。加密代码 public static void main(String[] args) { String password = "test"; String[] arguments = new String[]{password}; try { ConfigTools.m
2022-03-29 18:35:40
3246
1
原创 springboot项目打入外部jar包
背景: 由于一些外部原因,不能通过mavn来下载外部依赖,此时我们需要将自己的依赖手动打包到我们的项目中去,比如一些自定义的加解密等sdk,通过maven的方式将jar包加入项目。编码:首先,我们需要单独处理下我们的私有包,将所有依赖准备好,在maven中加入相关打包插件<plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> ...
2021-10-26 15:28:52
987
原创 签名字符串生成 参数名ASCII码从小到大排序
背景:网上签名大部分用的到了阿里的fastjon,奈何有些项目不能使用这个jar包,只能另寻方法签名规则说明:签名生成的通用步骤如下:第一步,设所有发送或者接收到的数据为集合M,将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序),使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA。特别注意以下重要规则: ◆ 参数名ASCII码从小到大排序(字典序); ◆ 如果参数的值为空不参与签名;...
2021-09-03 20:43:10
1224
原创 jackson反序列化复杂数据类型(泛型数据类型)
问题网上很多都是普通的实体类序列化跟反序列化,而对泛型数据的反序列化却比较少,查询了很多资料都不能用,要么就是讲的太负责,最近在工作中遇到了这个问题,记录下解决方式资料首先我们来参考下网上的一段代码,从这段代码中我们可以参看下集中序列化的方式,但是没有很好的封装,如果写在实际的业务代码中会显得很繁琐,本篇文章我们是借鉴的第一种方式来解决这个问题的public class Dem...
2019-06-19 17:21:45
5906
原创 使用RSA对数据进行加解密及验签操作
最近工作中遇到rsa加密操作,公私钥知识自行脑补,废话不多说,直接上代码 //发送方 String data ="asda";//需加签/加密的数据 System.out.println("源数据:"+data); // 生成私钥 KeyPairGenerator kpGen...
2019-05-07 11:18:05
857
原创 SVN合并分支到主干
svn的分支在项目中用的还是比较少,就目前接触的项目来说,基本涉及到的分支都是用的git管理的,git的分支合并也相对简单。今天公司让我合并svn的分支,折腾了一上午,一开始不管怎么合并总是会被分支的代码给覆盖,经过折腾原来是操作不当,记录下这次经历。我是在eclipse上直接操作的,前人栽树,后人乘凉,希望能对大家有用。合并代码前确保工程全部提交且更新。首先,合并方式有两种,一种为合并一定范...
2018-09-04 13:50:04
484
原创 签名操作:实现参数ASCII码从小到大排序,然后拼接为url参数形式
做签名操作时经常要对参数进行排序后再进行加密,下面是自己项目中用到的一小段代码public String createSign(Map<String, String> params, String privateKey){ StringBuilder sb = new StringBuilder(); // 将参数以参数名的字典升序排序 ...
2018-05-31 14:29:38
10247
2
原创 获取用户请求IP
项目中很多地方会用到获取客户端IP的地方,经过反向代理后获取都不太好获取,贴上项目中用到的一段代码public static String getRequestIp(HttpServletRequest request) { String Xip = request.getHeader("X-Real-IP"); String XFor = request.getH...
2018-05-14 15:06:28
250
原创 限制键盘只能按数字键、小键盘数字键、退格键
前段代码如下:$("#count").keydown(function (e){ var code = parseInt(e.keyCode); if (code >= 96 && code = 48 && code return true; } else {
2017-05-10 10:26:29
766
原创 设置select下拉框选中,修改jquery事件
$("#sjTypeoption[value="+resObj.sjType+"]").attr("selected","selected");
2017-05-10 10:25:28
2110
redis-desktop-manager-0.9.99.zip
2020-04-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人