随笔分类 - java
摘要:xmlbeansjar包冲突问题,手动引入即可 <dependency> <groupId>org.apache.xmlbeans</groupId> <artifactId>xmlbeans</artifactId> <version>3.1.0</version> </dependency>
阅读全文
摘要:@Component public class SpringContextUtil implements ApplicationContextAware { private static ApplicationContext context = null; /* (non Javadoc) * @T
阅读全文
摘要:1 工具 开发工具、源代码管理、构建工具、测试工具(压力、安全等)、接口测试工具、反编译工具、日志工具、第三方工具等 2 java jvm、多线程、socket、io(两种方式)、集合(两大接口)、异常、语法 3 服务器 linux、windows、虚拟机 4 web容器 tomcat、jetty、
阅读全文
摘要:背景 做个简单的接口开发,拿到的平台比较不理想,好久没重新搭建一个了,正好练练手。用了基础的servlet,maven,logback(log4j不支持格式化,比较烦人),fastjson,druid,dbutils,httpclient,freemarker。 基本按照mvc模式分层,但是少了个代
阅读全文
摘要:背景 天天搞java,这些监控也都知道,用过,但也没往细里追究。因为也没碰见这种问题,这次还是静下来走一遍流程吧。与网上基本一致,不过我区分了下linux和windows的不一样。我感觉基本是程序写成死循环了或者大对象分配多了才有这种问题吧。 步骤 1.找到java进程对应的pid。通过任务管理器。
阅读全文
摘要:背景 jvm到底怎么回事,本以为很简单,结果网上一搜,还真是有点迷糊了。这么多年也没大注意,看几次也是忘几次。总结下,其实主要区分点在于永久代不属于heap,平时说的栈又有细分。了解这些有啥用呢,我觉得在于调整jvm参数有用,jvm参数要根据使用一段时间后,通过查看可以知道该分配多少给堆,多少给栈,
阅读全文
摘要:背景 不懂jvm监控工具好意思说自己搞java的吗。其实搞了十多年的人我都见过不懂得,不懂不要紧,老实工作就行啊。这就是属于非技术的话题了,实在不知从何说起。还是赶紧学习下吧,可以去装了。我认真学习后,发现真的就是做大作用是装,问题根本没找到,因为jvm出问题几率小。 jstack(查看线程)、jm
阅读全文
摘要:接口是常量值和方法定义的集合。接口是一种特殊的抽象类。 java类是单继承的。classB Extends classA java接口可以多继承。Interface3 Extends Interface0, Interface1, interface…… 不允许类多重继承的主要原因是,如果A同时继承
阅读全文
摘要:URLConnection和HttpURLConnection使用的都是java.net中的类,属于标准的java接口。 HttpURLConnection继承自URLConnection,差别在与HttpURLConnection仅仅针对Http连接。
阅读全文
摘要:erp中用到applet,jre为1.6,开发用到jdk1.8,有冲突 安装jre1.6,再安装jdk8,将jdk1.8文件夹复制后卸载1.8,然后重新黏贴,将javahome定向到1.8文件夹
阅读全文
摘要:sql = "INSERT INTO LOG_FILENAME(ID,FILENAME,CREATETIME) VALUES(2,?,sysdate)"; public void batchInsertFileNames(File[] files) throws SQLException { Con
阅读全文
摘要:四种常用的对任务进行调度的 Java 实现方法,即 Timer,ScheduledExecutor, Quartz 以及 JCronTab。对于简单的基于起始时间点与时间间隔的任务调度,使用 Timer 就足够了;如果需要同时调度多个任务,基于线程池的 ScheduledTimer 是更为合适的选择
阅读全文
摘要:public List<String> unZip(String pathString, String zipPathString) { long startTime = System.currentTimeMillis(); List<String> list = new ArrayList<>(
阅读全文
摘要:DOM 优缺点:实现 W3C 标准,有多种编程语言支持这种解析方式,并且这种方法本身操作上简单快捷,十分易于初学者掌握。其处理方式是将 XML 整个作为类似树结构的方式读入内存中以便操作及解析,因此支持应用程序对 XML 数据的内容和结构进行修改,但是同时由于其需要在处理开始时将整个 XML 文件读
阅读全文
摘要:ThreadLocal和Synchonized都用于解决多线程并发访问他们两者的区别:synchronized是利用锁的机制,使变量或代码块在某一时该只能被一个线程访问,而ThreadLocal为每一个线程都提供了变量的副本,使得每个线程在某一时间访问到的并不是同一个对象,这样就隔离了多个线程对数据
阅读全文
摘要:之前为了解决批量生成excel,后台excel进程不易结束的问题,找了很久,发现office2007以上版本(2003需要增加2007插件)可以采用xml方式操作生成excel,效率高,无并发问题,比传统com组件方式更方便。 在java下,配合freemarker生成word也非常方便。
阅读全文
摘要:实现Runnable接口相对于继承Thread类来说,有如下显著的好处: (1)适合多个相同程序代码的线程去处理同一资源的情况,把虚拟CPU(线程)同程序的代码,数据有效的分离,较好地体现了面向对象的设计思想。 (2)可以避免由于Java的单继承特性带来的局限。我们经常碰到这样一种情况,即当我们要将
阅读全文
摘要:java写的ftp上传类,本地测试环境可以用,阿里云服务器不可用,两者系统均为centos。经过测试,发现appche的ftpclient类不可用,换成sun的ftpclient可以使用。
阅读全文
摘要:优点: 1、节省配置,减少配置文件大小 2、编译时即可查看正确与否,提高效率 缺点: 1、增加了程序的耦合性,因为注解保存在class文件中,而且比较分散 2、若要对配置进行修改需要重新编译 @autowired 注解时,@Qualifier,在使用Spring框架中@Autowired标签时默认情
阅读全文
摘要:1,request.getRealPath("/");这个方法已不推荐用 2,在Servlet 里用this.getServletContext().getRealPath("/");获得要路径。 或者 request.getSession().getServletContext().getReal
阅读全文