ImageVerifierCode 换一换
格式:DOCX , 页数:33 ,大小:27.91KB ,
资源ID:6475323      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-6475323.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(泛微协同商务系统Ecology系统底层包开发指南Word格式文档下载.docx)为本站会员(b****4)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

泛微协同商务系统Ecology系统底层包开发指南Word格式文档下载.docx

1、*/ public void writeLog(Object obj) 2003年8月12日的日志。当天的日志为ecology.log。每一条日志的记录格式为 :YYYY.MM.DD-HH:MM:SS 记录日志的类名 日志信息比如:20032004-01-10 and A.reportdate 0 and A.inputstatus9 and A.modtype=日志的记录有两种模式,第一种为调试模式,第二种为在线模式。在第一种模式下,所有的java对象都会记录到日志文件中,包括调试信息,在第二种模式下,只有为Exception (异常)的对象才会记录到日志文件中。模式的设置在/ecology

2、/WEB-INF/ log4jinit.properties 属性文件中的log4j.rootLogger 属性来指定,如下:log4j.rootLogger = INFO,A2#if you want to open the trace from open source,just add # ahead of line#dont modify the file property上面的日志表明将所有的信息答应到文件日志文件中 ,其中日志的模式为:#FATAL 0 #ERROR 3 #WARN 4 只有WARN,ERROR,FATAL输出#INFO 6 所有的log都输出#DEBUG 7 记录日

3、志的例子如下:private void setResourceInfo() throws Exceptiontry业务处理过程.String debugInfo = This is test ; / 在调试模式下将会记入日志文件 writeLog(debug info is + debugInfo) ; catch(Exception e) / 在任何模式下出现异常,都将会记入日志文件 writeLog(e) ; throw e ;记录的日志文件形式为:2007-10-15 16:51:50,125 DEBUG weaver.hrm.resource. ResourceComInfo - de

4、bug info is This is test如果有异常,将会记录为:50,125 ERROR weaver.hrm.resource. ResourceComInfo - at weaver.hrm.resource. ResourceComInfo (ResourceComInfo.java:59)从上面的日志信息,可以看到ResourceComInfo类的59行代码运行的时候出现错误,这个错误是执行数据库操作的脚本错误,具体的错误信息是:形式参数 id_1 定义为 OUTPUT,但实际参数却未声明为 OUTPUT。说明调用数据库脚本的时候参数的数量有出入。 开发过程中请将日志级别设置为

5、INFO,通过日志可检查程序在哪里出错了。2.3怎样获取属性文件的值getPropValue方法获取属性文件的值。注意这里是使用,而不是调用,因为这个方法是这两个被继承类中的方法。注意getPropValue方法的使用:* 从配置文件中获取某个属性的值* param fname 属性文件名称* param key 值* return String 属性值 public String getPropValue(String fname , String key)getPropValue 方法指定了从某一个属性文件fname 中获取键值key 的值。这里的属性文件必须存放在系统运行目录下的WEB-

6、INF/prop 目录下,文件名称为参数fname指定的文件名,不包括属性文件的后缀名,属性文件的后缀名必须为 .properties。系统的运行目录为 d:ecology,那么属性文件必须放在d:ecologyWEB-INFprop 目录下,取名为 thefilename.properties ,其中thefilename是任意的。在属性文件中某一个键值的值用等号来赋值,等号后面的值必须放在一行,如果一行不够写(或者为了查看的方便),可以用 来链接多行。否则其它行的值不能被键值取得。等号左右都可以有空格,对键值和键值的值没有影响。比如 :thekeyname = thevalue将键值的值放

7、到多行:thekeyname = thevalue1 thevalue2 thevalue3 thevalue4 这时候thekeyname 的值为thevalue1thevalue2thevalue3 ,thevalue4 取不到,因为thevalue3后面没有 在程序中要取得上述属性文件中键值thekeyname的值,使用方法:getPropValue(“thefilename” , “thekeyname”) ;获取属性文件的值的例子如下:String keyValue = getPropValue(“thefilename” , “thekeyname”) ;/ 将键值thekeyna

