- 博客(12)
- 收藏
- 关注
原创 【记录】后端接口加redis缓存,缓存每日刷新
统计页面数据是每天刷新,所以要保证今天查到今天的缓存,明天就要查到明天的缓存。我的思路是redis保存key的时候加上日期,取的时候也加上当前日期。最近有一个需求是项目的概览统计页面访问速度太慢,每次都要查询好几个数据库,遂要求加缓存到redis里面,有缓存时只需要查redis就行了。@Documented 注解的主要作用是确保自定义注解的信息在生成的 Javadoc 文档中可见。@Target({ElementType.METHOD}) 表示这个注解可以使用在方法上。先自定义一个注解,用来作为缓存入口。
2024-08-08 10:36:46
165
原创 知识点:冒泡排序的实现
冒泡排序是一种简单的排序算法,它重复地比较相邻的两个元素,如果它们的顺序错误就交换位置,直到整个序列排序完成。实际上,总交换的次数可以不必这么多,因为每个第 j 次大循环比较时,数组的第arr.length - 1 - j 个下标以后的元素已经排序好了,不需要再重复比较。在这段示例中,内层for循环负责遍历数组一次,if用来判断前一个和后一个元素的大小。外层for循环用来控制总交换的次数。3.继续向后比较,重复步骤2,直到比较到序列的倒数第二个元素。1.从序列的第一个元素开始,依次比较相邻的两个元素。
2023-07-25 20:43:23
1090
1
原创 知识点:多线程中经典的生产者&消费者场景
每个线程在打印数字之后都会调用wait方法,释放锁并进入等待状态,直到另一个线程调用notify方法唤醒它继续执行。通过使用synchronized关键字修饰Clerk的addProduct()和minusProduct()方法,实现了对产品数量的互斥访问。在多线程编程中,生产者-消费者问题是一种经典的同步问题,涉及到一个生产者线程和一个消费者线程共享一个有限的缓冲区。总的来说,这段代码展示了生产者和消费者之间的协作关系,确保生产者不会在产品数量达到上限时继续生产,消费者不会在产品数量为0时继续消费。
2023-07-24 20:28:14
75
原创 知识点:基本数据类型的数组转换为集合的注意事项
但是,需要注意的是,如果数组是基本数据类型的数组,addALL方法会将整个数组视为一个元素,而不是逐个添加。因此,只有当数组不是基本数据类型时,才可以使用addALL方法。另外,使用Arrays.asList()方法将基本数据类型的数组转换为List时会出现问题,会将整个数组作为一个元素添加到List中。使用工具类的方法时,可以使用Collections.addAll()方法将数组的元素添加到ArrayList中。常规的for循环可以将一个数组的元素逐个添加到ArrayList中。使用工具类的方法转换。
2023-07-20 11:41:42
69
原创 练习题:生成10个[1,100]的随机整数,删除最大的三个数字
原集合:[1, 2, 2, 3, 4, 5, 6, 79, 88, 88, 88, 99, 99, 100]生成10个[1,100]的随机整数(用集合存储),删除最大的三个数字。如果最大的数字有多个 必须要全部删除。删除后的集合:[1, 2, 2, 3, 4, 5, 6, 79]最大的三个数是:[100, 99, 88]
2023-07-20 10:27:05
106
原创 练习题:随机生成一个字符串集合,并求出每个字符可能出现的个数
静态方法HashTest():传入字符串集合 用一个HashMap统计对应的每个字符和出现次数 最后返回这个map。用for循环包含 ascii码表转换char类型 得出一个小写的字符串,并且用ArrayList接收。静态方法listTest():传入字符串集合和要统计的字符 返回字符的出现次数。创建集合,集合存放随机生成的30个小写字母。求出字符串里每种字符可能出现的次数。
2023-07-19 20:18:12
57
原创 练习题:统计一个字符串中每种字符出现的次数
知识点:char数组 | toCharArray方法 | HashMap集合。对一个长字符串进行操作,计算并且保存每种字符的出现次数。HashMap存储每种字符和字符出现的字数。当对应的字符出现时,count+1。用增强for循环遍历数组。
2023-07-19 20:01:35
112
原创 练习题:让数组中每一个元素除以首元素
题目:定义一个int类型的数组,让数组中每个位置的值除以首位置的元素,得到的结果,作为该位置上的新值。组成新的数组按照常规的思路:进行一个for循环,让i在小于数组长度时,所在位置的数字除以首个元素。public class test { public static void main(String[] args) { int[] arr = new int[]{12,24,36,43,56,77,432}; //执行 除 操作 for (int i = 0
2021-12-04 15:27:12
785
原创 练习题:直接print char[]数组会输出什么结果
题目如下public class ArrayPrint { public static void main(String[] args) { int[] arr = new int[]{1,2,3}; System.out.println(arr); char[] ch = new char[]{'a','b','c'}; System.out.println(ch); }}按思维惯性来说,应该会输出两个数组各自的地址
2021-12-04 11:48:35
704
原创 Java-IO 使用BufferedReader/Writer复制带有中文的文件乱码
在学习java IO方面知识时,我在看一个网络教程,照着上面练习代码代码和视频一模一样,最后复制的txt文件英文没问题,中文却有乱码代码如下@Test public void testBufferReaderWriter(){ BufferedReader br = null; BufferedWriter bw = null; try { //1.创建文件和相应的流 br = n
2021-03-11 22:45:03
771
原创 Tomcat在cmd(控制台)里面出现中文乱码解决方案 (淇℃伅)
淇℃伅本人是技术小白,在从零学tomcat时常常能看见这个词这个词相信各位多多少少也见过,请教了下老师,得知是编码默认设置的问题在tomcat目录下用startup.bat启动时,会出现以下界面tomcat虽然算是启动成功,但是这个淇℃伅不免有些碍眼进入tomcat本地目录下,conf文件夹里的logging.properties把箭头所指的这一行,编码改为GBKjava.util.logging.ConsoleHandler.encoding = GBK此时再启动就不会出现中文乱码
2021-03-04 17:03:47
401
1
原创 Eclipse中使用中文时查看源码java.lang.IllegalArgumentException问题
本人是技术小白,在用eclipse写一个ssh项目时发现无论如何也看不了导入jar包的源码在网上搜索了许多关于如何查看源码的教程,折腾了半天解决了下图是在页面里ctrl+左键点击的效果因为用了eclipse中文,所以一时看不出什么意思尝试切回英文,显示的是source not found这个问题在网上一搜就有很多文章写如何解决,我选择尝试下jadClipse,按着教程一步一步来(教程链接我会放在文章结尾,这里就不赘述了)下载解压jar包,移动exe文件,然后到这里算是配置好了打开源码一看
2021-02-27 19:17:42
277
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人