2021
05-26
05-26
Java实战之实现一个好用的MybatisPlus代码生成器
一、先看下项目结构CodeGenerator:生成器主类resources下的mapper.java.vm:一个模板类,用以在生成dao层时按模板来生成代码比如我们想把代码按如下目录来生成:代码层代码生成位置Controller层com.yinchd.web.controllerService层com.yinchd.web.serviceService实现类...
继续阅读 >
话不多说,先上图 即时通信系统:可以完成群聊、私人聊天,实时发送和显示聊天信息,完成好友列表,进一步可以带表情,附件发送,聊天信息的传送,等系统的主要技术socket通信技术,多线程技术,数据库技术。本系统实现的功能有:1.用户名字登录2.用户之间的群聊和查看群聊记录3.用户之间的私...
一、基本使用它们是LockSupport类中的方法//暂停当前线程LockSupport.park();//恢复某个线程的运行LockSupport.unpark(暂停线程对象)应用:先park再unparkThreadt1=newThread(()->{log.debug("start...");sleep(1);log.debug("park...");LockSupport.park();log.debug("resume...");},"t1");t1.start();sleep(2);log.debug("unpark...");LockSupport.unpark(t1);...
0.写在前面2020-5-18更新这个东西已经是两年前的了,现在问我具体细节我也不是很清楚了,而且现在review两年前的代码感觉写的好烂。。。请大家有问题下面留言,不要加我的企鹅了,正在准备考研,比较忙。一点建议:1.当时会的比较少,对象实例化对于单纯的数据查询来说效率极低而且很蠢,我现在更建议使用数据库,或者简单点用xmlorjson都可以,建议想写的好一点的同学把里面的数据读写逻辑改一改,用数据库不香吗2.这个是分客户端...
本文实例为大家分享了Java简单实现定时器的具体代码,供大家参考,具体内容如下一、定时器定时器相当于一个任务管理器。有些任务可能现在执行,有些任务可能过1个小时,甚至很久才会执行。定时器就是对这些任务进行管理监视,如果一个任务执行时间到了,定时器就会将这个任务执行。保证所有的任务都会在合适的时间执行。二、定时器的实现对于定时器的实现,我们可以划分为3个部分。1、使用一个Task类描述每一个任务(里面包含...
本文实例为大家分享了Java简单实现线程池的具体代码,供大家参考,具体内容如下一、线程池线程池是一种缓冲提高效率的技术。相当于一个池子,里面存放大量已经创建好的线程,当有一个任务需要处理时,可以直接从池子里面取一个线程去执行它。包括内存池,很多缓冲的技术都是采用这种技术。其实理解起来很简答!为什么需要线程池,这种池的技术?1.1减少开辟资源和销毁资源带来的损耗。开辟线程,申请内存(具体的可以看C语言中...
自然排序Comparable对于自定义类进行排序要实现Comparable接口,重写compareTo()方法,如果不重写,像使用Arrays.sort()排序就会报错packagecom.che.lambda;importjava.util.Objects;/***@authorcheyuhangon2021/4/23*/publicclassGoodimplementsComparable{privateStringname;privateDoubleprice;publicGood(Stringname,Doubleprice){this.name=name;this.price=price;...
前言保证线程安全的方式有很多,比如CAS操作、synchronized、原子类、volatile保证可见性和ReentrantLock等,这篇文章我们主要探讨ReentrantLock的相关内容。本文基于JDK1.8讲述ReentrantLock.一、可重入锁所谓可重入锁,即一个线程已经获得了某个锁,当这个线程要再次获取这个锁时,依然可以获取成功,不会发生死锁的情况。synchronized就是一个可重入锁,除此之外,JDK提供的ReentrantLock也是一种可重入锁。二、ReentrantLock2....
一、前戏可能不少小伙伴习惯在代码中使用sout打印一些信息,就像这样:System.out.println("helloworld!")做为一位资深干码人,本着弘扬党求真务实的精神,必须得来看看这个sout有何玄机~~首先看调用就知道,out是System类的一个公共静态成员变量,进入System.java中:publicfinalstaticPrintStreamout=null;嗯,不止是public,还是final的。不管,来找找out是在哪里赋值的。。。。。。日嘛找半天没找到?那就试试直接在类...