8、me的值keyValue记入日志文件 writeLog(keyvalue is + keyValue) ;系统的主属性文件 weaver.properties 的文件名“weaver” 作为系统常量放在weaver.general.GCONST 类中,可以使用getConfigFile() 方法来返回 “weaver ”,在编程的过程中,如果需要用到weaver.properties属性文件中的键值,请用GCONST. getConfigFile() 来获取,当主属性文件名称因为需要改变得时候,不必改变所有用到这个属性文件的类,只需要改变GCONST类中常量的值2.4怎样获取系统的运行目录we

9、aver.general.GCONST 类提供了一个静态方法getRootPath() ,返回系统的运行目录,比如系统的运行目录为d 盘的ecology目录,将返回d:ecology获取系统的运行目录的例子如下:public class TestBean extends BaseBean import weaver.general.GCONST ;public void getSysRunPath()String sysRunPath = GCONST. GetRootPath() ;/ 将系统的运行目录sysRunPath的值记入日志文件sysRunPath is + sysRunPath)

10、 ;2.5怎样访问和运行数据库脚本Ecology系统的链接池管理请参见 weaver.conn.ConnectionPool , weaver.conn.DBConnectionPool ,weaver.conn.ConnCheckerTimer 类的API 文档,weaver.conn.ConnectionPool 用于管理ecology系统中的所有数据库链接池(ecology系统可以同时链接多个数据库,每一个数据库均有一个对应的数据库链接池,由weaver.conn.DBConnectionPool负责管理,而weaver.conn.ConnectionPool则是这些链接池的大管家,负责

11、所有链接池的协调和统一对外接口),weaver.conn.DBConnectionPool用于建立和管理对某一个数据库的链接池,weaver.conn.ConnCheckerTimer用于监控各个链接池的状况,定期对数据库链接池中不符合要求的链接进行清理,并监视是否需要在某一链接池中建立新的链接。RecordSet 执行数据库操作有两种形式,一种为调用存储过程,另一种为直接执行SQL语句。与ConnStatement不同 ,RecordSet 执行SQL语句不分查询和修改,都在一条语句中执行。RecordSet执行脚本的方式如下:1、使用默认的链接池执行SQL语句:RecordSet rs =

12、 new RecordSet() ;rs.executeSql( select * from TB_Example ) ;while( rs.next() ) String thename = rs.getString(name其它处理代码.2、使用指定的链接池ecologytest执行SQL语句 update TB_Example set name = the new value , ecologytest ) ; 3、使用指定的链接池ecologytest执行存储过程 PD_Example_UpdateById存储过程PD_Example_UpdateById 如下:CREATE PROC

