java
ydsungan
这个作者很懒,什么都没留下…
展开
-
Could not connect to Redis at 127.0.0.1:6379: Connection refused
如果在redis.conf配置文件中修改过端口号,去执行./redis-cli时会报此错误,应该加上./redis-cli -p xxxx原创 2021-08-20 16:33:41 · 235 阅读 · 0 评论 -
简单的hash查找
public static void main (String[] args) throws java.lang.Exception { //假设N个数,数的范围在0-99,快速查找某个数k是否在其中 //简单的hash查找 //比如有数23,46,38,2,96,查找7是否在其中 int []a = new int[100]; a[23] = 1; a[46] = 1; a[38] = 1; a[2] = 1; a原创 2021-03-27 10:25:18 · 154 阅读 · 0 评论 -
Java垃圾回收机制
1 垃圾对象的判定算法对象被判定为垃圾的标准:没有被其他对象引用判定对象是否为垃圾的算法:引用计数算法、可达性分析算法1.1 引用计数算法每个对象实例都有一个引用计数器,被引用则+1,完成引用则-1;任何引用计数为0的对象实例可以被当作垃圾收集。优点:执行效率高,程序执行受影响较小;缺点:无法检测循环引用的情况,导致内存泄漏真实的情况是,主流的虚拟机和java并没有采用这种算法。但是python中用的是这种算法。关于循环引用上图俩个对象相互引用了,引用计数值都大于0,但是在java原创 2021-01-25 18:28:49 · 86 阅读 · 0 评论 -
idea上的maven形式的java web项目打包部署到linux的tomcat上
项目写好后,按照上述打成war包,丢到tomcat 的webapp目录里面,重启tomcat,访问链接是ip:8080/项目名/index.jsp原创 2020-07-01 18:28:33 · 404 阅读 · 0 评论 -
把爷搞吐了,IDEA下创建maven项目配置tomcat后访问404
本篇不讲如何在idea中配置tomcat,有很多别人的博客已经经清楚了,这里只记录我遇到的问题。1 配置tomcat时,deployment中下面的➕没有artifacts选项这时右下角应该有一个红色的fixes,先点击他也可以跳出一个页面,选中project settings中的artifacts,点击加号,选中web application:exploded,如果有from modules选项,那么很好,就选中他,依次点击确认即可,再回到刚才的deployment下面就有artifacts选项了2原创 2020-06-28 16:54:14 · 1868 阅读 · 1 评论 -
本地快速启动ElasticSearch集群以及简单的CRUD
通过一下三条命令快速启动本地的一个集群bin/elasticsearchbin/elasticsearch -Ehttp.port=8200 -Epath.data=node2bin/elasticsearch -Ehttp.port=7200 -Epath.data=node2查看状态:http://127.0.0.1:6200/_cluster/stats...原创 2020-02-06 22:01:16 · 198 阅读 · 0 评论 -
Java线程安全问题及synchronized关键字和Lock用法
1 演示线程安全问题的小案例public class ThreadSecurityDemo implements Runnable{ private int ticket = 100; //模拟多线程票务系统,有3条线程同时修改共享的ticket,引发线程安全问题 @Override public void run() { while (ticke...原创 2020-01-31 23:47:58 · 184 阅读 · 0 评论 -
Java创建线程的俩种方式
1 并发和并行并发:多个事情在同一个时间段内发生,cpu在多个任务中来回快速切换,多个任务高速交替执行并行:多个事情在同一个时刻发生,多个任务同一时刻在同时进行2 进程和线程进程:进程是程序的一次执行过程,是系统运行程序的基本单位,系统运行一个程序即是一个进程从创建、运行到消亡的过程线程:线程是进程的一个执行单元,一个进程中至少有一个线程。3 创建线程方式一新建子类继承Thr...原创 2020-01-31 21:49:33 · 93 阅读 · 0 评论 -
Java中的异常,throw关键字,throws关键字,try catch
Java处理异常的方式是中断处理1.Throwable类所有异常和错误的超类Exception:编译期异常,有throws 和 try catch 处理,其中try catch捕获异常后可以继续运行RuntimeException:运行期异常,比如数组索引越界异常Error:错误,int [] arr = new int[102410241024]会引起内存溢出错误2.thr...原创 2020-01-31 10:45:44 · 347 阅读 · 0 评论 -
Java网络编程通信协议、三要素、客户端服务器端代码实现,上传下载文件
1、网络通信协议分类TCP/IP是Internet最基本,最广泛的协议,在TCP协议中,客户端和服务器端有3次交互,以保证连接的可靠第一次握手:客户端向服务器端发送请求连,等待服务器端确认。第二次握手:服务器端向客户端回送一个响应,通知客户端收到了一个请求连接第三次握手:客户端再次向服务器发送确认信息,确认连接UDP(用户数据报协议:User Datagram Protoco...原创 2020-01-29 14:08:00 · 362 阅读 · 0 评论 -
Java中的Map集合简单介绍
Collection集合是单列集合,只有一个范型。Map集合是双列集合,需要俩个范型,一个元素包含俩个值,一个key(不可重复),一个value。HashMapHashMap底层是哈希表,HashMap集合是一个无序的集合,存取顺序不一致。LinkedHashMap底层是哈希表+链表,可以保证存取有序。Map集合常用方法添加put(K key, V value), Colle...原创 2020-01-22 16:54:33 · 226 阅读 · 0 评论 -
怎么实现高并发系统
脱离了业务的系统架构都是在纸上谈兵,真正在复杂业务场景而且还高并发的时候,那系统架构一定不是那么简单的,用个 redis,用 mq 就能搞定?当然不是,真实的系统架构搭配上业务之后,会比这种简单的所谓“高并发架构”要复杂很多倍。可以分为以下 6 点:系统拆分缓存MQ分库分表读写分离ElasticSearch系统拆分将一个系统拆分为多个子系统,用 dubbo 来搞。然后每个系统...原创 2020-01-21 21:30:49 · 1201 阅读 · 0 评论 -
Java中的范型
首先定义含有范型的类public class GenericClass<E> { private E name; public E getName() { return name; } public void setName(E name) { this.name = name; }}使用含有范型的类...原创 2020-01-21 19:46:46 · 262 阅读 · 0 评论 -
Java中的Collection集合
1、集合的概述集合是java提供的一种容器,可以存储多个数据,集合和数组都是容器,那么他们之间有什么区别呢?数组的长度是固定的,集合的长度是可变的数组中存储的是同一类型的元素,集合中存储的是对象,而且对象的类型可以不一致。2、集合的框架list接口:有序(有序指存储和取出的顺序一样)的集合;允许存储重复的元素;有索引可以使用for循环遍历。Vector、ArrayList、Link...原创 2020-01-21 17:28:34 · 123 阅读 · 0 评论 -
Java并发最佳实践
线程最佳创建方式: 实现Runnable线程最佳启动方式: 实现start()方法线程最佳停止方式: 请求interrupt()线程6个生命周期:New, Runnable, Blocked, Waiting, Timed Waiting, TerminatedNew=>Thread.start()=>Runnable=>进入synchronized修饰的相关方法或代码...原创 2020-01-17 22:11:20 · 130 阅读 · 0 评论 -
SpringBoot更换默认的SpringBoot banner
在sources新建一个banner.txt,在http://patorjk.com/software/taag这个网站生成字符,写进去原创 2019-12-29 11:21:18 · 249 阅读 · 0 评论 -
Jdbc.url配置可解决写进数据库的时间相差8个小时
之前的JDBCurl如下:jdbc.url=jdbc:mysql://localhost:3306/myworld?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=GMTserverTimezone设置为GMT+8就行了,但是用%2b代替+,所以最终应该写为·:jdbc.url=jd...原创 2019-12-29 11:11:45 · 1055 阅读 · 0 评论 -
FileNotFoundException: class path resource [mybatis-config.xml] cannot be opened because it does not
nested exception is java.io.FileNotFoundException: class path resource [mybatis-config.xml] cannot be opened because it does not exist??为什么报文件找不到,明明在Maven项目中的resources里面的存放着啊??这时候发现Idea中Maven项目编译后的t...原创 2019-12-29 11:09:10 · 3884 阅读 · 0 评论 -
Java中的动态加载类和静态加载类
静态加载类静态加载类,在编译的时候加载class Office{ public static void main(String [] args){ if("word".equals(args[0])){ Word w = new Word(); w.start(); } if("excel".equals(args[0])){ Excel e = new E...原创 2019-12-26 22:29:40 · 366 阅读 · 0 评论 -
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFa
org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘sqlSessionFactory’ defined in class path resource [com/imooc/demo/config/dao/SessionFactoryConfiguration.class]:...原创 2019-12-21 17:24:33 · 692 阅读 · 0 评论