JAVA—咖啡馆

——欢迎访问rogerfan的博客,常来《JAVA——咖啡馆》坐坐,喝杯浓香的咖啡,彼此探讨一下JAVA技术,交流工作经验,分享JAVA带来的快乐!本网站部分转载文章,如果有版权问题请与我联系。

BlogJava 首页 新随笔 联系 聚合 管理
  447 Posts :: 145 Stories :: 368 Comments :: 0 Trackbacks

09 2007 档案

     摘要: 这段时间开始学习写存储过程,主要原因还是因为工作需要吧,本来以为很简单的,但几经挫折,豪气消磨殆尽,但总算搞通了,为了避免后来者少走弯路,特记述与此,同时亦对自己进行鼓励。

一:无返回值的存储过程

存储过程为:

CREATE OR REPLACE PROCEDURE TESTA(PARA1 IN VARCHAR2,PARA2 IN VARCHAR2) AS

BEGIN


END TESTA;
  阅读全文
posted @ 2007-09-26 08:30 rogerfan 阅读(349) | 评论 (0)  编辑

     摘要: 1.日期时间间隔操作

当前时间减去7分钟的时间
select sysdate,sysdate - interval '7' MINUTE from dual
当前时间减去7小时的时间
select sysdate - interval '7' hour from dual
当前时间减去7天的时间
select sysdate - interval '7' day from dual
当前时间减去7月的时间
select sysdate,sysdate - interval '7' month from dual
当前时间减去7年的时间
select sysdate,sysdate - interval '7' year from dual
时间间隔乘以一个数字
select sysdate,sysdate - 8 *interval '2' hour from dual
  阅读全文
posted @ 2007-09-17 09:00 rogerfan 阅读(493) | 评论 (0)  编辑

     摘要: Oracle的SQL函数分为单行函数和多行函数。单行函数只对单条记录有效,多行函数对多条记录有效。


单行函数包括,字符、数字、日期、转换和普通函数。


字符函数举例:

全小写 LOWER('SQL Course') sql course
全大写 UPPER('SQL Course') SQL COURSE
首字母大写 INITCAP('SQL Course') Sql Course
拼接 CONCAT('Good', 'String') GoodString
取子串 SUBSTR('String',1,3) Str
求长度 LENGTH('String') 6
  阅读全文
posted @ 2007-09-17 09:00 rogerfan 阅读(365) | 评论 (0)  编辑

     摘要: (1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):
ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表所引用的表.
(2) WHERE子句中的连接顺序.:
ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾.
(3) SELECT子句中避免使用 ‘ * ‘:
ORACLE在解析的过程中, 会将'*' 依次转换成所有的列名, 这个工作是通过查询数据字典完成的, 这意味着将耗费更多的时间
  阅读全文
posted @ 2007-09-17 08:56 rogerfan 阅读(362) | 评论 (0)  编辑

     摘要: 1. 选用适合的ORACLE优化器

ORACLE的优化器共有3种:

a. RULE (基于规则)
b. COST (基于成本)
c. CHOOSE (选择性)

设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS . 你当然也在SQL句级或是会话(session)级对其进行覆盖。

为了使用基于成本的优化器(CBO, Cost-Based Optimizer) , 你必须经常运行analyze 命令,以增加数据库中的对象统计信息(object statistics)的准确性。

如果数据库的优化器模式设置为选择性(CHOOSE),那么实际的优化器模式将和是否运行过analyze命令有关。 如果table已经被analyze过, 优化器模式将自动成为CBO , 反之,数据库将采用RULE形式的优化器。
阅读全文
posted @ 2007-09-17 08:43 rogerfan 阅读(1077) | 评论 (1)  编辑

     摘要: 一、前言

  在企业的信息系统中,报表处理一直占比较重要的作用,本文将介绍一种生成PDF报表的Java组件--iText。通过在服务器端使用Jsp或JavaBean生成PDF报表,客户端采用超级连接显示或下载得到生成的报表,这样就很好的解决了B/S系统的报表处理问题。

  二、iText简介

  iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件。

  iText的安装非常方便,在http://www.lowagie.com/iText/download.html - download 网站上下载iText.jar文件后,只需要在系统的CLASSPATH中加入iText.jar的路径,在程序中就可以使用iText类库了。  阅读全文
