一、需求为方便用户快速查找某个城市的门店,在门店列表页增加了按城市首字母筛选的功能二、后端实现数据库一般会存储所有城市的首字母字段,后端只需要查询库进行返回即可。但如果全国城市区域有很多,数据库没有存粗字段的情况下,如何实现呢?一般会有人选择 pinyin4j、经过测试对于多音字的处理并不太友好,于是选择了具有语义的Hanlp的依赖包。能处理大多数的多音字城市<dependency>
&n...
3年前 (2022-06-13)
阅读(2348)
赞一个 (3 )
链接直达
RSA是一个非对称加密算法,它通常是先生成一对 RSA 密钥,其中保密密钥,由用户保存;另一个为公开密钥,可对外公开。公开密钥加密(public-key cryptography),也称为非对称加密(asymmetric cryptography),一种密码学算法类型,在这种密码学方法中,需要一对密钥,一个是私人密钥,另一个则是公开密钥。这两个密钥是数学相关,用某用户密钥加密后所得的信息,只能用该用户的解密密钥才能解密。如果知道了其中一...
3年前 (2021-08-14)
阅读(3858)
赞一个 (2 )
链接直达
AES,高级加密标准(英语:Advanced Encryption Standard,缩写:AES)在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。严格地说,AES 和 Rijndael加密法并不完全一样(虽然在实际应用中二者可以互换),因为Rijndael加密法可以支持更大范围的区块和密钥长度:AES的区块长度固定为128 比特,密钥长度则可以...
4年前 (2021-05-08)
阅读(4885)
赞一个 (2 )
链接直达
大家先读读这个字”钥”,是读”yao”,还是读”yue”。看下图一 、对称加密对称加密,顾名思义,加密方与解密方使用同一钥匙(密钥)。具体一些就是,发送方通过使用相应的加密算法和密钥,对将要发送的信息进行加密;对于接收方而言,使用解密算法和相同的密钥解锁信息,从而有能力理解对方的信息。1、常见的对称加密算法无论是数据库的信息存储,还是为了避免用户的Cookie发生泄漏,通常都会使用相应的加密算法进行加密,尽最大能力的去保护敏感信息。(1...
4年前 (2021-05-07)
阅读(2260)
赞一个 (3 )
链接直达
Java中java.lang.Void和void有什么区别?void关键字表示函数没有返回结果,是java中的一个关键字。java.lang.Void是一种类型。例如给Void引用赋值null。Void nil = null;通过Void类的代码可以看到,Void类型不可以继承与实例化。public final class Void {
&n...
4年前 (2021-04-05)
阅读(2365)
赞一个 (4 )
链接直达
异常处理中,try、catch、finally的执行顺序,大家都知道是按顺序执行的。如果try中没有异常,则顺序为try→finally,如果try中有异常,则顺序为try→catch→finally。但是当try、catch、finally中加入return之后,就会有几种不同的情况出现,下面分别来说明一下。也可以跳到最后直接看总结。一、try中带有return/**
* try:2
* ...
4年前 (2021-03-02)
阅读(2419)
赞一个 (5 )
链接直达
在多线程中有多种方法让线程按特定顺序执行,可以用线程类的join()方法在一个线程中启动另一个线程,另外一个线程完成该线程继续执行。为了确保三个线程的顺序你应该先启动最后一个(T3调用T2,T2调用T1),这样T1就会先完成而T3最后完成。实际上先启动三个线程中哪一个都行,因为在每个线程的run方法中用join方法限定了三个线程的执行顺序。实例一public static void main(String[...
4年前 (2021-02-22)
阅读(2909)
赞一个 (4 )
链接直达
数据结构想必大家都不会陌生,对于一个成熟的程序员而言,熟悉和掌握数据结构和算法也是基本功之一。数据结构本身其实不过是数据按照特点关系进行存储或者组织的集合,特殊的结构在不同的应用场景中往往会带来不一样的处理效率。常用的数据结构可根据数据访问的特点分为线性结构和非线性结构。线性结构包括常见的链表、栈、队列等,非线性结构包括树、图等。数据结构种类繁多,本文将通过图解的方式对常用的数据结构进行理论上的介绍和讲解,以方便大家掌握常用数据结构的基...
4年前 (2021-02-09)
阅读(2319)
赞一个 (4 )
链接直达
一、经典的面试题从输入URL到页面展现的过程输入URL后,会先进行域名解析。优先查找本地host文件有无对应的IP地址,没有的话去本地DNS服务器查找,还不行的话,本地DNS服务器会去找根DNS服务器要一个域服务器的地址进行查询,域服务器将要查询的域名的解析服务器地址返回给本地DNS,本地DNS去这里查询就OK了。浏览器拿到服务器的IP地址后,会向它发送HTTP请求。HTTP请求经由一层层的处理、封装、发出之后,最终经由网络到达服务器,...
4年前 (2021-02-09)
阅读(1823)
赞一个 (4 )
链接直达
在介绍更优雅的编程之前,让我们一起回顾一下,不好的if...else代码。一、又臭又长的if...else先看看下面的代码。public interface IPay {
void pay();
}
@Service
public c...
4年前 (2021-02-08)
阅读(2155)
赞一个 (5 )
链接直达
jcmd 命令在 jdk1.7 之后,新增了一个命令行工具jcmd,它是一个多功能工具,用它可以导出堆,查看java进程,导出线程信息,执行GC等。jcmd能将命令发送给正在运行的JVM,诊断运行中的java应用。jcmd程序须运行在与JVM相同机器上,需拥有与JVM相同的权限。jcmd程序可在已运行的JVM中,动态地与Java飞行记录器(JFR)交互。如果,应用程序已处于停止响应状态,则可使用jcmd命令进行数据收集工作,如:收集堆栈...
4年前 (2021-01-27)
阅读(2504)
赞一个 (2 )
链接直达
jhat 简介jhat 全称:Java Heap Analyse Tool(Java堆分析工具),jhat 也是 jdk 内置的工具之一。功能:主要是用来分析java堆的命令,可以将堆中的对象以 html 的形式显示出来,包括对象的数量,大小等等,并支持对象查询语言(OQL)。jhat命令➜ jhat -h
Usage: jhat [-stack <boo...
4年前 (2021-01-27)
阅读(3603)
赞一个 (3 )
链接直达