|
常用链接
留言簿(2)
随笔档案
文章档案
搜索
最新评论
阅读排行榜
评论排行榜
Powered by: 博客园
模板提供:沪江博客
|
|
|
|
|
发新文章 |
|
|
2009年2月16日
MyEclipse配置Weblogic
启动Eclipse,选择window->Preferences->MyEclipse->Application Servers->Weblogic 8
启用WebLogic服务器,配置如下:
(1) BEA home directory:C:\BEA。假定WebLogic安装在C:\BEA文件夹中。
(2)WebLogic installation directory:C:\BEA\weblogic81。
(3)Admin username:用户名。
(4)Admin password:密码。
(5)Execution domain root:安装后,启动服务的路径。
(6)Execution domain name:mydomain。
(7)Execution server name:myserver。
(8)Hostname:PortNumber:localhost:7001。
(9)Security policy file:D:\BEA\weblogic81\server\lib\weblogic.policy。
(10)JAAS login configuration file:省略。
以上配置根据安装情况不同而不同。
接着展开WebLogic 8结点,选JDK,在右边的WLS JDK name出选择WebLogic 8默认的JDK。
之前选择单独安装JRE,单击Add按钮,弹出WebLogic > Add JVM对话框,在JRE名称处随便输入一个名字,如 jre1.4.2,然后在JRE住目录处选择WebLogic安装文件夹中的JDK文件夹,如 C:\BEA\jdk1.4.2_05, 程序会自动填充Javadoc URL文本框和JRE系统库列表框。
之后还要在下面的Optional Java VM arguments,如-ms64m -mx64m -Djava.library.path="C:/BEA/weblogic81/server/bin" -Dweblogic.management.discover=false -Dweblogic.ProductionModeEnabled=false
最后点击Paths,在右边的Prepend to classpath列表框中,通过Add JAR/ZIP按钮,加入C:\BEA\weblogic81\server\lib\weblogic.jar、C:\BEA\weblogic81\server\lib\webservices.jar。如果用到数据库,还需把数据库的驱动类库加进来,这里我们用WebLogic自带的SQL Server数据库驱动库C:\BEA\weblogic81\server\lib\mssqlserver4v65.jar。
2008年7月12日
CRM客户关系管理 数据仓库以面向“客户”为主题进行数据筛选、存储
OLAP负责分析客户的基本信息、储蓄帐户信息、历史余额信息、银行交易日志等,应计动态分析报表、直方图、折线图、饼图等形式展现给管理者
2008年5月25日
今天下午在UNIX下编译WINDOWS下开发的程序,用vi打开后发现有很多^M符号,感觉很不爽,
到网上一查,解决办法还真不少,找了一个一试,不成功,再试,还不行,可是网上的答案都差不多一样的,都是%s/^M$//g"或者“%s/^M//g”,狂郁闷,后来发现,原来“^M”大有文章,他是特殊字符
输入有诀窍,应该是“shift+v+m”来搞定。哈哈,又学一招,搞WINDOWS开发的,来搞UNIX开发还真的多学习。
“ : %s/^M$//g ” ---%指匹配整个文件
s是置换的意思
^M要用shift+v+m 组合键敲入
$表示匹配行尾的内容
g表示每行中匹配到的内容都要置换
理解了含义就可以搞定啦
可以把文件中的a 都替换成A
:%s/a/A/g
2008年4月23日
1)标识部:提供程序的一般性文档说明。
PROGRAM-ID段包含程序名,是每个程序所必须的。
2)数据部:数据部提供程序变量的存放位置,对不同数据类型分成不同的节:
文件数据(File Section)、静态数据(Working-Storage Session)、参数(Linkage Section)
呵呵,点滴体会
2008年3月19日
以计算系统的再造,应业务需求的云计算、支持大量社群和数据交流的平台、
实时和全方位信息处理与分析、随时随地执行业务等尖端科技引领了未来信息技术的发展趋势,成为经济全球化发展的助推器
云计算:即把存储于个人电脑、移动电话和其他设备上的大量信息和处理器资源集中在一起,协同工作。
IBM正在封装的云计算软件名为Hsdoop,运行在Linux操作系统上。Hadoop基于名为Nutch的开源搜索项目以及Google的MapReduce(映射化简)软件
随时随地上网处理数据 “云计算”实现信息通存通取
Web2.0 :搜索,社区化网络,网络媒体(音乐,视频等),内容聚合和聚集(RSS),
mashups(一种交互式Web 应用程序),
2008年2月19日
“java.lang.NoClassDefFoundError” 关于classpath设置问题
需要在classpath中加入“.”
或 在运行时加入参数-cp -classpath
如:java -classpath . Test
java.exe 接受的参数是类名,而不是文件名
java如何知道在哪加载类?
CLASSPATH环境变量的作用,java搜索CLASSPATH 变量以及 -cp -classpath
在 Windows 2000 / XP / .Net Server 中, 进入"系统属性--高级--环境变量",
新建环境变量名为CLASSPATH, 值为 ".;C:\JDK1.5\lib\dt.jar;C:\JDK1.5\jre\lib\rt.jar"
其中, "." 代表当前目录, rt.jar是最基本的Java运行库, dt.jar是辅助开发工具库
为了使用方便, 还可以在PATH变量中加入 C:\JDK1.5\bin,
这样运行javac.exe 和 java.exe 就不用加上完整的路径名了.
这里C:\JDK1.5是我的JDK路径, 请更改为你自己对应的路径. 而且, 一般我们会添加一个JAVA_HOME变量, 设置为JDK路径, 因为 Tomcat, Ant 等不少 Apache 项目都会要求此变量.
在安装了ant等Java工具, 库等后, 一般按照说明在CLASSPATH中加入对应的运行库以方便运行
最后还有一个小问题, 关于含有包的类的调用, 应在包的顶目录调用java, 而不是具体类的目录.
比如 C:\test\com\softboys\HelloWorld.class 这个类, 应该在C:\test下调用 "java com.softboys.HelloWorld" 而 不是在 C:\test\com\softboys\ 调用"java HelloWorld" .
2008年1月17日
例五:把导出信息保存在消息文件中。
export to d:\awards.ixf of ixf messages d:\msgs.txt select * from staff where dept = 20
这个例子把staff表中dept=20的数据导出到d:\awards.ixf文件中,所有的导出信息都保存在d:\msgs.txt文件中(无论是成功、警告还是失败信息),这样,管理员可以通过观察信息文件找到问题所在。
例六:给导出数据列重命名。
export to d:\awards.ixf of ixf method n(c1,c2,c3,c4,c5,c6,c7) messages d:\msgs.txt select * from staff where dept=20
在默认情况下,导出的每一列数据以表中对应的字段名自动命名,我们可以通过method n子句给每一列重新命名,需要注意的是,这个子句只在ixf和wsf格式文件中有效,在文本文件中不能使用。
数据的导入
例七:把C盘根目录下的org.txt文件中的数据导入到org表中
import from c:org.txt of del insert into org
导入命令和导出命令的格式基本上处于对应的关系,import对应export,from对应to,文件名和文件格式代表的含义相同,但是导入命令支持ASC格式的文件,而导出命令不支持。另外,在导出命令的最后是一个SQL语句,用于选择要导出的数据,而导入命令最后不是SQL语句,而是插入数据的方式以及目标表名称。
例八:从ASC格式文件中导入数据
import from c:org2.txt of asc method l(1 5,6 19,20 25,26 37,38 50) insert into org
其中 method l 子句用于指定文本文件中每一个字段的起始位置和终止位置,每个起始位置和终止位置间用空格分开,字段之间用逗号分开。 除了l方法之外,还有n方法和p方法,下面会叙述。 www.3s8.cn
例九:利用n方法导入数据,并且创建新表。
首先导出一个用例文件:
export to d:org.ixf of ixf method n(a,b,c,d,e) select * from org
这样org.ixf文件中有五列数据,对应的列名分别为a、b、c、d、e
然后在从该文件中导入数据到一个新表中
import from d:org.ixf of ixf method n(d,e,b) replace_create into orgtest
该命令从文件中选取三列导入到表中,顺序可以不按照文件中原有的列的顺序。replace_create方式的叙述见下。
插入方式有:
INSERT 方式——在表中现有数据的基础之上追加新的数据。
INSERT_UPDATE 方式——这种方式只能用于有主键的表,如果插入的数据与原有数据主键不冲突,则直接插入,如果主键冲突,则用新的数据代替原有数据。
REPLACE 方式——先把表中现有的数据都删除,然后向空表中插入数据。
REPLACE_CREATE 方式——表示如果表存在,则先把表中的数据都删除,然后向空表中插入数据;如果表不存在,则先根据文件中的字段创建表,然后再向表中插入数据。这种方式只能把IXF格式的文件中的数据插入到表中。 www.3s8.cn
例十:利用p方法导入数据
import from d:org.ixf of ixf method p(4,5,2) replace into orgtest
该例子执行的效果和例九类似,只是把n方法换成了p方法,p方法后面的列表中指明列的序号即可,不需要指明列名。另外,此例中使用了replace方式插入数据,这会把表中现有的数据都删除,然后向空表中插入数据。
例十一:关于空值的导入
对于ixf格式的文件,导入空值非常方便,因为里面已经记录了空值的信息。但是,对于ASC格式文件就有一定的难度了,因为DB2会直接插入空格,而不是空值。为此,DB2提供了一个子句进行控制:NULL INDICATORS
import from c:org2.txt of asc MODIFIED BY nullindchar=# method l(1 5,6 19,20 25,26 37,38 50) NULL INDICATORS(0,0,0,0,38 ) replace into org
在这个例子中,NULL INDICATORS子句后面是一个列表,表示前面四个字段都不会存在空值,而第五个字段从38列开始,可能存在空值,而 MODIFIED BY nullindchar=# 子句表示在文件中第五个字段如果遇到 # 号,则表示为空值。
装入(Load)
装入命令格式与导入类似,命令关键字是Load,但是后面的参数比导入命令多的多,详细用法可以自行参考DB2文档。
装入与导入类似,都是将输入文件中的数据移入到目标表中,二者的不同点将在实例中逐步解释。
在装入之前,目标表必须已经存在。装入的性能比导入高,原因在后面结合实例详细解释。装入操作不记录到日志中,所以不能使用日志文件进行前滚操作。
装入分为4个阶段:
1. 装入阶段
在这个阶段发生两件事:数据存储在表中,收集索引键并排序。在装入时,DBA可以指定多长时间生成一致点。它是装入工具的检查点。如果装入在执行期间被打断,它可以从最后一个一致点处开始继续重新执行。
2. 构建阶段
在构建阶段,基于在装入阶段收集的索引键信息创建索引。如果在构建阶段发生错误,装入工具就重启,它将从构建阶段开始处重新开始构建。
3. 在删除阶段,所有违反唯一或主键约束的行都被删除并拷贝到一个异常表(如果在语句中指定相应选项)中。当输入行被拒绝,消息文件中就生成消息。
DB2中所谓的数据移动,包括:
1. 数据的导入(Import)
2. 数据的导出(Export)
3. 数据的装入(Load)。
导入和装入都是利用DB2的相关命令把某种格式的文件中的数据保存到数据库中的表中;
导出是指把DB2数据库的表中的数据保存到某种格式的文件当中去。
首先介绍一下文件的格式,用于DB2数据移动的文件格式有四种:
1. ASC——非定界ASCII文件,是一个ASCII字符流。数据流中的行由行定界符分隔,而行中的每一列则通过起始和结束位置来定义。例如:
10 Head Office 160 Corporate New York
15 New England 50 Eastern Boston
20 Mid Atlantic 10 Eastern Washington
38 South Atlantic 30 Eastern Atlanta
42 Great Lakes 100 Midwest Chicago
2. DEL——定界ASCII文件,也是一个ASCII字符流。数据流中的行由行定界符分隔,行中的列值由列定界符分隔。文件类型修饰符可用于修改这些定界符的默认值。例如:
10,"Head Office",160,"Corporate","New York"
15,"New England",50,"Eastern","Boston"
20,"Mid Atlantic",10,"Eastern","Washington"
38,"South Atlantic",30,"Eastern","Atlanta"
42,"Great Lakes",100,"Midwest","Chicago"
51,"Plains",140,"Midwest","Dallas"
66,"Pacific",270,"Western","San Francisco"
84,"Mountain",290,"Western","Denver"
3. WSF——(work sheet format)为工作表格式,用于与Lotus系列的软件进行数据交换。
4. PC/IXF——是集成交换格式(Integration Exchange Format,IXF)数据交换体系结构的改编版本,由一些列可变长度的记录构成,包括头记录、表记录、表中每列的列描述符记录以及表中每行的一条或多条数据记录。PC/IXF 文件记录由包含了字符数据的字段组成。
数据的导出(Export)
例一:把Org表中的所有数据导出到文件C:\ORG.TXT中。
Export to c:\org.txt of del select * from org
其中,of del表示导出到的文件的类型,在本例中导出到一个非定界文本文件中;后面的select * from org是一个SQL语句,该语句查询出来的结果就是要导出的数据。
例二:改变del格式文件的格式控制符
export to c:\staff.txt of del modified by coldel$ chardel'' decplusblank select * from staff
在该例中,modified子句用于控制各种符号,coldel表示字段之间的间隔符,默认情况为逗号,现在改为$号;chardel表示字符串字段用什么符号引用,默认情况下为一对双引号括起来,现在改为用一对单引号括起来;decplusblank表示对于十进制数据类型,用空格代替最前面的加号,因为默认情况下会在十进制数据前面加上正负号的。 www.3s8.cn
例三:以ASC格式将数据导出到文件
Export命令是不支持ASC格式文件的,所以如果想导出ASC这样规整的格式,需要程序员自己进行转换操作,思路是将各种数据类型都转换成定长字符串,然后把各个要导出的字段合并成为一个字段。
例如创建如下结构的表n:
create table n(a int,b date,c time,d varchar(5),e char(4),f double)
然后插入两条数据:
insert into n values(15,'2004-10-21','23:12:23','abc','hh',35.2)
insert into n values(5,'2004-1-21','3:12:23','bc','hhh',35.672)
要想把这两条数据以规整的格式导出到文件中,进行如下操作:
export to c:\test.txt of del select char(a) || char(b) || char(c) || char(d,5) || e || char(f) as tmp from n
这样导出的结果与ASC格式的文件非常类似,只是每一行的前后多出了一对双引号,对此我们可以使用文本工具(如写字板、记事本等)把双引号删除掉,也可以置之不理,在以后导入的时候直接控制格式(忽略双引号)
在文件中的格式为:
"15 2004-10-2123.12.23abc hh 3.52E1 "
"5 2004-01-2103.12.23bc hhh 3.5672E1 "
例四:大数据的导出
export to d:\myfile.del of del lobs to d:\lob\ lobfile lobs modified by lobsinfile select * from emp_photo
该命令把emp_photo表的数据导出到d:\myfile.del文件中,其结果为:
<pre>
"000130","bitmap","lobs.001.0.43690/"
"000130","gif","lobs.001.43690.29540/"
"000130","xwd","lobs.001.73230.45800/"
"000140","bitmap","lobs.001.119030.71798/"
"000140","gif","lobs.001.190828.29143/"
"000140","xwd","lobs.001.219971.73908/"
"000150","bitmap","lobs.001.293879.73438/"
"000150","gif","lobs.001.367317.39795/"
package mypackage;
import java.sql.*;
import java.util.*;
import java.io.*;
class test
{
public static void main(String args[])
throws SQLException, Exception
{
try
{
Class.forName("COM.ibm.db2.jdbc.app.DB2Driver").newInstance();
String url="jdbc:db2:EBUSINES"; //EBUSINES为数据库名
String user="db2admin";
String password="mydb2";
Connection conn= DriverManager.getConnection(url,user,password);
System.out.print("Done!OK!!!\n");
}catch(SQLException sqle)
{
System.out.print(sqle);
}
}
}
2008年1月16日
#define EXTERN
#include "btpcomm.h"
#include "btpcmmcr.h"
#include "sqlenv.h"
main()
{
EXEC SQL INCLUDE SQLCA;
EXEC SQL BEGIN DECLARE SECTION ;
char txnbrh[12+1];
char txndt[10+1];
long txncnt;
EXEC SQL END DECLARE SECTION;
EXEC SQL update gcdgbnk set devlogrrn=0 where 1=1;
if ((sqlca.sqlcode != 0 ) && (sqlca.sqlcode != 100))
{
sprintf( cGlbWk, "update gcdgbnk err %d", sqlca.sqlcode );
BtpApDisp( cPrgID, cGlbWk );
BtpBatReturn(BATPROCDRUNERR, "数据库操作失败");
return(-1);
}
EXEC SQL INSERT INTO nmgtact SELECT brhid, :txndt, count(*), sum(txnamt)
FROM gctact
WHERE txndate = :txndt
AND mchtype = '6050'
AND revcd = '0'
GROUP BY brhid;
if ((sqlca.sqlcode != 0 ) && (sqlca.sqlcode != 100))
{
sprintf( cGlbWk, "insert into nmgtact err %d", sqlca.sqlcode );
BtpApDisp( cPrgID, cGlbWk );
BtpBatReturn(BATPROCDRUNERR, "数据库操作失败");
return(-1);
}
BtpBatReturn(BATPROCDRUNOK, "");
return;
}
静态嵌入SQL语句的应用程序:
1)include语句定义并描叙了SQLCA的结构。SQLCA用于应用程序和数据库之间的通讯,其中SQLCODE返回SQL语句执行后的结果状态。
2)在BEGIN DECLARE SECTION和END DECLARE SECTION之间定义了宿主变量。宿主变量可被SQL语句引用,也可以被C语言语句引用。它用于将程序中的数据通过SQL语句传给数据库管理器,或从数据库管理器接收查询的结果。在SQL语句中,主变量前均有“:”标志以示区别
3)在gctact中选择brhid,插入nmgtact表;
|
|