delphi XE8 NetHTTPRequest NetHTTPClient

delphi xe8 推出2个新http控件,NetHTTPRequest、NetHTTPClient

可以调用ASP.Net 一般应用程序获取网页数据,用旧的控件idhttp控件也可以,推荐用新的这2个组件。

TNetHttpClient不依赖OPENSSL

http://localhost:52384/Handler1.ashx

procedure TForm5.Button1Click(Sender: TObject);
var
  ss: TStringStream;
 begin
  ss := TStringStream.Create('', TEncoding.ASCII);//中文用UTF8
  ss.Clear; 
  self.NetHTTPClient1.Get(url, ss); 
  self.Caption := ss.DataString; 
  ss.Free; 
 end;

如何用动态字段实现系统的扩展性?

设计系统架构时,我们总是希望一个架构或者说是模型能支持多种业务场景,当然场景是系统范围内的。比如说做商品系统,商品有多种属性,不同类型的商品的属性不一样,怎么用关系型数据库去保存这些不同的属性呢?再比如做CMS时,除了基本的背景、位置、类型、状态等属性一致外,页面不同地方需要的数据结构却是不一样的。
再比如做广告时,不同地方的广告需要用不同属性去区别,而它们又有一些共有的属性,比如类型,名称。

数据库自定义字段及相关检索

应用开发过程中,有时候会有用户可以自定义字段的要求。比如我们对于人员信息的维护提供了姓名,性别,出生日期,备注等基本信息,但客户可能希望自己可以自定义一些字段来保存特定的信息,并对这些信息进行检索。

这个时候通常可能有两个方案:

1、对原有人员表增加若干备用字段,由用户来定义其含义;

2、增加表,来存储自定义字段结构以及相应数据。

在不同的背景情况下,两个方案各有优缺点,方案2的优点是可以方便的扩展,满足所有表增加自定义字段的需求。