posted @ 2007-09-15 13:43 rogerfan 阅读(1788) | 评论 (6)  编辑

     摘要: 对于singleton bean,Spring容器知道bean何时实例化结束,何时销毁,Spring可以管理实例化结束之后,和销毁之前的行为,管理bean的生命周期行为主要未如下两个时机:

Bean全部依赖注入之后
Bean即将销毁之前

(1)依赖关系注入后的行为实现:
有两种方法:A.编写init方法 B.实现InitializingBean接口
  阅读全文
posted @ 2007-09-11 20:47 rogerfan 阅读(670) | 评论 (0)  编辑

     摘要: 目录

1.sql存储过程概述
2.SQL存储过程创建
3.sql存储过程及应用
4.各种存储过程使用指南
5.ASP中存储过程调用的两种方式及比较
6.SQL存储过程在.NET数据库中的应用
7.使用SQL存储过程要特别注意的问题  阅读全文
posted @ 2007-09-10 12:54 rogerfan 阅读(1575) | 评论 (0)  编辑

     摘要: 1.基本结构
CREATE OR REPLACE PROCEDURE 存储过程名字
(
参数1 IN NUMBER,
参数2 IN NUMBER
) IS
变量1 INTEGER :=0;
变量2 DATE;
BEGIN
END 存储过程名字  阅读全文
posted @ 2007-09-10 12:47 rogerfan 阅读(225) | 评论 (0)  编辑

     摘要: 其实基本上有三种方法:

1、使用SQL Server 2005中新增的ROW_NUMBER

几种写法分别如下:



1SELECT TOP 20 * FROM (SELECT
2 ROW_NUMBER() OVER (ORDER BY Namec) AS RowNumber,
3 *
4FROM
5 dbo.mem_member) _myResults
6WHERE
7 RowNumber > 10000  阅读全文
posted @ 2007-09-10 11:10 rogerfan 阅读(224) | 评论 (0)  编辑

     摘要: 一、基础问答
1.下面哪些类可以被继承?
java.lang.Thread (T)
java.lang.Number (T)
java.lang.Double (F)
  java.lang.Math (F)
  java.lang.Void (F)
  java.lang.Class (F)
  java.lang.ClassLoader (T)

2.抽象类和接口的区别
1)接口可以被多重implements,抽象类只能被单一extends
2)接口只有定义,抽象类可以有定义和实现
3)接口的字段定义默认为:public static final, 抽象类字段默认是"friendly"(本包可见)
  阅读全文
posted @ 2007-09-10 11:07 rogerfan 阅读(509) | 评论 (1)  编辑

     摘要: 1. Access method(访问方法):此步骤包括从文件中存储和检索记录。
2. Alias(别名):某属性的另一个名字。在SQL中,可以用别名替换表名。
3. Alternate keys(备用键,ER/关系模型):在实体/表中没有被选为主健的候选键。
4. Anomalies(异常)参见更新异常(update anomalies)
5. Application design(应用程序设计):数据库应用程序生命周期的一个阶段,包括设计用户界面以及使用和处理数据库的应用程序。   阅读全文
posted @ 2007-09-10 09:30 rogerfan 阅读(327) | 评论 (1)  编辑

     摘要: 表A记录如下:
aID aNum
1 a20050111
2 a20050112
3 a20050113
4 a20050114
5 a20050115

表B记录如下:
bID bName
1 2006032401
2 2006032402
3 2006032403
4 2006032404
8 2006032408  阅读全文
posted @ 2007-09-10 09:18 rogerfan 阅读(330) | 评论 (0)  编辑

     摘要: 1. SQL优化的原则是:将一次操作需要读取的BLOCK数减到最低,即在最短的时间达到最大的数据吞吐量。
