DB2 ºÍ Delphi 7 — SOAP ºÍÊý¾Ý¿â Web ·þÎñ
¹¹½¨ Windows SOAP ·þÎñÆ÷Ó¦ÓóÌÐò
Ê×ÏÈÔÚ Windows ÉϹ¹½¨·þÎñÆ÷£¬È»ºóÔÚ Linux ÉϹ¹½¨¿Í»§»ú¡££¨Èç¹ûÐèÒª£¬¿ÉÒÔʹÓÃÆäËü·½·¨ — »òÕß½«ËüÃÇÈ«²¿¹¹½¨ÔÚ Windows »ò Linux ÉÏ¡££©¶ÔÓÚ Windows SOAP ·þÎñÆ÷£¬Æô¶¯ Delphi 7 Enterprise£¬Ö´ÐÐ File -> New -> Other£¬×ªÖÁ¶ÔÏó×ÊÔ´¿â£¨Object Repository£©µÄ Web ServicesÑ¡Ï¡£
ͼ 1. Delphi 7 ¶ÔÏó×ÊÔ´¿â
Òª½« DataSnap? Ó¦ÓóÌÐò¹¹½¨³É¿çƽ̨µÄ Web ·þÎñ£¬Ë«»÷ SOAP Server Application ͼ±ê£¬Õ⽫Æô¶¯ÏàÓ¦µÄÏòµ¼¡£
ͼ 2. ´´½¨Ð嵀 SOAP ·þÎñÆ÷Ó¦ÓóÌÐò
ͨ¹ýʹÓà Delphi 7£¨ÔÚ Windows ÉÏ£©£¬ÏÖÔÚ¿ÉÒÔ´Ó ISAPI/NSAPI DLL¡¢Apache 1.x »ò 2.x DLL¡¢CGI ¿ÉÖ´ÐÐÎļþ»ò Web App Debugger ¿ÉÖ´ÐÐÎļþÖ®ÖнøÐÐÑ¡Ôñ¡£¿ÉÒÔʹÓúóÕß´Ó Delphi IDE Öе÷ÊÔÓ¦ÓóÌÐò£¨µ«²»Äܲ¿ÊðËü — ±ØÐ뽫Ëü¸ü¸Ä³ÉÆäËüÄ¿±êÖ®Ò»À´²¿Êð Web ·þÎñÆ÷Ó¦ÓóÌÐò£©¡£Í¨¹ýʹÓà Kylix 3£¨ÔÚ Linux ÉÏ£©£¬¿ÉÒÔÑ¡Ôñ Apache ¶¯Ì¬¹²ÏíÄ¿±ê£¨Apache Dynamic Shared Object£¬DSO£©Îļþ¡¢CGI ¿ÉÖ´ÐÐÎļþ»ò Web App Debugger ¿ÉÖ´ÐÐÎļþ¡£¶ÔÓÚ±¾Àý£¬Ñ¡Ôñ CGI ¿ÉÖ´ÐÐÎļþ£¬µ«ÔÚʵ¼ÊʹÓÃʱ£¬¿ÉÄÜҪѡÔñÒ»¸ö¸ü¸ßЧµÄ Apache »ò ISAPI/NSAPI DLL¡£Ñ¡Ôñºó£¬µ¥»÷ OK¡£ ´ËʱΪÄúÉú³ÉÁËÒ»¸öÐ嵀 SOAP ·þÎñÆ÷Ó¦ÓóÌÐòºÍ SOAP Web Ä£¿é¡£µ«ÔÚÄú¿ÉÒÔ¶ÔËü½øÐиü×ÐϸµÄÑо¿Ö®Ç°£¬»á¿´µ½Ò»¸öµ¯³ö¶Ô»°¿ò£¬Ñ¯ÎÊÄúÊÇ·ñÒªÁ¢¿ÌΪ SOAP Ä£¿é´´½¨Ò»¸ö½Ó¿Ú¡£
ͼ 3. ÒòΪÄúÕýÔÚ¹¹½¨Ò»¸öÌØÊâµÄ DataSnap SOAP ·þÎñÆ÷£¬ËùÒÔµ¥»÷ No
µ¥»÷ No£¬ÒòΪÄú²»ÏëÁ¢¿Ì¹¹½¨Ò»¸ö³£¹æµÄ Web ·þÎñÓ¦ÓóÌÐò¡£¶øÊÇÏëÒª¹¹½¨Ò»¸öÌØÊâµÄ DataSnap SOAP ·þÎñÆ÷¡£ÕýÈçÄúÔÚ Í¼ 4ÖÐËù¼ûµ½µÄÄÇÑù£¬SOAP Web Ä£¿éÒѾ°üº¬ÁËÈý¸ö×é¼þ£º
THTTPSoapDispatcher THTTPSoapPascalInvoker TWSDLHTMLPublish ×é¼þ ÓйØÕâЩ×é¼þµÄ¸üÏêϸÐÅÏ¢£¬Çë²ÎÔÄÁª»ú°ïÖú£»ËüÃÇÖ÷ҪΪ DataSnap SOAP ·þÎñÆ÷Ö´ÐÐËùÓÐ SOAP ºÍ WSDL“̽²â£¨plumbing£©”ÈÎÎñ£¬ËùÒÔÄúÏÖÔÚ¿ÉÒÔ×ÅÖØ¹Ø×¢Êý¾Ý¿â±í£¬¶ø²»±Øµ£ÐÄÆäËüÊÂÇé¡£
´ø×é¼þµÄ SOAP Web Ä£¿é
½« SOAP Web Ä£¿é±£´æÔÚÎļþ SWebMod.pas ÖУ¬½«Õû¸öÏîÄ¿±£´æÔÚ D7DB2CGI.dpr ÖУ¨Õ⽫²úÉú D7DB2CGI.exe £©¡£ ÏÖÔÚÌí¼Ó SOAP Êý¾ÝÄ£¿é£¨SOAP Data Module£©À´Á¬½Ó DB2 Êý¾Ý¿â£¨Í¨¹ýʹÓöÔÏó×ÊÔ´¿âµÄ WebServices Ñ¡ÏÖеĵڶþ¸öͼ±ê£»»¹Çë²Î¼ûͼ1£©¡£ÔÚ SOAP Data Module Ïòµ¼ÖУ¬Ö»ÐèÒªÖ¸¶¨ÐÂÊý¾ÝÄ£¿éµÄÃû³Æ£»½«ËüÃ
Ïà¹ØÎĵµ£º
//¶¨ÒåMyClass
TMyClass = class
GUID: string;
Name: string;
bSex: Boolean;
Tel : string;
end;
//ȡֵ
var
obj: TMyClass;
begin
obj := TMyClass.Create;
with Memo1.Lines do
begin
Add('¶ÔÏó´óС:' + IntToStr(obj.InstanceSize));
Add('¶ÔÏóËùÔÚµØÖ·£º'+ ......
¼Ì³ÐÊÇΪÁ˱íÏÖÀàÓëÀàÖ®¼ä“ÊÇÒ»ÖÖ”¹ØÏµ£¬ÊǶà̬´æÔڵĻù´¡£¬¼Ì³ÐÊÇÃæÏó¶ÔÏ󱨲»¿ÉÉٵĻù´¡£¬Ö»Ö§³Ö·â×°¶ø²»Ö§³Ö¼Ì³ÐµÄÓïÑÔÖ»ÄܳÆÎª“»ùÓÚ¶ÔÏ󔣨Object-Based£©Ãæ·ÇÃæÏò¶ÔÏó“Object-Oriented”;
Object PascalÖ»Ö§³Öµ¥¼Ì³Ð£¬Ò²¾ÍÊÇÒ»¸öÅÉÉúÀàÖ»ÄÜÓÐÒ»¸ö»ùÀà
µ«¿ÉÒÔʵÏÖ¶à¸ö½Ó¿Ú ......
Delphi TIniFile Àà ²Ù×÷iniÅäÖÃÎļþ
2007Äê12ÔÂ08ÈÕ ÐÇÆÚÁù 09:56
Ò»¡¢ÓбØÒªÁ˽âINIÎļþµÄ½á¹¹£º
;×¢ÊÍ
[С½ÚÃû]
¹Ø¼ü×Ö=Öµ
...
---- INIÎļþÔÊÐíÓжà¸öС½Ú£¬Ã¿¸öС½ÚÓÖÔÊÐíÓжà¸ö¹Ø¼ü×Ö£¬ “=”ºóÃæÊǸùؼü×ÖµÄÖµ¡£
---- ÖµµÄÀàÐÍÓÐÈýÖÖ£º×Ö·û´®¡¢ÕûÐÍÊýÖµºÍ²¼¶ûÖµ¡£ÆäÖÐ×Ö·û´®´æÖüÔÚINIÎļþÖÐÊ±Ã»Ó ......
1.±»×°ÊÎÕß
{¡¶HeadFirstÉè¼ÆÄ£Ê½¡·Ö®×°ÊÎģʽ }
{ ±¾µ¥ÔªÖеÄÀàΪ±»×°ÊÎÕß }
{ ±àÒ빤¾ß: Delphi7.0 }
{ E-Mail : xshlife@163.com }
unit uComponent;
interface
type
TBeverage = class(TObject) //³éÏóÒûÁÏÀà
protected
FDescription: String;
public
......
1. ¸´ÔÓµÄ×Óϵͳ
unit uSubObject;
interface
type
{ TAmplifierÓëTTuner£¬TCDPlayer£¬TDVDPlayerÏ໥ÒÀÀµ¡£ }
{ ÔÚTTunerµÈµÄ¼òµ¥ÊµÏÖʱÓò»µ½¶ÔTAmplifierµÄÒýÓ㬠}
{ µ«ÏÖʵÉú»îÖоÍÓ¦¸ÃÈÃTAmplifierÌṩ·þÎñ£¬ËùÒÔÕâÀï±£ÁôÁË¡£ }
{ TProjector¶ÔT ......