![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 79
xuedongabc
这个作者很懒,什么都没留下…
展开
-
eclipse中安装clover后不显示的问题
最近公司要测下,测试中的代码覆盖率,用到了clover,在网上有很多教程,大部分是如何破解和使用的。大部分文章介绍的安装插件的方法是1) 在eclipse菜单选择 Help-->Software Updates -->Find and Install -->Search for new features to install -->New remote site...原创 2015-01-09 15:04:12 · 492 阅读 · 0 评论 -
Java线程之守护线程(Daemon)
守护线程(Daemon) Java有两种Thread:“守护线程Daemon”与“用户线程User”。我们之前看到的例子都是用户,守护线程是一种“在后台提供通用性支持”的线程,它并不属于程序本体。从字面上我们很容易将守护线程理解成是由虚拟机(virtual machine)在内部创建的,而用户线程则是自己所创建的。事实并不是这样,任何线程都可以是“守护线程Daemon”或“用户线程Us...原创 2011-08-03 17:45:36 · 53 阅读 · 0 评论 -
Java线程:线程的调度-守护线程
Java线程:线程的调度-守护线程 守护线程与普通线程写法上基本么啥区别,调用线程对象的方法setDaemon(true),则可以将其设置为守护线程。 守护线程使用的情况较少,但并非无用,举例来说,JVM的垃圾回收、内存管理等线程都是守护线程。还有就是在做数据库应用时候,使用的数据库连接池,连接池本身也包含着很多后台线程,监控连接个数、超时时间、状态等等。 setDaemo...原创 2011-08-03 17:38:46 · 48 阅读 · 0 评论 -
Java线程:线程的调度-合并
Java线程:线程的调度-合并 线程的合并的含义就是将几个并行线程的线程合并为一个单线程执行,应用场景是当一个线程必须等待另一个线程执行完毕才能执行时可以使用join方法。 join为非静态方法,定义如下:void join() 等待该线程终止。 void join(long millis) 等待该线程终止的时间最长为 millis 毫秒...原创 2011-08-03 17:35:31 · 59 阅读 · 0 评论 -
Java线程:线程的调度-优先级
Java线程:线程的调度-优先级 与线程休眠类似,线程的优先级仍然无法保障线程的执行次序。只不过,优先级高的线程获取CPU资源的概率较大,优先级低的并非没机会执行。 线程的优先级用1-10之间的整数表示,数值越大优先级越高,默认的优先级为5。 在一个线程中开启另外一个新线程,则新开线程称为该线程的子线程,子线程初始优先级与父线程相同。 /** * Java线程...原创 2011-08-03 17:24:21 · 65 阅读 · 0 评论 -
Java线程:线程的调度-休眠
Java线程:线程的调度-休眠 Java线程调度是Java多线程的核心,只有良好的调度,才能充分发挥系统的性能,提高程序的执行效率。 这里要明确的一点,不管程序员怎么编写调度,只能最大限度的影响线程执行的次序,而不能做到精准控制。 线程休眠的目的是使线程让出CPU的最简单的做法之一,线程休眠时候,会将CPU资源交给其他线程,以便能轮换执行,当休眠一定时间后,线程会苏醒,进入...原创 2011-08-03 17:20:52 · 57 阅读 · 0 评论 -
javadoc 应用详解
javadoc 应用详解 javadoc是生成一个java api文档生成工具。存在于jdk安装目录下的bin目录中。 javadoc在命令行使用还是比较复杂的,在eclipse、idea等IDE中却比较方便,在命令行使用的麻烦的原因是众多的参数。 但是IDE傻瓜型的操作在有些时候还完成不了想要的任务。这时候,就需要懂得一些参数命令的用法了。 在说明具体使用之前, ...原创 2011-08-03 15:26:37 · 174 阅读 · 0 评论 -
Java线程:线程的交互
Java线程:线程的交互 SCJP5学习笔记 线程交互是比较复杂的问题,SCJP要求不很基础:给定一个场景,编写代码来恰当使用等待、通知和通知所有线程。 一、线程交互的基础知识 SCJP所要求的线程交互知识点需要从java.lang.Object的类的三个方法来学习: void notify() 唤醒在此对象监视器上等待的单个线程。 ...原创 2011-08-03 14:52:37 · 69 阅读 · 0 评论 -
Java线程:线程的同步与锁
Java线程:线程的同步与锁 一、同步问题提出 线程的同步是为了防止多个线程访问一个数据对象时,对数据造成的破坏。例如:两个线程ThreadA、ThreadB都操作同一个对象Foo对象,并修改Foo对象上的数据。 public class Foo { private int x = 100; public int getX() {...原创 2011-08-03 14:31:06 · 52 阅读 · 0 评论 -
Java线程:线程状态的转换
Java线程:线程状态的转换 SCJP5学习笔记 一、线程状态 线程的状态转换是线程控制的基础。线程状态总的可分为五大状态:分别是生、死、可运行、运行、等待/阻塞。用一个图来描述如下: 1、新状态:线程对象已经创建,还没有在其上调用start()方法。 2、可运行状态:当线程有资格运行,但调度程序还没有把它选定为运行线程时线程所处的状态。当sta...原创 2011-08-03 11:54:56 · 64 阅读 · 0 评论 -
Java线程:线程栈模型与线程的变量
Java线程:线程栈模型与线程的变量 SCJP5学习笔记 要理解线程调度的原理,以及线程执行过程,必须理解线程栈模型。线程栈是指某时刻时内存中线程调度的栈信息,当前调用的方法总是位于栈顶。线程栈的内容是随着程序的运行动态变化的,因此研究线程栈必须选择一个运行的时刻(实际上指代码运行到什么地方)。 下面通过一个示例性的代码说明线程(调用)栈的变化过程。 ...原创 2011-08-02 18:04:33 · 62 阅读 · 0 评论 -
Java线程:创建与启动
Java线程:创建与启动 SCJP5学习笔记 一、定义线程 1、扩展java.lang.Thread类。 此类中有个run()方法,应该注意其用法:public void run()如果该线程是使用独立的 Runnable 运行对象构造的,则调用该 Runnable 对象的 run 方法;否则,该方法不执行任何操作并返回。 Thr...原创 2011-08-02 16:59:22 · 52 阅读 · 0 评论 -
Java线程:概念与原理
Java线程:概念与原理 SCJP5学习笔记 一、操作系统中线程和进程的概念现在的操作系统是多任务操作系统。多线程是实现多任务的一种方式。进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。比如在Windows系统中,一个运行的exe就是一个进程。 线程是指进程中的一个执行流程,一个进程中可以运行多个线程。比...原创 2011-08-02 16:57:30 · 53 阅读 · 0 评论 -
Java多线程编程总结
下面是Java线程系列博文的一个编目: Java线程:概念与原理Java线程:创建与启动 Java线程:线程栈模型与线程的变量 Java线程:线程状态的转换 Java线程:线程的同步与锁 Java线程:线程的交互 Java线程:线程的调度-休眠 Java线程:线程的调度-优先级 Java线程:线程的调度-让步 Jav...原创 2011-08-02 15:24:04 · 81 阅读 · 0 评论 -
深入浅出J2SE 5.0 枚举类型(aka Enum<E extends Enum<E>>)
原作者: Matt Quail (a.k.a. Spud) 翻译自:http://madbean.com/blog/2004/3/ 原作基于 http://creativecommons.org/licenses/by/2.0/ 翻译者 xangd xangd@yahoo.com.cn “奉天呈运,Tiger昭曰:Enum将是经过命名的常量,而不再是一堆令人困惑的整数,钦此” 那么,欢呼吧!!! ...原创 2011-08-01 14:30:23 · 125 阅读 · 0 评论 -
ajax跨越请求
ajax跨越请求 ajax的跨域(其实我也不知道我这个是ajax跨域还是js跨域,暂时就叫ajax跨越吧)问题一直是个头痛的问题,一直想避开这个问题,哎,可惜避不过啊。最近一个项目里就必须用了。在网上找了一下,有的没说清(呵呵,可能是我的理解能力差),有的不好实施,最后好不容易找到一篇,自己总结了下,跟大家分享。原理很简单,就是动态生成一个script标签,src指向需要访问的jsp或s...2011-07-28 16:32:11 · 83 阅读 · 0 评论 -
Java线程:线程的同步-同步方法
Java线程:线程的同步-同步方法 线程的同步是保证多线程安全访问竞争资源的一种手段。线程的同步是Java多线程编程的难点,往往开发者搞不清楚什么是竞争资源、什么时候需要考虑同步,怎么同步等等问题,当然,这些问题没有很明确的答案,但有些原则问题需要考虑,是否有竞争资源被同时改动的问题? 在本文之前,请参阅《Java线程:线程的同步与锁》,本文是在此基础上所写的。 对于同...原创 2011-08-04 16:07:59 · 81 阅读 · 0 评论 -
Java线程:线程的同步-同步块
Java线程:线程的同步-同步块 对于同步,除了同步方法外,还可以使用同步代码块,有时候同步代码块会带来比同步方法更好的效果。 追其同步的根本的目的,是控制竞争资源的正确的访问,因此只要在访问竞争资源的时候保证同一时刻只能一个线程访问即可,因此Java引入了同步代码快的策略,以提高性能。 在上个例子的基础上,对oper方法做了改动,由同步方法改为同步代码块模式,程序的执行逻...原创 2011-08-04 16:11:06 · 57 阅读 · 0 评论 -
Java线程:并发协作-生产者消费者模型
Java线程:并发协作-生产者消费者模型 对于多线程程序来说,不管任何编程语言,生产者和消费者模型都是最经典的。就像学习每一门编程语言一样,Hello World!都是最经典的例子。 实际上,准确说应该是“生产者-消费者-仓储”模型,离开了仓储,生产者消费者模型就显得没有说服力了。对于此模型,应该明确一下几点:1、生产者仅仅在仓储未满时候生产,仓满则停止生产。2、消费者...原创 2011-08-04 16:18:32 · 60 阅读 · 0 评论 -
通过java查询数据库表结构 .
public static void getConnAndTableStruct() { Connection connection = null; PreparedStatement pstmt = null; ResultSetMetaData rsmd = null; try { // mysql连接 //Class.forName("org.gjt.mm.mysql.Dr...原创 2011-11-22 11:40:26 · 193 阅读 · 0 评论 -
JDBC如何判断数据库的表是否存在
实现原理:主要是利用DatabaseMetaData.getTables(...)这个方法实现的,但是每一种数据库还存在一些差异,具体见下面详解。 一、getTables(...)方法说明 Java代码 ResultSet DatabaseMetaData.getTables(String catalog, ...原创 2011-11-08 17:34:52 · 291 阅读 · 0 评论 -
一个效果非常不错的JAVA数据库连接池 .
来源: http://hi.baidu.com/guowei4634/blog/item/bb16c85c66e90a47faf2c076.htmlimport java.sql.Connection;import java.sql.DatabaseMetaData;import java.sql.Driver;import java.sql.DriverManager;import ...原创 2011-12-27 10:50:15 · 73 阅读 · 0 评论 -
『JAVA基础』使用JavaMail发邮件的实例
代码一、Email_Autherticator.java 服务器验证代码import javax.mail.Authenticator; import javax.mail.PasswordAuthentication; public class Email_Autherticator extends Authenticator { String username...原创 2011-11-03 14:35:43 · 65 阅读 · 0 评论 -
编写java代码的几点技巧
(1)bigdecimal中要使用string作为参数来构造(bigdecimal.valueof()会把各种值转化成字符串,再调用 bigdecimal(string)的),否则照样会出问题;Java代码 system.out.println(10000*1.005); system.out.println(new bigdecimal(10000).mu...原创 2011-08-12 14:38:49 · 68 阅读 · 0 评论 -
java List 排序 Collections.sort
今天项目中用到了对list中的对象排序,把代码和大家分享下,用工具类collections中的sort方法排序。写一个比较类实现Comparator接口,具体两个类的大小就取决于实现这个接口时里边的逻辑。接下来大家看下例子 以下是比较类的实现package org.sort;import java.util.Comparator;public class Co...2011-08-12 12:34:49 · 57 阅读 · 0 评论 -
获得客户端真实IP地址
我们知道在jsp里,获取网页客户端的ip地址的方法是:request.getremoteaddr(),这种方法在大部分情况下都是有效的。但是在通过了apache,squid等反向代理软件就不能获取到客户端的真实ip地址了。如果使用了反向代理软件,用request.getremoteaddr()方法获取的ip地址是:127.0.0.1或192.168.1.110,而并不是客户端的真实ip。 经过...原创 2011-08-10 16:06:18 · 79 阅读 · 0 评论 -
一个tomcat 下 多域名的实现
买的VPS内存较少 无法增加APACHE服务器 或是多个TOMCAT 但是想运行多个网站 于是在网上找资料得到如下办法 <Alias>www.name.com</Alias> <Host name="name.com" appBase="/usr/local/apache-tomcat-6.0.29/webapps/soso" unp...原创 2011-08-09 09:48:39 · 71 阅读 · 0 评论 -
java jdbc url 不同数据库
1.Oracle数据库Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();String url = "jdbc:oracle:thin:@localhost:1521:orcle";String user = "test";String password = "test";Connection conn ...原创 2011-08-07 14:45:22 · 97 阅读 · 0 评论 -
java之选择排序
package com.lamp.sort; public class SelectSort { public static void main(String[] args) { int[] data = {3,1,10,2,8,4}; sortArray(data); for ...原创 2011-08-07 14:30:57 · 74 阅读 · 0 评论 -
Java的Thread测试[包括sleep,wait的使用比较]
package javaBese;public class ThreadTest {/** 共同点: 他们都是在多线程的环境下,都可以在程序的调用处阻塞指定的毫秒数,并返回。 不同点: Thread.sleep(long)可以不在synchronized的块下调用,而且使用Thread.sleep()不会丢失当前线程对任何对象的同步锁(monitor); ...原创 2011-08-05 11:10:56 · 149 阅读 · 0 评论 -
Java线程:新特征-有返回值的线程
Java线程:新特征-有返回值的线程 在Java5之前,线程是没有返回值的,常常为了“有”返回值,破费周折,而且代码很不好写。或者干脆绕过这道坎,走别的路了。 现在Java终于有可返回值的任务(也可以叫做线程)了。 可返回值的任务必须实现Callable接口,类似的,无返回值的任务必须Runnable接口。 执行Callable任务后,可以获取一个Future的对象...原创 2011-08-04 18:41:01 · 71 阅读 · 0 评论 -
Java线程:新特征-线程池
Java线程:新特征-线程池 Sun在Java5中,对Java线程的类库做了大量的扩展,其中线程池就是Java5的新特征之一,除了线程池之外,还有很多多线程相关的内容,为多线程的编程带来了极大便利。为了编写高效稳定可靠的多线程程序,线程部分的新增内容显得尤为重要。 有关Java5线程新特征的内容全部在java.util.concurrent下面,里面包含数目众多的接口和类,熟悉这部...原创 2011-08-04 18:40:11 · 58 阅读 · 0 评论 -
Java线程:volatile关键字
Java线程:volatile关键字 Java™ 语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量。这两种机制的提出都是为了实现代码线程的安全性。其中 Volatile 变量的同步性较差(但有时它更简单并且开销更低),而且其使用也更容易出错。 谈及到volatile关键字,不得不提的一篇文章是:《Java 理论与实践: 正确使用 Volatile 变量》,这篇...原创 2011-08-04 18:39:21 · 52 阅读 · 0 评论 -
Java线程:并发协作-死锁
Java线程:并发协作-死锁 线程发生死锁可能性很小,即使看似可能发生死锁的代码,在运行时发生死锁的可能性也是小之又小。 发生死锁的原因一般是两个对象的锁相互等待造成的。 在《Java线程:线程的同步与锁》一文中,简述死锁的概念与简单例子,但是所给的例子是不完整的,这里给出一个完整的例子。 /** * Java线程:并发协作-死锁 * * @author ...原创 2011-08-04 16:56:49 · 54 阅读 · 0 评论 -
java多线程例子
到这里我们做一个完整的例子来说明线程产生的方式不同而生成的线程的区别: package com.test;import java.io.*;import java.lang.Thread;class MyThread extends Thread { public int x = 0; public void run() { ...原创 2011-07-26 18:32:44 · 56 阅读 · 0 评论 -
Java线程使用入门(2)
第二种方式是创建Thread类的子类并在子类中实现run方法,或在实现runnable的类中实现run方法,并将这个实现传递给Thread的构造函数。你可能会问有什么区别。Java编程语言仅支持单一继承。如果你设计的调用是除了Thread以外的其它类,你可以是你的类实现Runnable,而它可以是你的作业被执行。否则,你定义Thread的子类来运行你的Run方法,在处理过程中不再添...原创 2011-07-25 22:27:18 · 54 阅读 · 0 评论 -
java常用设计模式之外观模式
------------------------------ 外观模式(Facade) -------------------------------(1)外观模式属于结构型模式,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。外观模式的主要用途就是为子系统的复杂处理过程提供方便的调用方法,使得子系统更加容易被使用。-->将复杂的过程包含在里面,提供一个简单的应用接...原创 2011-08-29 12:20:31 · 68 阅读 · 0 评论 -
java常用设计模式之迭代器模式
------------------------------ 迭代器模式(Iterator) -------------------------------(1)基本概念:迭代器模式属于行为型模式,其意图是提供一种方法顺序访问一个聚合对象中得各个元素,而又不需要暴露该对象的内部表示。至少可以历遍first,next,previous,last,isOver,或是历遍选择符合某种条件的子元素.(...原创 2011-08-29 12:19:38 · 88 阅读 · 0 评论 -
java常用设计模式之观察者模式
-------------------------------- 观察者模式(Observer) --------------------------------(1)基本概念:观察者模式属于行为型模式,其意图是定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。这一个模式的关键对象是目标(Subject)和观察者(Observer)。一个目...原创 2011-08-29 12:18:37 · 66 阅读 · 0 评论 -
java常用设计模式之单例模式
-------------------------------- singelton(单例模式) --------------------------------基本概念:Singleton 是一种创建性模型,它用来确保只产生一个实例,并提供一个访问它的全局访问点.对一些类来说,保证只有一个实例是很重要的,比如有的时候,数据库连接或 Socket 连接要受到一定的限制,必须保持同一时间只能有一个连...原创 2011-08-29 12:17:37 · 58 阅读 · 0 评论