日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

repositoryitemlookupedit根据每行的id绑定数据_一种根据数据库自增ID生成唯一ID的解决方案...

發布時間:2025/3/8 数据库 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 repositoryitemlookupedit根据每行的id绑定数据_一种根据数据库自增ID生成唯一ID的解决方案... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在我們的開發過程中,經常會遇到ID生成的問題,那么這里就介紹一種解決方案,注意這里只適合混淆ID規則,也就是說生成的ID沒有任何規則,不適用于訂單ID。

一般有序自增主鍵的ID,極易被爬蟲抓取數據,作為應用開發者,這是不應該的,你辛辛苦苦收集的數據轉眼之間被其他人給抓取了,是不是很大的損失?

話說著名的Youtube網站就是這么做的。

今天我們介紹的一個支持市面上所有語言的數字編碼庫hashids

hashids

Hashids是一個非常小巧的跨語言的開源庫,它用來把數字編碼成一個隨機字符串。它不同于md5這種算法這種單向映射,Hashids除了編碼還會解碼。

如果轉換方式一樣,那么同一字符串得到的結果是相同的。

Hashids hashids= new Hashids("this is my salt");//加密數字1String hashStr = hashids.encode(1);System.out.println("1加密后值為:"+hashStr);//解密數字1long[] hashNums = hashids.decode(hashStr);for (int i = 0; i < hashNums.length; i++) {??? System.out.println("解密后值為:" + hashNums[i]);}

hashids自定義設置最小哈希長度

支持設置加密后的字符串長度

Hashids hashids = new Hashids("this is my salt",6); //加密數字1String hashStr = hashids.encode(1);System.out.println("自定義哈希長度加密1后值為:"+hashStr); //解密數字1 long[] hashNums = hashids.decode(hashStr);for (int i = 0; i < hashNums.length; i++) {??? System.out.println("自定義哈希長度解密1后值為:" + hashNums[i]); }

hashids自定義設置哈希字母表

支持設置哈希字母表,不過最少長度應該是16位,這里沒有具體的測試。

Hashids hashids = new Hashids("this is my salt", 0, "0123456789ABCDEF"); String hashStr = hashids.encode(1); System.out.println("自定義哈希字母表加密1后值為:" + hashStr);long[] hashNums= hashids.decode(hashStr);for (int i = 0; i < hashNums.length; i++) {??? System.out.println("自定義哈希字母表解密1后值為:" + hashNums[i]); }

使用

安裝,npm包地址:https://www.npmjs.com/package/hashids

npm install hashids

在PHP中的使用方法:

$hashids = new HashidsHashids('this is my salt');$id = $hashids->encode(1, 2, 3);$numbers = $hashids->decode($id);

在NodeJs中使用

const Hashids = require('hashids/cjs');const hashids = new Hashids('', 11);hashids.encode(20);

在JS中使用

在使用過程中,該方法不可用來作為加密使用。

項目地址請點擊擴展鏈接

總結

以上是生活随笔為你收集整理的repositoryitemlookupedit根据每行的id绑定数据_一种根据数据库自增ID生成唯一ID的解决方案...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。