RT 可以利用数组的sort()函数对数组进行排序,如果数组的内容是纯数组或者纯文本,那么sort可以不接受任何参数,按照默认升序进行排序,例如 # 对年龄进行排序 const ages = [11, 15, 14, 8]; ages.sort(); # 对姓名排序 var names = ["Terry", "Mike", "Tom"] names.sort(); 如果要对数组进行降序排序(或者直接全部颠倒一下),可以使用reverse() const ages = [11, 15, 14, 8]; ages.s…

2022-03-03 0条评论 659点热度 0人点赞 admin 阅读全文

MySQL的SQL语句中需要对String类型的文本转换成Date类型,可以使用str_to_date函数,接受2个参数,一个是需要转换的文本,第二个是格式化的模板 模板如下介绍: %Y-%m-%d 对应的是:年-月-日(如果月和日是小于10的数,会自动加上0) %T 对应的是时间:时-分-秒 同样如果小于10的,会自动加上0,如果要转换的时间没有秒,也是可以正常解析的,只是秒的部分是0 %Y-%m-%d %T  对应的是:年-月-日 时-分-秒 SQL示例如下: select STR_TO_DATE('2021-…

2022-03-02 0条评论 818点热度 0人点赞 admin 阅读全文

网页显示某些小的图片需要转成base64的格式,例如<img src="data:image/jpg;base64,anc123==" />这样的形式,后台图片的文件或者类型,需要一个转换方法,工具方法如下: 可用户将RenderedImage(或者BufferedImage)以及File(图片文件)转成base64格式的。 /** * 把RenderedImage转成base64格式的形式,用于网页img标签显示图片 * @param img RenderedImage * @param format…

2022-03-01 0条评论 743点热度 0人点赞 admin 阅读全文

微信公众号里的网页支付,网上很多说的是使用纯JS的方式(包括官方的例子,也是距离的纯JS的实现方式),如果我们使用的vue搭建的项目,也是类似的,下面给出我的实现方式。 package.json加入"weixin-js-sdk": "^1.6.0",如下: { "name": "test-wx", "version": "0.1.0", "private": true, "scripts": { "serve": "vue-cli-service serve", "build": "vue-cli-service …

2022-02-28 0条评论 1600点热度 0人点赞 admin 阅读全文

有时需要判断网页是否是用普通浏览器打开还是在微信中打开,例如开发支付的时候,如果是微信公众号打开,可以选择微信支付。或者使用微信的SDK做一些用户信息方面的判断。 用微信打开的网页,会请求类似这样的User-Agent: Mozilla/5.0 (Linux; Android 12; SM-G9730 Build/SP1A.210812.016; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/86.0.4240.99 XWEB/3185 …

2022-02-27 0条评论 2115点热度 0人点赞 admin 阅读全文

分享我使用的用户解密微信支付APIV3的通知notify,根据微信支付官方的介绍:https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_1_5.shtml是使用的AEAD_AES_256_GCM加密方式,使用key、nonce和associated_data,对数据密文resource.ciphertext进行解密,得到JSON形式的资源对象。不过看了下,当前页面并没有相关的例子,下面贴出我使用的工具算法。 /** * AEAD_AES_256_GCM 解密 …

2022-02-26 0条评论 1324点热度 0人点赞 admin 阅读全文

需要解析这样的日期(例如微信支付apiV3返回的交易成功日期是类似这样的:2022-02-22T15:50:18+08:00)或者需要格式化成带有时区+8:00这样的日期,可以这样做(格式化字符串是yyyy-MM-dd'T'HH:mm:ssXXX): System.out.println(new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssXXX").format(new Date())); Date date = new SimpleDateFormat("yyyy-MM-dd'…

2022-02-25 0条评论 3617点热度 0人点赞 admin 阅读全文

SpringBoot的配置文件中(application.yml)有时候一个key的内容可能是多行的文本(例如配置一个密钥的内容等等),如果我们直接在配置文件中写多行(就是\n分割开来的),我们在程序中获取值的时候,多行的文本会读取成空白隔开的。 例如: my: test: line1 line2 这样my.test的值会被读取成line1 line2 这样做,可以保持读取出来的是line\nline2 my: test: | line1 line2 注意test后面加了一个 | (英文竖线),就能正确读取多行了!

2022-02-24 0条评论 935点热度 0人点赞 admin 阅读全文

分享一下Java下使用SHA256withRSA签名的代码,例如微信支付APIv3中的签名,就是使用的SHA256 with RSA签名,并对结果进行base64的编码。 这里签名使用到的密钥文件,是使用了Spring的特性,通过@Value(value = "${my.wx.mchApiClientKey}")加载进来的,可以根据使用实际需求修改。 通过generateSignature函数,对要求的参数(数组)进行签名。 WXPayUtil.java 如下,在SpringBoot下我加了@Component注解…

2022-02-23 0条评论 2310点热度 0人点赞 admin 阅读全文

生成验证码发送的等场景下会用到,生成多少位(由参数传入)随机数字的字符串,代码如下: /** * 生成随机数字字符串 * @param length 生成数字字符串的长度 */ public static String generateRandomDigitalString(int length) { String str = "0123456789"; Random random = new Random(); StringBuilder sb = new StringBuilder(); for (int i …

2022-02-22 0条评论 611点热度 0人点赞 admin 阅读全文
1272829303156