![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
fanchael_kui
这个作者很懒,什么都没留下…
展开
-
java获取本机网卡的MAC地址
/** * 与系统相关的一些常用工具方法. * * @author stephen * @version 1.0.0 */ public class SystemTool { /** * 获取当前操作系统名称. * return 操作系统名称 例如:windows xp,linux 等. */ public static String getOSName() { return System.getPrope转载 2011-01-07 16:44:00 · 1393 阅读 · 0 评论 -
线上扩展Elasticsearch节点的过程
前置条件:1.保证当前机器能ping通要加入的集群的节点2.保证当前机器的es使用的端口未添加防火墙,默认为9200,9300说明:集群添加节点不会影响线上已经上线的程序中配置的节点信息,例如程序中配置的为a、b、c节点,要上线的节点为d、e,当上线节点时,不会影响程序使用扩充节点:1.设置es堆大小,(es默认堆大小为1g,需要设置为机器内存的一半,...原创 2019-09-04 15:20:48 · 953 阅读 · 0 评论 -
Centos7+Tomcat8,tomcat启动巨慢的解决方案
在apache-tomcat官方文档:如何让tomcat启动更快里面提到了一些启动时的优化项,其中一项是关于随机数生成时,采用的“熵源”(entropy source)的策略。他提到tomcat7的session id的生成主要通过java.security.SecureRandom生成随机数来实现,随机数算法使用的是”SHA1PRNG” A.使用伪随机函数生成器/dev/unran...翻译 2018-09-14 17:07:17 · 819 阅读 · 0 评论 -
ReentrantLock使用场景以及注意事项
import java.util.concurrent.TimeUnit;import java.util.concurrent.locks.ReentrantLock;/** * @author FanShukui * @version 2018/4/21 18:01 */public class ReentrantLockTest { public static Reen...原创 2018-04-21 18:06:54 · 2311 阅读 · 2 评论 -
ArrayDeque类的使用详解
源码分析来自网址:http://czj4451.iteye.com/blog/1688693转载 2018-04-25 15:49:08 · 353 阅读 · 0 评论 -
java8的parallelStream
先看一段代码,分别为串行遍历、并行遍历、并行加锁遍历:private static List<Integer> list1 = new ArrayList<>();private static List<Integer> list2 = new ArrayList<>();private static List<Integer> li...转载 2018-04-20 11:07:23 · 1126 阅读 · 0 评论 -
Java并发编程——阻塞队列
阻塞队列常用于生产者和消费者的场景,生产者是往队列里添加元素的线程,消费者是从队列里拿元素的线程。 BlockingQueue有两个阻塞场景:1、当队列中没有数据的情况下,消费者端的所有线程都会被自动阻塞(挂起),直到有数据放入队列。2、当队列中填满数据的情况下,生产者端的所有线程都会被自动阻塞(挂起),直到队列中有空的位置,线程被自动唤醒。BlockingQueue的核心方法:放入数据(offe...原创 2018-04-23 12:51:18 · 155 阅读 · 0 评论 -
Java反射机制
Java 反射是 Java 被视为动态(或准动态)语言的一个关键性质。Java 反射机制容许程序在运行时加载、探知、使用编译期间完全未知的 classes。换言之,Java 可以加载一个运行时才得知名称的 class,获得其完整结构。Java 反射相关的 API 在包 java.lang.reflect 中。Java 反射机制提供如下功能: 在运行时判断任意一个对象所属的类; 在运行时构造任意一个...原创 2018-04-23 12:44:34 · 132 阅读 · 0 评论 -
抽象类与接口以及Java8中接口的默认方法
Java8中的默认方法和静态方法的由来,首先还是先重温一下抽象类和接口的区别:抽象类抽象类是用来捕捉子类的通用特性的 。它不能被实例化,只能被用作子类的超类。抽象类是被用来创建继承层级里子类的模板。public abstract class GenericServlet implements Servlet, ServletConfig, Serializable { // abstract...原创 2018-04-22 21:06:03 · 11836 阅读 · 1 评论 -
使用@Transactional需要注意的
使用@Transactional的时候请注意一下两点:1、方法一定要 throws Exception2、如果方法里用到了try{}catch(){},那么catch里一定要throw new Exception(e),且使用@Transactional(rollbackFor=Exception.class)原创 2011-10-26 17:57:41 · 659 阅读 · 1 评论 -
Tomcat 服务器虚拟路径的几种配置方式
<br />配置虚拟路径的好处:<br /> 1.可以避免程序员对同一个web项目重新部署,提高开发效率。<br /> 2.可以使web应用程序和服务器安装文件所在目录分开,便于web项目的管理。<br />配置方式列表:<br />1. 在%TOMCAT_HOME%/conf/Catalina/localhost目录中创建一个xml文件,文件内容<Context path=”/” docBase=”” workDir=”” debug=”” reloadable=”” crossCon原创 2011-03-07 16:38:00 · 602 阅读 · 0 评论 -
javascript 创建类的几个方法
Javascript 语言本身也可以进行面向对象的编程,如下是最近几天对javascript面向对象编程的总结。 对象的创建 javascript对象有两种创建方式 1.使用对象初始器: objName = { prop1:value_1, prop2:value_2, ... } 该方法直接创建实例对象,而无需声明。 2.使用构造函数: 如:fuction Engineer(para1,para2){ this.para1 = para1; this.para2 = para2; ... } my Bil原创 2011-03-07 15:00:00 · 367 阅读 · 0 评论 -
spring中的AOP与IOC
<br />spring中的AOP与IOC<br />在J2EE的整个发展历程中,现在正是一个非常时刻。从很多方面来说,J2EE都是一个伟大的成功:它成功地在从前没有标准的地方建立了标准;大大提升了企业级软件的开放程度,并且得到了整个行业和开发者的广泛认可。然而,J2EE在一些方面已经开始捉襟见肘。J2EE应用开发的成本通常很高。J2EE应用项目至少和从前的非J2EE项目一样容易失败——如果不是更容易失败的话。这样的失败率高得让人难以接受。在这样的失败率之下,软件开发几乎变成了碰运气。而在J2EE遭遇失败的转载 2011-03-07 19:02:00 · 338 阅读 · 0 评论 -
tomcat连接池的配置
<br />tomcat连接池的配置:对于5.5之前的版本,配置连接池,在server.xml中进行配置,如下:<ResourceParams name="jdbc/java"><br /> <parameter><br /> <name>maxWait</name><br /> <value>5000</value><br /> </parameter><br /> <parameter><br /> <name>maxActive<原创 2011-03-03 17:34:00 · 306 阅读 · 0 评论 -
JavaScript初学者应注意的七个细节
<br />每种语言都有它特别的地方,对于JavaScript来说,使用var就可以声明任意类型的变量,这门脚本语言看起来很简单,然而想要写出优雅的代码却是需要不断积累经验的。本文利列举了JavaScript初学者应该注意的七个细节,与大家分享。<br />一、简化代码<br />JavaScript定义对象和数组非常简单,我们想要创建一个对象,一般是这样写的: <br />var car = new Object();<br />car.colour = 'red';<br />car.wheels转载 2011-01-14 11:27:00 · 296 阅读 · 0 评论 -
js 监听回车键
<br /><script language="javascript" for="document" event="onkeydown"><br /> var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;<br /> if (keyCode == 13 ) { <br /> //do something;<br />原创 2011-01-14 14:25:00 · 2896 阅读 · 0 评论 -
通过IDEA的Terminal操作命令时遇到的坑
一、java和javac版本的问题idea版本是IntelliJ IDEA 2019.2,安装完成后,然后通过terminal执行java -version和javac -version时,版本号为11.0.3。需要调整的地方是菜单help-->find action ,输入switch boot jdk,弹出如下框,改成本机的jdk1.8即可。二、maven配置的问题记住...原创 2019-09-20 22:24:26 · 6678 阅读 · 1 评论