深入探讨、理解Java的CLASSPATH
从表面上看,Java的classpath(类路径)很简单,但一直以来它都是一个产生问题和混乱的根源。本文介绍classpath的基本知识、可能产生的问题,并提供了一个简单的classpath管理工具。 和Java类路径(classpath)打交道的过程中,开发者偶尔会遇到麻烦。这是因为,类装载器实际装入的是哪一个类有时并不显而易见,当应用程序的classpath包含大量的类和目录时,情况尤其严重。本文将提供一个工具,它能够显示出被装入类文件的绝对路径名。一、Classpath基础Java虚拟机(JVM)借助类装载器装入应用程序使用的类,具体装入哪些类根据当时的需要
Java mail ssl并存的一个问题
最近在做java mail ssl遇到一个问题:使用JavaMail收取邮件在系统运行一定时间后,无法成功. 出错信息是这样的: javax.mail.MessagingException: Connect failed; nested exception is: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at com.sun.mail.pop3.POP3Store.protocolConnect(POP3Store.java:148) at javax.mail.Service.connect(Se
JAVA操作数据库方式与设计模式应用
1. 在业务层使用JDBC直接操作数据库-最简单,最直接的操作 1)数据库url,username,password写死在代码中 Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url="jdbc:oracle:thin:@localhost:1521:orcl"; String user="scott"; String password="tiger"; Connection conn= DriverManager.getConnection(url,user,password); Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); String
用 Java 保存位图文件
摘要 虽然 Java 提供了几种打开图像的机制,但保存图像并不是它的强项。这篇技巧将讲述如何将图像保存在 24 位位图文件中。另外,Jean-Pierre 还提供了将图像文件写入位图文件所需的全部代码。 这篇技巧是 "在 Java 应用程序中加载位图文件的逐步指南" 的补充,那篇技巧说明了在 Java 应用程序中加载位图文件的过程。本月我再提供一篇教程,说明如何将图像保存在 24 位位图文件中,其中还包含将图像对象写入位图文件的代码片断。 如果您在 Microsoft Windows 环境中工作,那么创建位图文件的功能将为您提供许多方便。
关于java 异常的输出位置
异常的printStackTrace()方法的默认输出位置:通过查看Throwable类可以得知是系统错误输出日志public void printStackTrace() { printStackTrace(System.err);}如果在tomcat下就是Tomcat 5.0logsstderr.log如果在websphere下就是IBMWebSphereAppServerprofilesAppSrv01logsserver1SystemErr.log不过我们可以通过下面的方法重定向printStackTrace的输出位置看下面的例子:try{ int i=10/0; } catch(Exception e){ FileWriter aa=new FileWriter("haha.txt"); PrintWriter p=new Pr
tomcat load-on-startup 含义
load-on-startup 含义在servlet的配置当中,<load-on-startup>5</load-on-startup>的含义是:标记服务器是否在启动的时候就加载这个servlet。当值为0或者大于0时,表示服务器在启动时就加载这个servlet;当是一个负数时或者没有指定时,则表示服务器在该servlet被调用时才加载。正数的值越小,启动该servlet的优先级越高。[@more@]
JavaScript和Macromedia Flash的通信示例
原文地址: www.macromedia.com/support/flash/ts/documents/java_script_comm.htm说明: 略作修改,主要是一些很初级的操作; 又很多相似的文章,不过这个很权威下面是一些在Flash和使用Javascript的HTML文件直接通信的示例,每个示例都有简略的步骤本文讨论了3种基本的Flash/Javascript通信方式:Javascript 到 Flash的通信----使用Flash播放器的javascript方法Flash 到 Javascript的通信----使用Flash的fscommandFlash 到 Flash的通信----------使用本地连接对象或综合上2种技术并不是所有的浏览器都很重视脚本.为了和Flash播放器通信,浏览器必
Oracle存储过程编写经验和优化措施
1、开发人员如果用到其他库的Table或View,务必在当前库中建立View来实现跨库操作,最好不要直接使用“databse.dbo.table_name”,因为sp_depends不能显示出该SP所使用的跨库table或view,不方便校验。 2、开发人员在提交SP前,必须已经使用set showplan on分析过查询计划,做过自身的查询优化检查。 3、高程序运行效率,优化应用程序,在SP编写过程中应该注意以下几点: a) SQL的使用规范: i. 尽量避免大事务操作,慎用holdlock子句,提高系统并发能力。 ii. 尽量避免反复访问同一张或几张表,尤其是数据量较大的表
Eclipse快捷键大全
【转载】Ctrl+1 快速修复(最经典的快捷键,就不用多说了)Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一行(复制增加)Ctrl+Alt+↑ 复制当前行到上一行(复制增加)Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt+↑ 当前行和上面一行交互位置(同上)Alt+← 前一个编辑的页面Alt+→ 下一个编辑的页面(当然是针对上面那条来说了)Alt+Enter 显示当前选择资源(工程,or 文件 or文件)的属性Shift+Enter 在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后)Shift+Ctrl+Enter 在当前行插入空行(原理同上
使用struts标签时应避免标签中的id值重复
Select To_Char(To_Date('1312324', 'j'), 'jsp') From Dual; one million three hundred twelve thousand three hundred twenty-four j从耶酥日开始的累计天数,jsp的含义出自那里,在oracle官方文档库里没有。 另附上char<->number ,char<->date的官方格式,希望对大家有所帮助。 char<->number , 分隔符(一般千位) . 小数点 $ 美圆符号前导 0 0999 前导0(5位) length(to_char(12,'000'))=4 9990 后缀0(5位) 9
一些常用jar包作用
commons-digester.jar Digester基于规则的XML文档解析,主要用于XML到Java对象的映射. commons-beanutils.jar 提供对Java 反射和自省API的包装. aspectjweaver.jar 用于在Spring 2.0中集成AspectJ AspectJ LTW织入器 ognl.jar OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言(Expression Language,简称为EL),通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能。它使用相同的表达式去存取对象的属性。 hibernate2依赖的一些包 hibernat
JAVA进阶:一个简单Thread缓冲池的实现
在应用中,我们常常需要Thread缓冲池来做一些事以提高程序的效率和并发性。本文演示了如何利用Queue这种数据结构实现一个简单的Thread缓冲池。一个Thread缓冲池可以设计成以下这样:缓冲池由几个工作Thread和一个Queue组成,Client负责把任务放到Queue里面(put方法),而工作Thread就依次取出这些任务并执行它们(get方法)。Queue的一个经典实现是使用一个循环数组(这个实现在很多数据结构的书上都有介绍),如一个大小为size的数组,这个循环数组可以被想象成首尾相连的一个环。oldest指向Queue中最老的数据所在的位置,next指向下一个
从贪吃蛇到空间大战 手机游戏简史回顾
现在手机游戏已经成为一种非常普遍的休闲方式,凭借三维画面和震动及声色效果,手机游戏可以获得很多新奇的体验。很难想像,这就是从当初诺基亚手机中经典的二维贪吃蛇游戏发展而来的,今天我们来回顾一下手机游戏发展中的点滴历程。三维的实现:手机端游戏的发展与Java技术的发展有着不可分割的联系,最初的Java ME和Java Micro版是应用于台式电脑的程序,与手机这个改良版的微电脑还没有直接的关系,直到Java 2平台的推出。这得益于Sun公司,也就是Java平台的东家,Java 2推出后,Sun推出了一种名为J2ME(基于Java 2 Micro)的平台,被广泛
印度最小黑客4岁就写程序 12岁成计算机硕士
舜网3月12日讯 在印度众多神秘的专业“道德黑客”中,有一个年仅12岁的小黑客正在印度反黑客领域发挥着举足轻重的作用。已经拥有计算机技术硕士学历的他,如今正配合着印度一家知名IT企业,维护印度互联网的安全。 为保护桑杰夫,媒体没有公开他的真实身份。 12岁的桑杰夫(化名,因年纪过小和职业特殊,保护他的隐私)简直就是现实版的《天才小医生》,每天,当和他年纪差不多的小朋友或者躺在家中沙发上懒洋洋地看电视,或者和一群朋友疯赶打闹时,他却像个小大人似的,在印度一家IT企业规规矩矩地“上班”。要问他是干什么工作的,说