调整不良SQL通常可以从以下几点切入:
? 检查不良的SQL,考虑其写法是否还有可优化内容
? 检查子查询 考虑SQL子查询是否可以用简单连接的方式进行重新书写
? 检查优化索引的使用
? 考虑数据库的优化器   阅读全文
posted @ 2007-09-10 09:04 rogerfan 阅读(395) | 评论 (0)  编辑

     摘要: 争取到了外资公司的面试机会,一般它们都有英语要求,如果有招聘广告的,可看看他们对英语的要求是什么;如果是有人推荐,比如猎头,问问对方公司对这个职位的英语,究竟需要什么程度,这样方便自己做准备。
  
  一般来说,外企测试英语,有2种基本的类型:
  一、笔试。
  笔试大部分考察的是写作,有英译汉和汉译英,还有作文。汉译英对很多人困难一点,毕竟中文博大精深,要翻译成简单明了的英语,词汇和语法都会遇到困难。
  翻译部分的题目,很多公司都会是自己的企业文化、理念、公司历史等,至少我面试过4家500强都是如此。对这样的题目,如果你事先没有很好地浏览他们的中文和英文网站,一般是不好翻译的。
  建议:去外企面试,务必看看它的中英文网站,尤其英文页面,那些公司介绍和新闻都需要关注一下。  阅读全文
posted @ 2007-09-07 15:27 rogerfan 阅读(1324) | 评论 (0)  编辑

     摘要: (一)Turbine简介
1. 概述
Turbine是Apache Jakarta项目中的一个开源的服务器端Java框架。任何支持Servlet2.2或以上规范的容器都可以运行Turbine应用程序。
当然,Turbine的最大优势是免费,并且向开发人员提供全部的源代码。

表示层 - Velocity or JSP
数据库层(持久层) - Turbine 使用 Torque, 但是也支持其他的持久层工具,如OJB或者 Hibernate。.
HTML 表单数据验证使用 "Intake"-Service.
日志(Logging) - Turbine 使用 Commons Logging并且支持众多的日志输出工具,如Log4J。(注:Scarab使用Log4j,不过有些问题。), jdk14 or simple file logging
基于服务的框架,在Turbine2.4及以后版本中使用和Avalon框架兼容的组件。   阅读全文
posted @ 2007-09-07 15:24 rogerfan 阅读(1687) | 评论 (0)  编辑

     摘要: 概述

  Java 语言从诞生的那天起,就非常注重网络编程方面的应用。随着互联网应用的飞速发展,Java 的基础类库也不断地对网络相关的 API 进行加强和扩展。在 Java SE 6 当中,围绕着 HTTP 协议出现了很多实用的新特性:NTLM 认证提供了一种 Window 平台下较为安全的认证机制;JDK 当中提供了一个轻量级的 HTTP 服务器;提供了较为完善的 HTTP Cookie 管理功能;更为实用的 NetworkInterface;DNS 域名的国际化支持等等。  阅读全文
posted @ 2007-09-06 17:37 rogerfan 阅读(508) | 评论 (2)  编辑

     摘要: Genuitec宣布:MyEclipse 6.0发布了。MyEclipse 6.0的发布极大的增强了Eclipse 3.3/Europa集成开发环境的功能,增加了Java 6支持的组件和加快了AJAX的开发率,革命性的提高了开发者的开发效率。

  另外,MyEclipse 6.0现在已经和Spring、JPA整合。这项整合,允许用户们创建实体管理器和事务beans, 生成实体和DOA。这些功能很大程度上多亏有了MyEclipse。  阅读全文
posted @ 2007-09-06 17:34 rogerfan 阅读(584) | 评论 (0)  编辑

     摘要: Hibernate一共包括了23个jar包,令人眼花缭乱。本文将详细讲解Hibernate每个jar包的作用,便于你在应用中根据自己的需要进行取舍。

下载Hibernate,例如2.0.3稳定版本,解压缩,可以看到一个hibernate2.jar和lib目录下有22个jar包:

