java语言基础
WitsMakeMen
这个作者很懒,什么都没留下…
展开
-
Maven学习总结:几个常用的maven插件
转自:http://shmilyaw-hotmail-com.iteye.com/blog/2170300 简介 我们使用maven做一些日常的工作开发的时候,无非是想利用这个工具带来的一些便利。比如它带来的依赖管理,方便我们打包和部署运行。这里几个常见的插件就是和这些工程中常用的步骤相关。maven-compile-plugin 这个插件就如同名字所显示的这样,用来编译...转载 2018-06-19 19:28:16 · 345 阅读 · 0 评论 -
ListenableFuture in Guava
转自:http://www.cnblogs.com/hupengcool/p/3991310.htmlListenableFuture in GuavaListenableFuture的说明 并发编程是一个难题,但是一个强大而简单的抽象可以显著的简化并发的编写。出于这样的考虑,Guava 定义了 ListenableFuture接口并继承了JDK concu转载 2015-07-26 12:27:03 · 990 阅读 · 0 评论 -
使用反射机制恢复xml文件表示的对象
题目:完成如下功能:1)有一个(任意)对象,里面有N个properties以及getter和setter方法2)有一个properties文件,有N个key,value来描述对象中property的值3)有一个scheme固定的xml,用来描述这个对象要求写一个解析器:1)将xml中的占位符,替换为properties文件中的value2) 将xml解析成对象,原创 2015-04-17 16:22:31 · 1592 阅读 · 0 评论 -
使用RangeMap管理区间
题目:以下格式 2013-10-01~2013-10-02 100表示2013-10-01入住,2013-10-02离店,入住一天的价格是¥100。 现有文件中包含多行这样的日期价格段,请将其合并,合并的规则包括:1)价格相同,日期段相邻或者重叠的需要合并2)相同日期的价格已后面录入的为准例子1:2013-08-01~2013-08-31 3002013-08-25原创 2015-04-16 15:47:03 · 3924 阅读 · 0 评论 -
java代码实现万年历
public class Calendar { public static boolean isLeapYear(int year){ boolean leapYear = false; if(year%100==0&&year%400==0){ leapYear = true; }else if(year%100!=0&&year%4==0){ leapYear = t原创 2015-04-10 20:48:45 · 4437 阅读 · 0 评论 -
用一个能产生[1,m]的随机函数, 实现一个能随机产生一个[1, n]的函数。
中心思想使用raimport java.util.Random;public class MyRandom { public static int random(int m,int n){ int c = (int) (Math.log(n-1)/Math.log(m))+1; Random random = new Random(); int原创 2014-11-02 21:32:47 · 1167 阅读 · 0 评论 -
一个八皇后问题代码实现
求8*8的棋盘有多少皇后原创 2014-11-02 20:53:26 · 1580 阅读 · 0 评论 -
一个拓扑排序问题
n个人排队, 每个人都有要求Request, 具体每个要求是希望排在某个人之前或者之后, 用类RequestItem表示。例如有 1, 2, 3三个人, 1希望排在2之后3之前, 2希望排在1之前, 3希望排在1, 2之后。输出一个合理的排列原创 2014-11-02 20:48:04 · 1060 阅读 · 0 评论 -
一个生产这消费者问题
固定大小的缓存容器, 有一个生产者和三个消费者:原创 2014-11-02 20:49:39 · 880 阅读 · 0 评论 -
java-String中的 intern()
1. 首先String不属于8种基本数据类型,String是一个对象。因为对象的默认值是null,所以String的默认值也是null;但它又是一种特殊的对象,有其它对象没有的一些特性。2. new String()和new String(“”)都是申明一个新的空字符串,是空串不是null;3. String str=”kvill”;String str=new S转载 2014-10-09 16:09:20 · 1131 阅读 · 0 评论 -
源码记录
(1)类似正则表达式匹配问题, 例如原创 2014-09-23 23:22:22 · 971 阅读 · 0 评论 -
成员变量和成员方法对多态的不同
成员方法支持ji原创 2014-09-24 21:32:15 · 2259 阅读 · 1 评论 -
Semaphore使用
public class SemaphoreTest implements Runnable{ Semaphore sem; String name; public SemaphoreTest(Semaphore s, String name){ this.sem = s; this.name = name; } @Override public void run() {原创 2014-08-27 14:28:16 · 934 阅读 · 0 评论 -
Callable接口使用说明
public class CallableTest implements Callable{ int [] a; int s, e; public CallableTest(int [] a, int s, int e){ this.a = a; this.s = s; this.e = e; } public Integer call() throws Exception原创 2014-08-27 15:06:49 · 1199 阅读 · 0 评论 -
CycleBarrier使用说明
import java.util.concurrent.CyclicBarrier;import java.util.concurrent.TimeUnit;public class TestCyclicBarrier { private static final int THREAD_NUM = 5; public static class WorkerThread i原创 2014-08-26 20:47:45 · 2950 阅读 · 0 评论 -
CountDownLatch使用说明
//运行线程, 执行countDown()操作class CountDownThread implements Runnable{ CountDownLatch count; public CountDownThread(CountDownLatch count){ this.count = count; } public void run(){ System.out.print原创 2014-08-26 19:22:41 · 751 阅读 · 0 评论 -
网络编程
转自:http://www.cnblogs.com/springcsc/archive/2009/12/03/1616413.html 网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无法进入网络编程的大门而放弃了对于该部分技术的学习。 在 学习网络编程以前,很多初学者可能觉得网络编程是比较复杂的系统工程,需要了解很多和转载 2014-08-11 15:38:09 · 1028 阅读 · 0 评论 -
很好的java线程学习资源
原网址:http://lavasoft.blog.51cto.com/62575/27069/原创 2014-08-10 20:01:26 · 955 阅读 · 0 评论 -
【java】论integer是地址传递还是值传递
转自:http://www.tuicool.com/articles/AraaQbZ论integer是地址传递还是值传递Integer 作为传参的时候是地址传递 , 可以参考如下例子,在程序刚启动的时候把 Integer 的index 对象锁住 ,并且调用了 wait方法,释放了锁的资源,等待notify,最后过了5秒钟,等待testObject 调用notify 方法就继续执转载 2015-07-14 10:59:09 · 8955 阅读 · 0 评论 -
java程序作业代码
1、有这样一个Room类:public class Room { /** * 房间名称*/private String roomName; /** * 房间面积*/private int area; /** * 房间价格*/private BigDecimal price; /** * 酒店的地址*/private String原创 2015-06-03 14:31:23 · 5973 阅读 · 3 评论 -
lucene/solr 中Field类(域)的常用类型,以及Field属性解析
转自:https://blog.csdn.net/mine_song/article/details/58065323 Ø 是否分词(Tokenized)是:对该field存储的内容进行分词,分词的目的,就是为了索引。比如:商品名称、商品描述、商品价格否:不需要对field存储的内容进行分词,不分词,不代表不索引,而是将整个内容进行索引。比如:商品idØ 是否索引(I...转载 2018-05-14 17:20:47 · 570 阅读 · 0 评论 -
lucene的介绍与优化
链接:https://blog.csdn.net/wenxuechaozhe/article/details/51501338 最近查找了很多关于lucene的示例和代码,没有找到一个系统的内容,根据网上的资源进行下总结1 lucene简介 1.1 什么是lucene Lucene是一个全文搜索框架,而不是应用产品。因此它并不像www.baidu.com 或者google Desktop...转载 2018-05-14 11:12:59 · 182 阅读 · 0 评论 -
JAVA线程池调优
链接:https://www.cnblogs.com/jianzh5/p/6437315.htmlJAVA线程池调优 在JAVA中,线程可以使用定制的代码来管理,应用也可以利用线程池。在使用线程池时,有一个因素非常关键:调节线程池的大小对获得最好的性能至关重要。线程池的性能会随线程池大小这一基本选择而有所不同,在某些条件下,线程池过大对性能也有很多不利的影响。 所有线程池的工作方式本质转载 2018-01-19 14:41:27 · 480 阅读 · 0 评论 -
Timer与TimerTask的真正原理&使用介绍
链接:http://www.importnew.com/18542.html 其实就Timer来讲就是一个调度器,而TimerTask呢只是一个实现了run方法的一个类,而具体的TimerTask需要由你自己来实现,例如这样:Timer timer = new Timer(); timer.schedule(new TimerTask() { public void ru转载 2018-01-31 11:49:27 · 324 阅读 · 0 评论 -
web开发中 web 容器的作用(如tomcat)
链接:http://www.jianshu.com/p/99f34a91aefe我们讲到servlet可以理解服务器端处理数据的java小程序,那么谁来负责管理servlet呢?这时候我们就要用到web容器。它帮助我们管理着servlet等,使我们只需要将重心专注于业务逻辑。什么是web容器?servlet没有main方法,那我们如何启动一个servlet,如何结束一个servlet,如何寻找转载 2017-12-09 16:29:49 · 2279 阅读 · 0 评论 -
protobuf协议讲解说明
转自:http://blog.sina.com.cn/s/blog_9b0604b40101jyif.htmlhttp://www.cppblog.com/woaidongmao/archive/2009/06/23/88391.html 详解举例http://blog.sina.com.cn/s/blog_abea023b0101dxce.html 数据类型linux中转载 2015-11-16 14:35:53 · 5543 阅读 · 0 评论 -
难经6:小心,SpringAOP声明式事务的一个缺陷
转自:http://liuu.iteye.com/blog/422810[问题] Spring的声明式事务,我想就不用多介绍了吧,一句话“自从用了Spring AOP啊,事务管理真轻松啊,真轻松;事务管理代码没有了,脑不酸了,手不痛了,一口气全配上了事务;轻量级,测试起来也简单,嘿!”。不管从哪个角度看,轻量级声明式事务都是一件解放生产力的大好事。所以,我们“一直用它”转载 2015-09-21 21:36:56 · 1836 阅读 · 0 评论 -
Tomcat使用Spring管理对象出现HashMap死循环的问题
上周发了一个线上的项目,发现程序运行一段时间之后,cpu的load average经常飙到8以上,后来添加了几台服务器,问题任然没有得到解决,周末对程序进行了一下分析终于发现了问题所在,特此记录一下。(1)发现问题:首先到服务器上用top命令找到是tomcat线程cpu等资源使用率过高,记下这个线程的pid假设为123456。然后用ps mp 123456 -o THREAD,tid原创 2015-11-02 10:55:56 · 1458 阅读 · 0 评论 -
logback 常用配置详解(三) <filter>
http://blog.csdn.net/haidage/article/details/6794540转自:logback 常用配置详解(三) :过滤器,执行一个过滤器会有返回个枚举值,即DENY,NEUTRAL,ACCEPT其中之一。返回DENY,日志将立即被抛弃不再经过其他过滤器;返回NEUTRAL,有序列表里的下个过滤器过接着处理日志;返回ACCEPT转载 2015-07-22 14:35:09 · 791 阅读 · 0 评论 -
logback 配置详解(一)
转自:http://blog.csdn.net/haidage/article/details/6794509一:根节点包含的属性: scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属转载 2015-07-22 13:50:19 · 740 阅读 · 0 评论 -
logback 常用配置详解(二) <appender>
转自:http://blog.csdn.net/haidage/article/details/6794529logback 常用配置详解(二) :是的子节点,是负责写日志的组件。有两个必要属性name和class。name指定appender名称,class指定appender的全限定名。 1.ConsoleAppender:转载 2015-07-22 14:24:42 · 708 阅读 · 0 评论 -
MyBatis学习总结(一)——MyBatis快速入门
转自:http://www.cnblogs.com/xdp-gacl/p/4261895.html一、Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的PO转载 2015-07-16 16:00:38 · 1240 阅读 · 0 评论 -
idea中配置使用mybatis出现问题BuilderException
在Idea编辑其中配置使用Mybatis出现BuilderException问题,问题描述如下:2015-07-16 15:43:32,751 DEBUG [org.apache.ibatis.logging.LogFactory] - Logging initialized using 'org.apache.ibatis.logging.commons.JakartaCommonsLogg原创 2015-07-16 16:09:32 · 24453 阅读 · 2 评论 -
Log4j日志级别
转自:http://blog.sina.com.cn/s/blog_9c7ba64d01012z02.html 日志记录器(Logger)是日志处理的核心组件。 log4j具有5种正常级别(Level)。 日志记录器(Logger)的可用级别Level (不包括自定义级别 Level), 以下内容就是摘自log4j API (http://jakarta.apache.org/log4j/do转载 2015-07-15 16:59:58 · 1169 阅读 · 0 评论 -
使用commons-logging和log4j记录日志[转载]
转自:http://www.cnblogs.com/suyuan/archive/2009/05/15/1457546.html *为什么要使用commons-logging+log4j commons-logging和log4j都是[[Apache:http://www.apache.org]]下的开源项目。~ commons-logging的目的是为“所有的Java日志实现”提供一个统转载 2015-07-15 16:57:38 · 932 阅读 · 0 评论 -
Java深入 - logback的配置和使用
转自:http://blog.csdn.net/initphp/article/details/408918211. logback介绍Logback是由log4j创始人设计的又一个开源日志组件。logback当前分成三个模块:logback-core,logback- classic和logback-access。logback-core是其它两个模块的基础模块。logbac转载 2015-07-15 15:30:48 · 6954 阅读 · 0 评论 -
log4j+commons-logging结合使用
转自:http://www.cnblogs.com/xwdreamer/archive/2011/12/28/2304598.html1.参考文献:Apache Commons-logging使用实例Apache Log4j配置说明log4j.properties配置详解commons-logging结合Log4j的问题Properties文件相关Apache通用日志工具c转载 2015-07-15 20:40:43 · 1542 阅读 · 0 评论 -
Java 理论与实践: 正确使用 Volatile 变量
转载:http://www.ibm.com/developerworks/cn/java/j-jtp06197.htmlJava 语言中的 volatile 变量可以被看作是一种 “程度较轻的 synchronized”;与 synchronized 块相比,volatile 变量所需的编码较少,并且运行时开销也较少,但是它所能实现的功能也仅是 synchronized 的一部分。本文转载 2014-08-10 14:35:57 · 575 阅读 · 0 评论 -
notifyAll理解
下面这段代码suclass Calculater extends Thread{ public int total = 1; public void run(){ System.out.println("Calculator run"); synchronized(this){ for(int i=1; i<10; i++){ total *= i; }原创 2014-08-09 21:11:55 · 796 阅读 · 0 评论 -
Java Future模式
用过Java并发包的朋友或许对Future (interface) 已经比较熟悉了,其实Future 本身是一种被广泛运用的并发设计模式,可在很大程度上简化需要数据流同步的并发应用开发。在一些领域语言(如Alice ML )中甚至直接于语法层面支持Future。这里就以java.util.concurrent.Future 为例简单说一下Future的具体工作方式。Future对象本身原创 2013-05-31 11:04:56 · 1076 阅读 · 0 评论