- 博客(53)
- 收藏
- 关注
原创 5.Redis 实现点赞 优化登陆(验证码 token..)
Redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象。Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。string 是 redis 最基本的类型,你可以理解成与 Memcached 一模一样的类型,一个 key 对应一个 value。Redis 的 Set 是 string 类型的无序集合,集合是通过hash实现的。
2023-02-11 00:13:07 634
原创 4.帖子功能
在DiscussPostService里写addDiscussPost方法:注意转义html标签 和过滤敏感词。为了方便,我们先在CommunityUtil里封装几个json工具,使用阿里的fastjson,引入依赖。通常 服务端需要返回一个Json格式的字符串 里面包含 状态吗 信息 等内容。三个指针,指针1指向前缀树,指针2、3指向需要过滤的字符串。应用:字符串检索、词频统计、字符串排序等。名称:Trie、字典树、查找树。特点:查找效率高,消耗内存大。根据敏感词,初始化前缀树。编写过滤敏感词的方法。
2023-02-06 19:28:57 484
原创 2.类的文件结构
Class文件是一组以8个字节为基础单位的二进制流,各个数据项目严格按照顺序紧凑地排列在文件之中,中间没有添加任何分隔符,这使得整个Class文件中存储的内容几乎全部是程序运行的必要数据,没有空隙存在。整个Class文件本质上也可以视作是一张表。任何一个Class文件都对应着唯一的一个类或接口的定义信息。但是反过来说,类或接口并不一定都得定义在文件里(譬如类或接口也可以动态生成,直接送入类加载器中)。Class文件格式采用一种类似于C语言结构体的伪结构。
2022-10-07 13:47:42 192
原创 10.ConcurrentHashMap
concurrentHashMap是一个支持高并发更新与查询的哈希表(基于HashMap)在保证安全的前提下,进行检索不需要锁定。与hashtable不同,该类不依赖于synchronization去保证线程操作的安全。结构JDK1.7的:JDK1.8的ConcurrentHashMap(TreeBin:红黑二叉树节点Node:链表节点)
2022-10-04 23:37:55 344
原创 9.TreeMap
TreeMap是一个有序的key-value集合,它是通过红黑树实现的。TreeMap基于红黑树()实现。该映射根据其键的自然顺序进行排序,或者根据创建映射时提供的进行排序,具体取决于使用的构造方法。TreeMap是线程非同步的。2.构造器当我们使用无参构器时,创建的TreeMap仍是无序的我们可以传入一个自己编写的比较器(匿名内部类)去指定排序规则1. 构造器,把传入的实现了 Comparator 接口的匿名内部类(对象),传给TreeMap的comparator}
2022-10-04 21:54:00 154
原创 8.HashTable
存放的元素是键值对: 即 K- V结构为数组+链表不会转换成红黑树hashtable的键和值都不能为nullhashTable 使用方法基本上和HashMap一样hashTable是线程安全的,hashMap是线程不安全的的。
2022-10-02 23:08:45 197
原创 5.LinkedHashSet
LinkedHashSet 是 HashSet 的子类LinkedHashSet 底层是一个 LinkedHashMap(是HashMap的子类),底层维护了一个数组+双向链表 每一个节点都有before和after属性LinkedHashSet 有head和tailLinkedHashSet 根据元素的 HashCode 值来决定元素的存储位置,同时使用链表维护元素的次序,这使得元素看起来是以插入顺序保存的。(存入顺序与取出相同)LinkedHashSet 不允许添加重复元素。
2022-09-28 23:44:33 111
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人