摘要: Original Author: 夏昕<xiaxin@gmail.com>本文是由笔者2003 年底一个咨询项目中,为客户做的持久层设计培训文案整理而来。其中的内容涉及Hibernate 的使用,以及一部分笔者实际咨询项目中的经验积累,另一方面,大部分是笔者在Hibernate 的官方论坛中与众多技术专家交流所得。既来于斯,则归于斯。希望能聊有所用。本文并非试图替代Hibernate ...
阅读全文
posted @
2006-08-22 09:03 Lizzie 阅读(1452) |
评论 (0) |
编辑 收藏
面向对象的脚本语言Ruby
http://rubycn.ce-lab.net/20020101.htmlRUBY文档中心
http://www.moer.net/ruby/doc/
TCL脚本
http://www.tclchina.com/
Python快速入门
http://wiki.woodpecker.org.cn/moin/WeiZhong/2006-01-17
Python 研究(Dive Into Python)
http://www.woodpecker.org.cn/diveintopython/
Perl
http://www.perl.cn/
Perl 学习手札
http://perl.hcchien.org/TOC.html
Perl精华文章 - ChinaUnix.net
http://www.chinaunix.net/jh/25/
Perl常见问题集
http://www.cnool.net/tianyige/computer/perlfaq/
Spring专题
http://www.javafan.net/special/spring/
SpringFramework中文论坛 首页http://spring.jactiongroup.net/Java开源项目http://dev.yesky.com/javaopen/spring/
Hibernate
http://www.javaworld.com.tw/confluence/pages/viewpage.action?pageId=833HUIHOO_Hibernate
http://www.huihoo.com/framework/hibernate/
轻量级J2EE架构(Spring+Struts+Hibernate)
http://dev.csdn.net/develop/article/71/71975.shtm
AJAX专题
http://www.csdn.net/subject/ajax/
posted @
2006-08-22 09:00 Lizzie 阅读(279) |
评论 (0) |
编辑 收藏
与
C
或
C++
编写的程序不同,
Java
程序并不是一个可执行文件,而是由许多独立的类文件组成,每一个文件对应于一个
Java
类。此外,这些类文件并非立即全部都装入内存,而是根据程序需要装入内存。
ClassLoader
是
JVM
中将类装入内存的那部分。而且,
Java ClassLoader
就是用
Java
语言编写的。这意味着创建您自己的
ClassLoader
非常容易,不必了解
JVM
的微小细节。
Java
的
classloader
不但可以使你运行本地得
class
类
,
你也可以定制
classloader
运行来自远程的字节代码
.
ClassLoader
的基本目标是对类的请求提供服务。当
JVM
需要使用类时,它根据名称向
ClassLoader
请求这个类,然后
ClassLoader
试图返回一个表示这个类的
Class
对象。
通过覆盖对应于这个过程不同阶段的方法,可以创建定制的
ClassLoader
。通常当你需要动态加载资源的时候
,
你至少有三个
ClassLoader
可以选择
:
1.
系统类加载器(应用类加载器)
(system classloader or application classloader)
2.
当前类加载器
3.
当前线程类加载器
第一种
:
系统类加载器
系统类加载器
(system classloader).
这个类加载器处理
-classpath
下的类加载工作
,
可以通过
ClassLoader.getSystemClassLoader()
方法调用
.
ClassLoader
下所有的
getSystemXXX()
的静态方法都是通过这个方法定义的
.
在你的代码中
,
你应该尽量少地调用这个方法
,
以其它的类加载器作为代理
.
否则你的代码将只能工作在简单的命令行应用中
,
这个时候系统类加载器
(system classloader)
是
JVM
最后创建的类加载器
.
一旦你把代码移到
EJB, Web
应用或
Java Web Start
应用中
,
一定会出问题
.
Class.loadClass( String name, boolean resolve );
name
参数指定了
JVM
需要的类的名称,该名称以包表示法表示,如
Foo
或
java.lang.Object
。
resolve
参数告诉方法是否需要解析类。在准备执行类之前,应考虑类解析。并不总是需要解析。如果
JVM
只需要知道该类是否存在或找出该类的超类,那么就不需要解析。
方法
defineClass
是
ClassLoader
的主要诀窍。
该方法接受由原始字节组成的数组并把它转换成
Class
对象。原始数组包含如从文件系统或网络装入的数据。
defineClass
管理
JVM
的许多复杂、神秘和倚赖于实现的方面
--
它把字节码分析成运行时数据结构、校验有效性等等。不必担心,您无需亲自编写它。事实上,即使您想要这么做也不能覆盖它,因为它已被标记成最终的。
方法
findSystemClass
findSystemClass
方法从本地文件系统装入文件。它在本地文件系统中寻找类文件,如果存在,就使用
defineClass
将原始字节转换成
Class
对象,以将该文件转换成类。当运行
Java
应用程序时,这是
JVM
正常装入类的缺省机制
.
如果
ClassLoader
不能找到类,它会请求父代
ClassLoader
来执行此项任务。所有
ClassLoaders
的根是系统
ClassLoader
,它会以缺省方式装入类
--
即,从本地文件系统。
方法
findLoadedClass
充当一个缓存
当请求
loadClass
装入类时,它调用该方法来查看
ClassLoader
是否已装入这个类,这样可以避免重新装入已存在类所造成的麻烦。应首先调用该方法。
让我们看一下如何组装所有方法。
loadClass
实现示例执行以下步骤:
(这里,我们没有指定生成类文件是采用了哪种技术,它可以是从
Net
上装入、或者从归档文件中提取、或者实时编译。无论是哪一种,那是种特殊的神奇方式,使我们获得了原始类文件字节。)
1.
调用
findLoadedClass
来查看是否存在已装入的类。
2.
如果没有,那么采用那种特殊的神奇方式来获取原始字节。
3.
如果已有原始字节,调用
defineClass
将它们转换成
Class
对象。
4.
如果没有原始字节,然后调用
findSystemClass
查看是否从本地文件系统获取类。
5.
如果
resolve
参数是
true
,那么调用
resolveClass
解析
Class
对象。
6.
如果还没有类,返回
ClassNotFoundException
。
7.
否则,将类返回给调用程序。
第二种选择
:
当前上下文环境下的类加载器
.
根据定义,当前类加载器就是你当前方法所属的类的加载器。在运行时类之间动态联编,即调用
Class.forName()
,
Class.getResource()
等类似方法时,这个类加载器会被隐含地使用。
posted @
2006-08-20 20:59 Lizzie 阅读(255) |
评论 (0) |
编辑 收藏
摘要: Log4j
有三个主要的组件:
Loggers
,
Appenders
和
Layouts
,即日志类别,日志要输出的地方和日志以何种形式输出。
1
、
...
阅读全文
posted @
2006-08-14 22:33 Lizzie 阅读(1281) |
评论 (0) |
编辑 收藏
BURS Business and User Requirement Specification
业务和用户需求规格说明
CCB Change Control Board
变更控制委员会
CI Configuration Item
配置管理项
CR Change Request
变更申请
CMM Capability Maturity Model
软件能力成熟度模型
COQ Cost Of Quality
质量成本
CUT Coding&Unit Test /Construct
编码及单元测试
DD Detail Design
详细设计
HLD High Level Design
概要设计
LLD Low Level Design
详细设计
SD System Design
系统设计
SRS System/Software Requirement Specification
软件需求规格说明
UT Unit Testing
单元测试
IT Integration Test
集成测试
ST System Test
系统测试
PT Performance Test
性能测试
UAT User Acceptance Test
用户验收测试
FURPS+
Functionality, Usability, Reliability, Performance,Supportability, + Localizability, Portability
功能性,可用性,可靠性,性能,支持性+
本地化,可移植性
IC (IGC)
Inter-group Coordination ( CMM Level 3 KPA )
组间协调(
CMM
第三级的
KPA
)
ISM
Integrated Software Management ( CMM Level 3 KPA )
集成软件管理(
CMM
第三级的
KPA
)
KPA Key Process Area
关键过程区域
LC Lifecycle
生命周期
OOA Object Oriented Analysis
面对对象分析
OOD Object Oriented Design
面向对象设计
OPD
Organization Process Definition ( CMM Level 3 KPA )
组织过程定义(
CMM
第三级的
KPA
)
OPF
Organization Process Focus ( CMM Level 3 KPA )
组织过程焦点(
CMM
第三级的
KPA
)
OSSP
Organization Standard Software Process
组织标准软件过程
PCB
Process Capability Baselines
过程能力基准
PCM
Process Change Management ( CMM Level 5 KPA )
过程更改管理(
CMM
第五级的
KPA
)
PDSP
Project's Defined Software Process
项目定义的软件过程
PI
Process Improvement
过程改进
PMR
Project Management Review
项目管理评审
PM
Project Manager
项目经理
PP
Project Planning
项目策划
PR
Peer Reviews ( CMM Level 3 KPA)
同行评审(
CMM
第三级的
KPA
)
QC
Quality Champion
项目
SQA
人员
QP
Quality Plan
质量计划
QPM
Quantitative Process Management ( CMM Level 4 KPA )
定量过程管理(
CMM
第四级的
KPA
)
RA
Requirement Analysis
需求分析
RCA
Root Cause Analysis
根本原因分析
RFP
Request for Proposal
提议和请求
RM
Requirements Management ( CMM Level 2 KPA )
需求管理(
CMM
第二级的
KPA
)
ROI
Return On Investment
投资收益率
SCCB
Software Configuration Control Board
软件配置控制组
SCM
Software Configuration Management ( CMM Level 2 KPA)
软件配置管理(
CMM
第二级的
KPA
)
SCMP
Software Configuration Management Plan
软件配置管理计划
SDLC
Software Development Life Cycle
软件开发生命周期
SEI
Software Engineering Institute
软件工程研究所
SEPG
Software Engineering Process Group
软件工程过程组
SMR Senior Management Review
高级管理评审
SPC Statistical Process Control
统计过程控制
SPE Software Product Engineering ( CMM Level 3 KPA )
软件产品工程(
CMM
第三级的
KPA
)
SPI Software Process Improvement
软件过程改进
SPP Software Project Plan ( CMM Level 2 KPA )
软件项目策划(
CMM
第二级的
KPA
)
SPTO Software Project Tracking & Oversight
软件项目跟踪和监督
SQA Software Quality Assurance ( CMM Level 2 KPA )
软件质量保证(
CMM
第二级的
KPA
)
SQM Software Quality Management
软件质量管理
DP Defect Prevention ( CMM Level 5 KPA )
缺陷预防
(CMM
第五级的
KPA)
SSD System Sequence Diagram
系统时序图
SSM Software Subcontract Management ( CMM Level 2 KPA )
软件子合同管理(
CMM
第二级的
KPA
)
TCM Technology Change Management
技术改革管理
TP Training Plan / Training Program ( CMM Level 3 KPA )
培训大纲(
CMM
第三级的
KPA
)
TQM Total Quality Management
总质量管理
UC Use Case
用例
UCD Use Case Diagram
用例图
WBS Work Breakdown Structure
工作分解结构
posted @
2006-08-14 22:12 Lizzie 阅读(394) |
评论 (0) |
编辑 收藏
自我介绍应该写得简洁易懂,应首先列出必要的项目,然后按照各项进行详述。
-
清楚地介绍自己的姓名。
-
介绍自己的所属与职业。
-
介绍出生年月、出生地、毕业学校等。
-
介绍经历、性格、家庭等。
-
介绍自己的兴趣、爱好和特长。
新入社員の自己紹介
会社員 近藤晴次
このたび入社いたしました近藤晴次(はるじ)でございます。はるは晴天の晴、次は「つぎの次です。どうぞよろしくご指導をお願いいたします。
私の別名は「コンドもスレ次」といいまして、これは中学
・
高校
・
大学を通しての呼び名でした。
この名の起こりですが、学生時代を通じて試験の成績がどんじりから二番目か三番目という、スレスレの次と、いつも判子で押したような結果だったからです。
もちろんこれで満足していたわけではありませんが、そのうち、これは運というよりも名人芸だと、自分ながら感心するほどになり、こころよくその呼び名に明るい返事をするようになってしまっていました。
しかし、一度も裏口入学などのお情けにすがろうなどと考えたことがありませんでした。
いつも妙な自信とスリルが同居しているうちに「スレ次」」の結果が出ていたからです。
コンドの入社試験の結果も、採用、不採用よりも、「コンドもレス次」であるかないかのほうが気になりました。
そのうちに、人事課でおたずねしてみたいと思っております。
先輩の中には○○大出身の方が多いと聞いておりますが、私のような妙な、世話のやける後輩の入社にお困りでしょうが、よろしくお願いします。本社はかねがね私の憧れの的(まと)でありました。
入社しましたからには、精いっぱいやってみたいと存じております。
産地は九州長崎、趣味は音楽、スポーツですが自分では何もやりません。他人がやるのを見たり、聞いたりするだけです。
一言で言えば、趣味は「ヤジ馬」です。でもスジの通った、罪の無い「ヤジ馬」です。
あとはご覧のとおりの田舎者___
これで全部です。よろしくお願いします。
(译文)
公司职员 近藤晴次
我是新进公司的近藤晴次。晴是晴天的晴,次是下次的次,请多指教。
我的别名是"这次也差一点儿",这是我从中学、高中直到大学一贯的称呼。
关于这个名字的起因,是因为在整个学生时代,我的考试成绩总是倒数第二三名,总是差一点就倒数第一。
当然,对这样的结果我并不满足。但是渐渐地我暗自感叹,与其说这是命运,不如说是我的一种特有能力,因此对于这个别名我也就欣然接受了。
成绩不好,但却从来没有考虑过通过人情走后门入学。因为总是有一种奇妙的自信与惊险同在,所以也就出现了"差一点儿"这样的结果。
这次公司应聘,比起录用与否,我更关心这次是否"也差一点儿"。对比,我想事后去询问一下人事科。
听说在前辈之中,有很多人毕业于○○大学。像我这样奇怪的、给人添麻烦的晚辈进入公司,肯定会给各位带来不便,还请多多关照。进入本公司工作,是我很久以来的憧憬。我一定精神百倍地工作。
我的产地是九州长崎,爱好音乐、体育。但是我自己却什么也做不来,只是看别人做。
总之一句话,我的爱好是起哄看热闹。是守规守法地看热闹。
此外,如大家所见,我是一个乡下人。__这就是我的全部。请多多关照。
参考资料:实用日语写作教程
posted @
2006-08-10 13:33 Lizzie 阅读(1790) |
评论 (0) |
编辑 收藏
这几天尝试在
Eclipse
上配置了
JSP
开发环境,不仅可以高亮显示
jsp
语法部分,还能在
eclipse IDE
上调试
jsp
页面。
和目前项目要求一样,所用到的软件列表如下:
1
,
eclipse-SDK-3.1M7-win32
在
http://www.eclipse.org/downloads/index_topic.php
上下载相应版本
2
,
wtp-R-1.0.3-200607290929
在
http://download.eclipse.org/webtools/downloads/
下载对应
eclipse3.1
的应该是
R1.0
版本
另根据
WTP
要求,还须下载
JEM-SDK-1.1.0.1.zip
,
GEF-SDK-3.1.1.zip
,
emf-sdo-xsd-SDK-2.1.2.zip
等
3
,
tomcatPluginV3
http://www.sysdeo.com/eclipse/tomcatplugin
上可下载
4
,
Tomcat 5.0
在
http://tomcat.apache.org/
下载
5
,
j2sdk1.4.2
安装步骤:
1
、
Java
环境安装:
配置
JAVA_HOME
,
PATH
2
、
Tomcat
环境安装:
配置
TOMCAT_HOME
,
CATALINA_HOME
3
、
Eclipse 3.1
解压缩
4
、
Eclipse
几个插件解压缩
[wtp-R-1.0.3-200607290929
,
JEM-SDK-1.1.0.1.zip
,
GEF-SDK-3.1.1.zip
,
emf-sdo-xsd-SDK-2.1.2.zip
,
tomcatPluginV3
]
5
、
lomboz
插件安装
[
可选
]
网上很多配置用到了
lomboz
插件:
http://forge.objectweb.org/project/showfiles.php?group_id=97
,我没有安装不知道有什么影响。
测试例子:
1
,新建工程:选择
Dynamic Web Project
,点
Next
2
,输入
project name
,点
Next
3
,点击
Finish
,然后点击项目
TestJSP
新建
JSP
,点击
Next
4
,输入
index.jsp
建在
webContent
目录下,点击
Next
5
,因为用于测试,使用
jsp
模板即可,点击
Finish
6
,编辑
index.jsp
,添加点测试信息
Testing...
7
,右键点击
index.jsp
选择
Run as->Run on server
8
,选择
Tomcat5
9
,设定
server
相关参数
10
,点击
Finish
。
Server
就会启动,然后转到
index
页面。到此就成功配置完毕。
posted @
2006-08-08 22:25 Lizzie 阅读(759) |
评论 (0) |
编辑 收藏
最近又开始要使用
JSP
,于是写下这些便于将来参考!
Tomcat 5.5
开发
Servlet
和
JavaBean
的配置
1
、
JDK
安装到
C:\jdk
1.5.0
,
配置环境变量如下:
JAVA_HOME=C:\jdk
1.5.0
PATH=C:\jdk
1.5.0
\bin
2
、
Tomcat
安装到
C:\Tomcat,
配置环境变量如下:
CATALINA_HOME=C:\Tomcat
TOMCAT_HOME=C:\Tomcat
然后修改环境变量中的
CLASSPATH
,把
Tomat
安装目录下的
common\lib
下的
servlet-api.jar
加到
CLASSPATH
中去,修改后的
CLASSPATH
为:
C:\Tomcat\common\lib\servlet-api.jar
第
1
步:建立自己的开发目录
1.
到
Tomcat
的安装目录下
webapps
目录
2.
在
webapps
目录下新建一个目录
myapp
3.myapp
下新建一个目录
WEB-INF
(目录名称是区分大小写)
4.WEB-INF
下新建一个文件
web.xml
,将
tomcat\conf\web.xml
直接拷贝过来就
OK
第
2
步:建立自己的
Servlet
目录
1.
新建
servlet
程序,文件名为
Test.java
,内容如下:
package test;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Test extends HttpServlet
{
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{ PrintWriter out=response.getWriter(); out.println(" This is a servlet test.");
out.flush();
}
}
2 .
编译
Test.java
3 .
将
Test.class
剪切到
..\webapps\myapp\WEB-INF\classes\test\
下
4 .
修改
webapps\myapp\WEB-INF\web.xml
,改动
servlet
和
servlet-mapping
的内容
:
<servlet-name>Test</servlet-name>
<servlet-class>test.Test</servlet-class>
<servlet-mapping>
<servlet-name>Test</servlet-name>
<url-pattern>/test</url-pattern>
</servlet-mapping>
5 .
启动
Tomcat
,
http://localhost:8080/myapp/Test
看到输出
This is a servlet test.
说明编写的
servlet
成功了。
第
3
步:建立自己的
Bean
1.
新建一个
java
程序
TestBean.java
,内容如下:
package test;
public class TestBean{
public String name = "TestBean Testing ";
public String test()
{ return this.name; }
}
2 .
编译
TestBean.java
产生
TestBean.class
3 .
将
TestBean.class
文件剪切到
\webapps\myapp\WEB-INF\classes\test
下,
4 . \myapp
目录下新建一个
TestBean.jsp
文件,文件内容为:
<html><body>
<jsp:useBean id="tb" scope="page" class="test.TestBean" />
This is <%=tb.test()%>
</body></html>
5
重启
Tomcat
,启动浏览器,输入
http://localhost:8080/myapp/TestBean.jsp
如果看到输出
This is TestBean Testing
就说明编写的
Bean
成功了
posted @
2006-08-08 22:09 Lizzie 阅读(256) |
评论 (0) |
编辑 收藏
IBM-developerworks
http://www-128.ibm.com/developerworks/cn/
ITPUB
http://www.itpub.net/
51Testing
http://www.51testing.com/
Sun Forum
http://gceclub.sun.com.cn/NASApp/sme/controller/techsubcatquery?cat_id=0301
Matrix
http://www.matrix.org.cn/
JR
http://www.javaresearch.org/
Dev2Dev
http://dev2dev.bea.com.cn/index.html
JCalssRoom
http://japanese.jikx.com/bbs/list.asp?boardid=32
CoffeeJapanese
http://coffeejp.com/bbs/discuz.php
Linux MAN
http://man.lupaworld.com/
posted @
2006-08-08 12:15 Lizzie 阅读(244) |
评论 (0) |
编辑 收藏
摘要: JDBC
提供三种类型的语句对象:
Statement
,
PreparedStatement
,
CallableStatement
。
其中
PreparedStatement
是
Statemen...
阅读全文
posted @
2006-07-25 08:49 Lizzie 阅读(2606) |
评论 (0) |
编辑 收藏