13、EDURE PD_Example_UpdateById (name varchar(100), id int, flag integer output, msg varchar(80) output) AS update TB_Example set name = name where id = idGOString newname = . ;String id = . ;String procpara = newname + Util.getSeparator() + id ;rs.executeProc( PD_Example_UpdateById , procpara , 4、在一个客户

14、程序多个执行之间,查询结果可以保留到下一次查询 the new value /得到修改前查询的值其它处理代码. /得到修改后查询的值访问和运行数据库脚本的例子:String sqlStr = “select * from Hrmresorce” ;RecordSet rt = new RecordSet() ;rt.executeSql(sqlStr) ;while(rt.next() String id = Util.null2String(rt.getString(id); String loginid = Util.null2String(rt.getString(loginid Str

15、ing lastname = Util.null2String(rt.getString(lastname / 将数据库的值记入日志文件id is + id) ; writeLog(loginid is + loginid) ;lastname is + lastname) ;其它关于系统数据库信息的管理a)、weaver.conn.ConnectionPool 类的管理和设置:所有的数据库链接池的集合,用链接池名称区别每一个链接池.支持对一个或多个由属性文件定义的数据库连接池的访问.客户程序可以调用getInstance()方法访问本类的唯一实例。对于一个链接池集合来说,可以有多个链接池,分

16、别链接不同的数据库。应用程序指定链接池的名称来调用不同的链接池。如果应用程序没有指定链接池的名称,将使用默认的链接池。默认链接池的指定有两种方式:1、在Application Server设置的初始参数serverName的值 ,以Resin 为例: /servlet2、如果Application Server没有相应设置,则系统使用属性文件(weaver.properties)中设置的默认链接池名称:DefaultPoolName = ecology对于所有的链接池,系统需要加载相应的 JDBC Driver来建立与相应数据库的链接。这些 Driver 在属性文件(weaver.proper

17、ties)中指定,多个Driver中间用空格隔开:对于每一个链接池需要用到的参数在属性文件(weaver.properties)中指定,属性文件中参数的名称以链接池的名称开头,中间加入小数点,比如链接池 ecology 的参数指定为 :10.1.1.205:1433;DatabaseName=ecology /db urlecology.user = sa /db user name ecology.password = 123456 /db user password ecology.charset = ISO_1 /db encode ecology.maxconn = 10 /max c

18、onn in conn poolecology.minconn = 2 /min conn in conn poolecology.maxusecount = 30 /the max use times of a conn ecology.maxidletime = 30 /the max unuse time of a conn (分)ecology.maxalivetime = 2 /一个链接被调用后的最大未归回时间 (分)ecology.checktime = 500 /检查的频率 (秒)b)、weaver.conn. DBConnectionPool类的管理和设置:数据库链接池,所有创

19、建的链接存放在链接池中,在客户端链接数据库时从链接池中取出链接,客户端在完成数据库操作后将链接返回链接池。链接池创建链接需要用到的参数在属性文件(weaver.properties)中指定,属性文件中参数的名称以链接池的名称开头,中间加入小数点,比如链接池 ecology 的参数指定为 :DatabaseName=AIS2002 /db url2.6如何上传一个文件B/S 架构的文件上传采用的是multipart/form-data* 进行上传一个文件的操作* param uploadname 需要上传的文件字段名称* return String 返回保存文件信息的imagefileidpub

20、lic String uploadFiles(String uploadname)* param uploadnames需要上传的多个文件字段名称* return String 返回保存多个文件信息的imagefileid数组public String uploadFiles(String uploadnames)这里,需要注意两点,一个是传给uploadFiles 方法的参数, 是上传文件字段的名称,而不是文件的名称(这个时候你并不知道文件的名称)。比如在jsp 或者html页面中文件浏览的字段代码为:input type=file size=70 name=accessory1那么这里的文

21、件字段的名称为。 第二点是这个方法返回的信息是保存在数据库表 ImageFile 中关于这个文件信息的键值imagefileid ,这个表的结构如下:Column(s) of ImageFile TableNameDatatypeNull OptionCommentimagefileidintNOT NULL文件idimagefilenamevarchar(200)NULL文件名称imagefiletypevarchar(50)文件MIME类型filerealpathvarchar(255)文件存放目录imagefileused文件使用次数iszipchar(1)是否压缩0:否1:是isenc

22、rypt是否加密imagefileimage文件(存在在数据库中的文件内容,现已不使用)从表结构可以看出,我们得到了某一个文件信息的imagefileid上传文件的例子:HTMLHEADTITLE文件上传/HEADBODYP这是一个文件上传的例子FORM id=weaver name=weaver action= method=post enctype=multipart/form-data!注意,这里需要用enctype= 表明使用multipart/form-data 协议 -input type=text size=70 name=filedescfileaccessory2submit

23、提交/FORM/BODY/HTML将上面这段代码保存为一个html 文件FileUploadTest.htm,放在ecology运行目录下的/test/目录下。在这个页面中,有一个输入框和两个文件框可以输入信息。注意,在环境的配置中,需要告诉web服务器将 /weaver/ 的请求转给应用服务器作为servlet处理,关于配置的信息,请参考Apache 和Resin的配置文档。package weaver.test; * Title: 多文件上传处理类 * Description: 多文件上传测试 * Copyright: Copyright (c) 2001 * Company: weaver * author liuyu * version 1.0 */import weaver.file. FileUpload;public class MutiFileUpload extends DynamicServlet public void doProcess(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException FileUpload fu = new FileUpload

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2