hibernate2.jar:

Hibernate的库,没有什么可说的,必须使用的jar包   阅读全文
posted @ 2007-09-06 16:47 rogerfan 阅读(269) | 评论 (0)  编辑

     摘要:   微软最倒霉的十个瞬间TOP10:

  10、发布Microsoft Bob。微软首次舱室开发互动性更强、更自然的用户界面,被定为Windows 3.1的下一代,由盖茨的老婆美琳达负责,结果惨淡收场。

  9、Windows XP发布。恰逢2001年9-11事件后一个月,让微软很难尽情狂欢。

  8、2005年11月推出Windows Live、淡化MSN。微软的在线服务部门之后一直不顺,挑战Google的梦想一直没有实现的迹象,反而让后者更加强盛。  阅读全文
posted @ 2007-09-06 16:45 rogerfan 阅读(320) | 评论 (0)  编辑

     摘要:   上周五恰逢阳历13号,是个西方传统上倒霉的日子。接下来,我们把目光对准微软,看看这个软件帝国最走运、以及最倒霉的十个瞬间。

  微软最走运的十个瞬间TOP10:

  10、AOL收购时代华纳。最初看来这起并购对微软并不是好事儿,但随后合体公司的混乱肯定让微软乐开了怀。

  9、2003年2月收购虚拟机技术公司Connectix。接下来的四年里,微软在飞速发展的企业虚拟化市场站稳了脚跟。  阅读全文
posted @ 2007-09-06 16:44 rogerfan 阅读(286) | 评论 (0)  编辑

     摘要: 每一项都是js中的小技巧,但十分的实用!
1.document.write(""); 输出语句
2.JS中的注释为//
3.传统的HTML文档顺序是:document->html->(head,body)
4.一个浏览器窗口中的DOM顺序是:window->(navigator,screen,history,location,document)
5.得到表单中元素的名称和值:document.getElementById("表单中元素的ID号").name(或value)
6.一个小写转大写的JS: document.getElementById("output").value = document.getElementById("i
nput").value.toUpperCase();
7.JS中的值类型:String,Number,Boolean,Null,Object,Function
8.JS中的字符型转换成数值型:parseInt(),parseFloat()   阅读全文
posted @ 2007-09-05 17:35 rogerfan 阅读(5586) | 评论 (1)  编辑

     摘要: 欢迎加入 ╃ 90后的我们 ╃ -- 火星文社区

火星文
据网络的定义,火星文是火星文明的通用语,但对一般正常人类只是无法理解的电波。 其实火星文是台湾地区的人以同音字、注音符号和拼成样子的字母所写的网络文字,为一般人难以明白,故称火星文。

火星文-火星文拼音输入法1.0下载  阅读全文
posted @ 2007-09-05 17:27 rogerfan 阅读(966) | 评论 (1)  编辑

     摘要: Ajax不是万能的,在适合的场合使用Ajax,才能充分发挥它的长处,改善系统性能和用户体验,绝不可以为了技术而滥用。Ajax的特点在于异步交互,动态更新web页面,因此它的适用范围是交互较多,频繁读取数据的web应用。现在来看几个Ajax的应用实例,读者可以了解如何使用Ajax技术改进现有的web应用系统。  阅读全文
posted @ 2007-09-05 17:19 rogerfan 阅读(1251) | 评论 (2)  编辑

     摘要: 前端时间在论坛里回了fins的一个帖子(http://daoger.javaeye.com/blog/40310)后,有几个网友想看我的例子代码,由于搞自己的一个小系统比较忙,在这里简单说一下dhtmlXGrid的使用心得!
我现在使用的版本是1.2(免费版),我的实现也大部分基于这个免费版,有哪位老兄能提供一份专业版的话更好了!
1.2免费版中的一些功能其实是1.1专业版中的!废话少说,切入正题!  阅读全文
posted @ 2007-09-03 13:51 rogerfan 阅读(6968) | 评论 (3)  编辑