创建EXCEL文件: public void createXLS() { try { //打开文件 WritableWorkbook book= Workbook.createWorkbook(new File("JAVA生成EXCEL测试.xls")); //生成名为"第一页"的工作表,参数0表示这是第一页 WritableSheet sheet=book.createSheet("第一页",0); //设置字体为宋体,16号字,加粗,颜色为红色 WritableFont font1=new Wr ...
JAVA EXCEL API简介 Java Excel是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容、创建新的Excel文件、更新已经存在的Excel文件。使用该API非Windows操作系统也可以通过纯Java应用来处理Excel数据表。因为是使用Java编写的,所以我们在Web应用中可以通过JSP、Servlet来调用API实现对Excel数据表的访问。 现在发布的稳定版本是V2.0,提供以下功能: 从Excel 95、97、2000等格式的文件中读取数据; 读取Excel公式(可以读取Excel 97以后的公式); 生成Excel数据表(格式为 ...
注意: 1、用synchronized 来锁定一个对象的时候,如果这个对象在锁定代码段中被修改了,则这个锁也就消失了。看下面的实例: 目标类: public class TestThread { private static final class TestThreadHolder { private static TestThread theSingleton = new TestThread(); public static TestThread getSingleton() { retu ...
b、锁定一个对象或方法,它是静态的 这样锁定,它锁定的是对象所属的类 public synchronized static void execute(){ //... } 等同于 public class TestThread { public static void execute(){ synchronized(TestThread.class){ // } } } 测试: 目标类: public class TestThread { private stat ...
引申: 对于这种多个实例,要想实现同步即输出的数字是有序并且按线程先后顺序输出,我们可以增加一个静态变量,对它进行加锁(后面将说明锁定的对象)。 修改目标类: public class TestThread { private static Object lock=new Object(); //必须是静态的。 public void execute(){ synchronized(lock){ for(int i=0;i<100;i++){ System.out.println ...
synchronized的作用 一、同步方法 public synchronized void methodAAA(){ //…. } 锁定的是调用这个同步方法的对象 测试: a、不使用这个关键字修饰方法,两个线程调用同一个对象的这个方法。 目标类: public class TestThread { public void execute(){ //synchronized,未修饰 for(int i=0;i<100;i++){ System.out.println(i); } ...
前言 在Java语言中,equals()和hashCode()两个函数的使用是紧密配合的,你要是自己设计其中一个,就要设计另外一个。在多数情况 下,这两个函数是不用考虑的,直接使用它们的默认设计就可以了。但是在一些情况下,这两个函数最好是自己设计,才能确保整个程序的正常运行。最常见的是当 一个对象被加入收集对象(collection object)时,这两个函数必须自己设计。更细化的定义是:如果你想将一个对象A放入另一个收集对象B里,或者使用这个对象A为查找一个元对象在收集对 象B里位置的钥匙,并支持是否容纳,删除收集对象B里的元对象这样的操作,那么,equals()和hashCode( ...
汉字编码是一项较为麻烦的事情,弄不好就会造出些谁都看不懂的乱码。比如我想做个针对汉字网站的爬虫系统,需要对非特定的页面进行数据解析处理,而此时我所访问的页面编码格式未知,如果不能正确处理页面编码,则很难获得我们理想中的数据。 通常这时候可能有几种选择: 一是根据response的ContentType获得,如果服务器支持的话此项中会返回charset数值,解析即可。但对不返回或者不支持的服务器则无能为力。 二是使用正则或自定义解析函数截取页面中‘charset=’后的数据,采取死钉战术,但万一采集的页面中没有此项或者此项有错,也就回天乏术。 三就是老老实实的解析全文,最后返回一个符合的 ...
Jakarta common: Commons Logging Jakarta Commons Logging (JCL)提供的是一个日志(Log)接口(interface),同时兼顾轻量级和不依赖于具体的日志实现工具。 它提供给中间 件/日志工具开发者一个简单的日志操作抽象,允许程序开发人员使用不同的具体日志实现工具。用户被假定已熟悉某种日志实现工具的更高级 别的细节。JCL提供的接口,对其它一些日志工具,包括Log4J, Avalon LogKit, and JDK 1.4等,进行了简单的包装,此接口更接近于Log4J和 LogKit的实现. Commons-Latka Comm ...
import java.io.UnsupportedEncodingException; import javax.servlet.http.HttpServletRequest; /** * <p>Title:Request的参数转换</p> * <li>从Request取得的各种变量类型的转换</li> */ public class ReqUtils { /** * @param request request * @throws UnsupportedEncodingException */ public ...
/** Title:MD5加密算法,用来加密用户密码。 */ public class MD5 { static final int S11 = 7; static final int S12 = 12; static final int S13 = 17; static final int S14 = 22; static final int S21 = 5; static final int S22 = 9; static final int S23 = 14; static final int S2 ...
import java.awt.Dimension; import java.awt.Rectangle; import java.awt.Robot; import java.awt.Toolkit; import java.awt.image.BufferedImage; import java.io.File; <p>import javax.imageio.ImageIO; /******************************************************************* * 该JavaBean可 ...
一.获得控制台用户输入的信息 文本查看复制到剪贴板打印? /**获得控制台用户输入的信息 * @return * @throws IOException */ public String getInputMessage() throws IOException...{ System.out.println("请输入您的命令∶"); byte buffer[]=new byte[1024]; int count=System.in.read(buffer); char[] ch=new char[count-2];//最后 ...
(一)断点续传的原理 其实断点续传的原理很简单,就是在Http的请求上和一般的下载有所不同而已。 打个比方,浏览器请求服务器上的一个文时,所发出的请求如下: 假设服务器域名为wwww.sjtu.edu.cn,文件名为down.zip。 GET /down.zip HTTP/1.1 Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms- excel, application/msword, application/vnd.ms-powerpoint, */* Accept-Language: ...
import java.awt.*; import java.awt.image.*; import java.io.*; import javax.swing.*; import com.sun.image.codec.jpeg.*; public class WaterMark ...{ /** *//** * 给图片添加水印 * @param filePath 需要添加水印的图片的路径 * @param markContent 水印的文字 * @param markContentColor 水印文字的颜色 * @param qualNum 图片质量 * @r ...
Beanutils用了魔术般的反射技术,实现了很多夸张有用的功能,都是C/C++时代不敢想的。无论谁的项目,始终一天都会用得上它。我算是后知后觉了,第一回看到它的时候居然错过。 1.属性的动态getter、setter 在这框架满天飞的年代,不能事事都保证执行getter,setter函数了,有时候属性是要根据名字动态取得的,就像这样:   BeanUtils.getProperty(myBean,"code");而Common BeanUtils的更强功能在于可以直接访问内嵌对象的属性,只要使用点号分隔。 BeanUtils.getProperty(orderBean, "addres ...
方法1:[第一种方法比后一种生成的缩略图要清晰] import javax.imageio.ImageIO; import java.awt.image.BufferedImage; import java.awt.image.ColorModel; import java.awt.image.WritableRaster; import java.awt.*; import java.awt.geom.AffineTransform; import java.io.InputStream; import java.io.File; import java.io.FileOu ...
//程序说明: 要导入jxl.jar到Classpath中。 import jxl.*; import java.io.*; import jxl.write.*; /** * <p>java读取Excel表格,拷贴心、更新Excel工作薄 </p> */ public class Test1 { public static void main(String[] args) { jxl.Workbook rwb = null; try{ //构建Workbook对象 只读Workbook对象 //直接从本地文件创建Workbook //从输入流创建W ...
(一)断点续传的原理 其实断点续传的原理很简单,就是在Http的请求上和一般的下载有所不同而已。打个比方,浏览器请求服务器上的一个文时,所发出的请求如下: 假设服务器域名为wwww.sjtu.edu.cn,文件名为down.zip。 GET /down.zip HTTP/1.1 Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms- excel, application/msword, application/vnd.ms-powerpoint, */* Accept-Lang ...
2008-04-22

内部类

本文主要参照网上的一些相关文章、以及thinking in java 第三版,对java里面的内部类进行了一个较为详细的总结 内部类是指在一个外部类的内部再定义一个类。内部类作为外部类的一个成员,并且依附于外部类而存在的。内部类可为静态,可用protected和private修饰(而外部类只能使用public和缺省的包访问权限)。内部类主要有以下几类:成员内部类、局部内部类、静态内部类、匿名内部类 为什么需要内部类? 典型的情况是,内部类继承自某个类或实现某个接口,内部类的代码操作创建其的外围类的对象。所以你可以认为内部类提供了某种进入其外围类的窗口。使用内部类最吸引人的原因是: 每个内部类都 ...
在现实工作中,我们常常需要保存一些系统配置信息,大家一般都会选择配置文件来完成,本文根据笔者工作中用到的读取配置文件的方法小小总结一下,主要叙述的是spring读取配置文件的方法。 一.读取xml配置文件 (一)新建一个java bean package chb.demo.vo; public class HelloBean ...{ private String helloWorld; public String getHelloWorld() ...{ return helloWorld; } public void setHelloWorld ...
/** * <p>Title: 分页算法类</p> */ public class Pages { private int arttotal; private int pagetotal; private int curPage; private int pagesize; private String pageInfo; /** * @return 返回分页结果 */ public String getPageInfo() { return pageInfo; } /** * @retur ...
1.设置Cookie Cookie cookie = new Cookie("key", "value"); cookie.setMaxAge(60); //设置60秒生存期,如果设置为负值的话,则为浏览器进程 Cookie(内存中保存),关闭浏览器就失效。 cookie.setPath("/test/test2"); //设置Cookie路径,不设置的话为当前路径(对于Servlet来说为request.getContextPath() + web.xml里配置的该Servlet的url-pattern路径部分) response.addCookie(cookie); ...
怎样才算比较完整的Javamail操作指南?我想应该包括绝大多数基本的email操作,能够应付一般的应用。在本指南中打算囊括以下内容: ● 发送email:包括文本邮件、HTML邮件、带附件的邮件、SMTP验证 ● 接收email:pop3远程连接、收取不同MIME的邮件、处理附件 我想有了上述功能的介绍,应该可以应付很多email的相关应用了。所以请允许我给本文拟了一个比较狂妄的名字,这样才能保证收视率,。还是那句话,写这个post的原因就是没有在网上看到更全面的,你看过的话记得要告诉我。 下面的所有例子都经过实际测试,你可以说它写得不够OO,不够plugable,但是它的确是 ...
/** *作者:devilishking *email:devilishking@126.com * */ package com.dal; import javax.sql.DataSource; import javax.naming.*; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.*; import java.sql.*; public abstract class SQLHe ...
import javax.servlet.*; import javax.servlet.http.*; import java.io.*; import java.awt.*; import java.awt.image.*; import java.util.*; import javax.imageio.*; /** * @author wing.cai wing929@163.com * @version 1.0 * <br>Copyright (C), 2008-2009, wing.cai * <br>This program is ...
package com.hospital.dao.tools; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; import java.sql.Statement; import ...
import java.text.ParseException; import java.text.ParsePosition; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * <p>Title: 系统时间公共类</p> * <li>提供取得系统时间的所有共用方法</li> */ public class DateUtils { private static Date date; priva ...
wing929
搜索本博客
最近加入圈子
存档
最新评论