![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA
文章平均质量分 72
lc11535
stay fooooo.
展开
-
通过继承LinkedHashMap实现LRU缓存
import java.util.LinkedHashMap; import java.util.Map; /** * LinkedHashMap默认是不删除元素的,通过重写removeEldestEntry来实现最大容量 * @author bean */ public class LRUMap<K, V> extends LinkedHashMap<K, V> { private static final long serialVersion.原创 2021-04-20 14:39:07 · 2250 阅读 · 0 评论 -
IDEA 程序包不存在,找不到符号但是明明存在对应的jar包 的解决方案
环境IntelliJ IDEA 2020.1JDK1.8前提概要问题1和问题2其实是同一个问题,但是表现上有一点不一样具体是如何引起该问题,尚不清楚,特此记录问题1描述一运行springboot启动类,就报一大堆jar报错idea Kotlin: Classpath entry points to a non-existent location:类路径条目指向不存在的位置 程序包不存在 找不到符号 本地仓库也不是存在这个位置,很疑惑 然后就去这个文件目录下找这个目录删除了。还是原创 2021-04-18 17:30:42 · 4886 阅读 · 1 评论 -
Activiti
如果想系统地学习Activiti,大家课后可以阅读咖啡兔的最新力作《Activiti实战》(Activiti项目负责人力荐哦!)课程大纲1. Activiti组件划分2. BPMN文件3. DB模块划分4. 设计模式(1)命令模式(2)拦截 器模式5. 事件处理器(1)流程内事件(2)全局事件6. 命令处理机制与扩展7. PVM原理http://3188.la/event/Template.aspx?eid=525953...原创 2021-04-15 18:32:34 · 103 阅读 · 0 评论 -
java经典讲解-静态代理和动态代理的区别
本篇博客的由来,之前我们学习大话设计,就了解了代理模式,但为什么还要说呢?原因:1,通过DRP这个项目,了解到了动态代理,认识到我们之前一直使用的都是静态代理,那么动态代理又有什么好处呢?它们二者的区别是什么呢?2,通过学习动态代理了解到动态代理是一种符合AOP设计思想的技术,那么什么又是AOP?下面是我对它们的理解!代理Proxy:Proxy代理模式是一种结构型设计模式,主要解决的问题是:在直接访问对象时带来的问题代理是一种常用的设计模式,其目的就是为其他对象...原创 2021-04-14 20:35:18 · 188 阅读 · 0 评论 -
重写(Override)与重载(Overload)的区别
重载被重载的方法必须改变参数列表(参数个数或类型或顺序不一样); 被重载的方法可以改变返回类型; 被重载的方法可以改变访问修饰符; 被重载的方法可以声明新的或更广的检查异常; 方法能够在同一个类中或者在一个子类中被重载。 无法以返回值类型作为重载函数的区分标准。重写参数列表必须完全与被重写方法的相同; 返回类型必须完全与被重写方法的返回类型相同; 访问权限不能比父类中被重写的方法的访问权限更低。例如:如果父类的一个方法被声明为public,那么在子类中重写该方法就不能声明为p...原创 2021-04-12 22:12:47 · 181 阅读 · 0 评论 -
Spring 定时任务之 @Scheduled cron表达式
一个cron表达式有至少6个(也可能7个)有空格分隔的时间元素。按顺序依次为秒(0~59)分钟(0~59)小时(0~23)天(月)(0~31,但是你需要考虑你月的天数)月(0~11)天(星期)(1~7 1=SUN 或 SUN,MON,TUE,WED,THU,FRI,SAT)7.年份(1970-2099)其中每个元素可以是一个值(如6),一个连续区间(9-12),一个间隔时间(8-18/4)(/表示每隔4小时),一个列表(1,3,5),通配符。由于"月份中的日期"和"星期中的原创 2021-04-01 15:42:41 · 229 阅读 · 0 评论 -
不要使用e.printStackTrace(),请使用logger记录
通常e.getMessage()并不能获取全部的错误信息,需要用到e.printStackTrace()查看完整错误信息,但是这个方法是void 只能在控制台输出。介绍两种方法,其实logger已经帮我做了这个事情一、log.error("系统异常:",e);一个直接通过log打印出来,这个方法是最简便的二、/** * 获取e.printStackTrace() 的具体信息,赋值给String 变量,并返回 * * @param e * ...原创 2021-03-31 22:33:47 · 2716 阅读 · 0 评论 -
SpringBoot日志
java日志:日志就是记录程序的运行轨迹,方便查找关键信息,也方便快速定位解决问题。常用的日志框架:Log4j、Slf4j 、Logback 。在JDK 1.3及以前,Java打日志依赖System.out.println(), System.err.println()或者e.printStackTrace(),Debug日志被写到STDOUT流,错误日志被写到STDERR流。这样打日志有一个非常大的缺陷,即无法定制化,且日志粒度不够细。于是, Gülcü 于2001年发布了Log4j,后来成为A.原创 2021-03-31 22:12:09 · 113 阅读 · 0 评论 -
tomcat重启警告:Abandoned connection cleanup thread)
tomcat重启警告:Abandoned connection cleanup thread)报错信息The web application [HelloWeb] appears to have started a thread named [Abandoned connection cleanup thread] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thre原创 2020-12-26 21:09:44 · 3097 阅读 · 0 评论 -
SpringBoot项目打包成war包并部署到服务器上
背景说明当我们使用springboot开发时,有的时候需要打war包在外部tomcat部署,方便运维人员维护,但是修改配置文件后重新打包给运维的时候,又需要修改一些配置这样还是不方便维护。环境参数开发环境:IntelliJ IDEA 2018.2.5 x64JDK:java version "1.8.0_144"服务器:Linux CentOS7项目配置 步骤一 打开pom.xml查看打包方式(创建项目时选择的打包方式) 修改前 如果是war方...原创 2020-12-26 20:53:01 · 22397 阅读 · 4 评论 -
com.mysql.jdbc.Driver 和 com.mysql.cj.jdbc.Driver的区别 serverTimezone设定
com.mysql.jdbc.Driver是 mysql-connector-java 5中的,com.mysql.cj.jdbc.Driver是 mysql-connector-java 6中的1、JDBC连接Mysql5com.mysql.jdbc.Driver:driverClassName=com.mysql.jdbc.Driverurl=jdbc:mysql://lo...原创 2020-03-05 22:55:58 · 352 阅读 · 0 评论 -
Java调用系统默认程序打开本地文件
完整版见https://jadyer.github.io/2013/04/23/java-open-local-file/package com.jadyer.util; import java.awt.Desktop;import java.io.File;import java.io.IOException;import java.util.ArrayList;import ...原创 2019-12-14 19:22:18 · 623 阅读 · 0 评论 -
why keylistener doesn't work java
The problem is, most likely, the applet doesn't have keyboard focus. This is a common issue with KeyListener.While you have set the applet as being focusable, it doesn't mean that the applet has key...原创 2019-12-11 15:20:19 · 218 阅读 · 0 评论 -
Linux下关于解决JavaSwing中文乱码的情况
linux 查看字体fc-list #字体列表fc-list :lang=zh #中文字体fc-match -v "字体名" # 查看字体详情 前两天在linux中运行java 老是出乱码,很苦恼,后来网上找了好多解决办法。有些可行,有些不可行,今天总结一下。 redhed 貌似没出现乱码 本身就jdk就支持中文 红旗linux suse等都不支持,需...原创 2019-12-11 15:19:37 · 618 阅读 · 0 评论 -
java swing 事件响应问题收集
在swing的窗口里面,即jframe里面,进行关闭窗口动作,如果事先不在代码中设置好,则默认是把窗口设成setVisable(false),程序还是依然运行着,继续占用内存,所以如果不小心,越调试则会发现内存占用率越高,机子越来越卡。一般的,如果没有特殊要求,只需要这样让该窗口对象调用setDefaultCloseOperation(JFrame.E...原创 2019-12-11 15:22:10 · 251 阅读 · 0 评论 -
Linux下启动Tomcat启动并显示控制台日志信息
Linux下如何启动Tomcat像Windows启动并显示控制台日志信息一样?Windows下启动tomcat,一般直接运行startup.bat,启动后如下图所示:Linux下直接启动./startup.sh但是查看不到启动日志信息,通过ps –ef|grep tomcat查看,实际已经启动,如下图所示:但是可以通过运行./catalina.sh run...原创 2019-12-09 17:35:00 · 1543 阅读 · 0 评论 -
java-class文件批量转java文件
java-class文件批量转java文件1.首先下载jad转换工具:https://varaneckas.com/jad,我的电脑是window10,选第一个下载2.输入cmd,打开cmd命令窗口,输入命令cd /d D:\workSpace\jad158g.win,切盘符进入工具解压后所在目录。3.将要转换的文件夹classes拷贝到同级目录下4.接着输入命令 ...原创 2019-12-09 17:32:51 · 2267 阅读 · 0 评论 -
tomcat WEB APP在Win下运行没有问题,到了Linux下出问题
最开始觉得是JDK有问题,最后还真是JDK的问题因为装的是ubuntu,还是装的桌面操作系统,还不是服务器系统,一开始就发现系统默认安装的是openjdk11的jre,于是卸载,使用和Win下相同的JDk8运行tomcat,但是偏偏就卸载不了,坑啊,因为可能有其他的软件依赖这个JDK,遂不能卸载之后就浪费时间又查别的问题,如ClassNotFoundException,但是并不是如下这个问...原创 2019-12-09 17:29:22 · 478 阅读 · 0 评论 -
Maven将WEB工程打包成可执行的jar,包含maven依赖,本地依赖。
因为今天一个朋友学习过程中用到了maven项目编写代码,到了最后打包阶段打的包不能运行,一时我也没想起来具体操作步骤,后来我百度学习了一下,特此记录下,以便后续自己查阅。参考资料:https://blog.csdn.net/fengyun_yi_pure/article/details/70313603https://blog.csdn.net/xyr05288/article/det...原创 2019-12-09 15:41:28 · 1218 阅读 · 0 评论 -
POJO、PO、BO、DTO、VO的含义以及应用场景
一、PO:persistantobject持久对象,可以看成是与数据库中的表相映射的java对象。最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合。PO中应该不包含任何对数据库的操作。二、VO:valueobject值对象。通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据而已。但应是抽象出的业务对象,可以和表对应,也可以不,这根据业务的需要.个人觉得同DT...原创 2019-12-05 19:22:07 · 3676 阅读 · 1 评论 -
正则表达式>>>java中匹配一个反斜杠要用四个反斜杠
1.正则表达式中匹配一个反斜杠要用四个反斜杠,为什么呢?我一直以为匹配一个反斜杠只需要两个反斜杠,但是java代码中实际测试被狠狠打脸了,然后就疯狂百度加测试,最后得出结论是java中匹配一个反斜杠要用四个反斜杠2.具体原因说明特别注意: \在Java和正则表达式中都是转义字符分析一下“\\\\”,第一个斜杠是转义符,第二个斜杠是斜杠本身,第三个斜杠是转义符,第四个斜杠是斜杠本身。1....原创 2019-12-03 10:50:56 · 673 阅读 · 0 评论 -
springboot和elaticsearch整合实现检索
springboot默认支持两种技术和es进行交互1、jest(默认不生效) *环境(全局配置文件) *需要导入io.searchbox.client.JestClient工具包 <dependency> <groupId>io.searchbox</groupId> ...原创 2019-11-03 16:25:26 · 645 阅读 · 0 评论 -
Spring Data JPA中使用事务和锁
学生选课系统小案例:https://blog.csdn.net/zc_ad/article/details/83578487Spring Data JPA 之 for updateEntity LockingIn the area of concurrency control, the JPA specification supports optimistic and pes...原创 2019-10-25 21:41:02 · 1060 阅读 · 0 评论 -
dubbo 之 入门示例(springboot)
dubbo入门示例很简单,服务端在数据库中查询user数据,消费端会调用服务端的服务获得用户数据。示例demo下载地址:https://download.csdn.net/download/zc_ad/10775010,项目的sql目录下有所需实验的sql文件。代码目录解结构:接口定义:在venue-dubbbo-api子项目下:public interface UserService...原创 2019-10-25 21:39:58 · 187 阅读 · 0 评论 -
Quartz入门学习
Quartz介绍:Quartz是一个作业调度库,可以与几乎任何其他软件系统集成或一起使用。简而言之,job scheduler是一个服务组件,负责在预定(计划)时间到来时执行(或通知)其他软件组件。Quartz作为一个包含所有核心Quartz功能的小型java库(.jar文件)进行分发。 此功能的主要接口(API)是Scheduler接口, 它提供简单的操作,例如调度/非调度作业,启动/停止...原创 2019-10-25 21:36:39 · 142 阅读 · 0 评论 -
Java JDK1.5、1.6、1.7、1.8、9-11、12、13新特性整理
一、Java JDK1.5的新特性1.泛型:List strs = new ArrayList();//给集合指定存入类型,上面这个集合在存入数据的时候必须存入String类型的数据,否则编译器会报错2.for-each例如上面这个集合我们可以通过for-each遍历,这样更加简单清晰 for(String s : strs){ System.out.println(s)...原创 2019-10-16 10:20:47 · 1992 阅读 · 0 评论 -
8 Eclipse Shortcut Keys for Code Refactoring
此功能的作用是:根据表达示计算结果,自动生成对应的变量及类型名默认快捷键是 Alt+Shift+LAlt+Shift+L快捷键:打开Extract Local Variable。Extract Local Variable 起作用的前提是:表达式必须是正确的参考其他网友的博客写的示例1:输入光标停在saxReader.read(“src/cn/xml/schema/web.xml”...原创 2019-08-04 17:38:19 · 209 阅读 · 0 评论 -
JDK发展历史以及版本特性 && Tomcat与JDK版本对应关系
1. JDK发展历史以及版本特性1995年5月23 java(原名Oak)诞生,并且在SunWorld大会上正式发表了java1.0版本。1996年1月23 JDK1.0发布Java语言有了第一个正式版本的运行环境。JDK1.0提供了一个纯解释执行的Java虚拟机的实现(Sun class VM)。JDK1.0的代表技术:JVM,Applet,AWT.1997年2月19日,JDK1.1...原创 2019-08-19 23:35:52 · 3678 阅读 · 0 评论 -
Netbeans的编译和打包ant脚本 && netbeans怎么导入和使用jar包
1. 定制Netbeans的编译和打包ant脚本Netbeans的打包,编译过程都是通过ant实现的,和普通的ant target没什么区别,只是由于和netbeans结合之后,需要有一点点注意的地方,详述如下:1.组织结构netbeans工程下的Build.xml就是打包的ant脚本了,这里面又导入了nbproject/build-impl.xml,实际的打包,编译,清理的方法都在...原创 2019-08-19 23:44:12 · 1191 阅读 · 0 评论 -
Netbeans的编译和打包ant脚本----英文版
1.How change build options in netbeansI have a project in netbeans in which I have a java scanner which has been generated using jflex. So when I usually build this using a make file I use the -Xli...原创 2019-08-19 23:53:23 · 711 阅读 · 0 评论 -
4 Open Source Application Servers (Comparison and Review)
New open source technologies are changing the way organizations develop and deploy applications. In this article, we review fourleading open source application servers. Compare each tool based on bus...原创 2019-08-24 16:13:40 · 226 阅读 · 0 评论 -
Apache -Common-lang包使用
ad commons:https://blog.csdn.net/f641385712/article/details/82468927https://blog.csdn.net/f641385712/article/details/82469877https://blog.csdn.net/u012240455/article/details/79014224原...原创 2019-09-05 17:52:36 · 1977 阅读 · 0 评论 -
unresolved problems----ConUpdate
https://stackoverflow.com/questions/1495496/what-are-the-advantages-of-immutable-objects-over-static-methods原创 2019-09-05 18:32:49 · 140 阅读 · 0 评论 -
java.exe和javaw.exe的区别
jdk的java.exe和javaw.exe文件都可以运行由javac.exe编译出来的java文件,但是,这两个程序都是有区别的:1、java启动的程序是命令行程序或阻塞程序,如果该程序未执行完毕或未被关闭,则所打开的命令行将被阻塞,不能执行其它命令如dir等,可以通过Ctrl+C等方式关闭程序;2、javaw启动的程序是窗口程序或非阻塞程序,在使用该命令运行程序后,可接着在命令行中执行下一...原创 2019-09-09 12:35:35 · 12109 阅读 · 0 评论 -
FindBugs 1.3.9
http://findbugs.sourceforge.net/由马里兰大学 Bill Pugh 教授开发的FindBugs是一个开源的(LGPL)静态代码分析工具(无需运行就能对代码进行分析的工具),目的是找出 Java 代码中的常见缺陷。现在使用 FindBugs 的人越来越多了,很多知名企业包括美国银行、eBay、Oracle、Sun Microsystems 以及 Google 等...原创 2019-09-13 19:27:52 · 337 阅读 · 0 评论 -
线程安全--彻底搞懂volatile关键字和synchronized(从偏向锁到重量级锁)
1.volatile关键字对于volatile这个关键字,相信很多朋友都听说过,甚至使用过,这个关键字虽然字面上理解起来比较简单,但是要用好起来却不是一件容易的事。这篇文章将从多个方面来讲解volatile,让你对它更加理解。计算机中为什么会出现线程不安全的问题volatile既然是与线程安全有关的问题,那我们先来了解一下计算机在处理数据的过程中为什么会出现线程不安全的问题。大家...原创 2019-09-13 19:58:43 · 639 阅读 · 1 评论 -
JeeSite4开发基础实例
user guide:https://jeesite.gitee.io/docs/install-deploy/use link:https://www.cnblogs.com/Drajun/p/10481909.htmlhttps://gitee.com/opencc/ccflow/attach_filesdownload link:https://gitee.com/thinkg...原创 2019-09-14 14:38:33 · 815 阅读 · 0 评论 -
Java class文件反编译工具推荐以及Eclipse中查看/调试Jar包中的代码
Java class文件反编译工具推荐http://javare.cn/http://www.javadecompilers.com/processingEclipse中查看/调试Jar包中的代码有源码的情况,例如:ssh框架一般在开源社区中都能下载到源码1、在Web工程中引用的jar包上右键点击属性,弹出对话框。选中Java Source Attachment,然后从本...原创 2019-09-14 14:27:30 · 1310 阅读 · 0 评论 -
Spring Boot启动错误
Spring boot - java.lang.ClassNotFoundException: javax.servlet.ServletContext and Unable to start EmbeddedWebApplicationContextlink:https://stackoverflow.com/questions/37938289/spring-boot-java-l...原创 2019-09-14 14:30:13 · 147 阅读 · 0 评论 -
使用 Maven 命令构建Spring Boot项目
使用Maven命令创建一个Maven项目:mvn archetype:generate:Maven插件原型是一个Maven项目模板工具包。-DgroupId 包名 -DartifactId 项目名 -DarchetypeArtifactId 类型maven-archetype-quickstart,创建一个Ja...原创 2019-09-17 16:36:17 · 731 阅读 · 0 评论