所谓B/S结构,就是只安装维护一个服务器(Server),而客户端采用浏览器(Browse)运行软件,即浏览器/服务器结构。
一、C/S与B/S结构模式
随着Internet获得愈来愈广泛的应用,原来基于LAN的企业网开始采用Internet技术
来构筑或改建自己的企业网,即Intranet。于是,一种新的结构模式Browser/Server结构
应运而生,并且获得飞速发展, 成为众多厂家争相采用的一种技术。其实,B/S也是一种C
linet/Server结构,它以浏览器为客户端软件,Web Server为服务器软件。但相对于C/S结
构,它又具有许多独特的优点:
(1) B/S是一种跨平台的、一点对多点及多点对多点的应用软件结构,减少了开发人
员在客户端的工作量,使他们可以把注意力集中到怎样合理地组织信息、提供客户服务上
来。
(2) B/S具有统一的浏览器客户端软件,不仅节省了开发、维护客户端软件的时间与
精力,而且方便了用户的使用。
(3) 在B/S结构中,客户端只需运行 *** 作系统和Web浏览器,数据的查询、处理和表示
都由服务器完成。和C/S结构的应用系统相比,客户端变得非常"瘦"。
(4) 可以透明地跨越异质网络、计算机平台,无缝地联合使用数据库、超文本、多媒
体等多种形式的信息。
(5) B/S系统运行的Internet易于设置、使用和管理。
目前,许多C/S体系结构的应用系统纷纷被重构为B/S结构,然后移植到Intranet环境
下。我们在研究了UUHDB系统的体系结构和Web服务器下应用程序的运行机制后,尽可能对
UUHDB系统进行了最小修改,将其从一个C/S结构的系统改建为一个B/S结构的系统,使用户
能够通过浏览器对其进行访问。
二、B/S结构下的UUHDB系统
C/S结构的UUHDB系统从功能上可划分为两大部分:UUHDB数据处理系统和UUHDB输入/
输出系统,如图1所示。
@@0630000JPG;图1 UUHDB系统的功能分布图(B/S结构)@@
UUHDB数据处理系统是整个UUHDB系统的核心,首先事务管理器接收客户端传送的查询
命令(一般被称为用户请求,包括查询、更新,这里以查询为例说明),进行语法检查、查询
分解和优化处理;分解后的子查询被送往各局部数据库服务器,由它们具体实施;最后查询
子结果返回到事务管理器中汇总,完成一次全局查询的全过程。
UUHDB输入/输出系统提供了一个和数据库进行交互的用户界面,包括数据的输入、输
出以及对数据库的控制等功能。
把C/S的UUHDB系统改造为B/S结构模式的主要思想是: UUHDB数据处理系统基本保持
不变,去掉原来的客户端即输入/输出系统,代之以浏览器,通过Web服务器和CGI程序与 U
UHDB数据处理系统连接在一起,重新构成一个完整的、运行在Intranet网络环境下的数据
库应用系统。改建后的UUHDB是典型的B/S结构模式,如图2所示。
@@0630001JPG;图2 B/S结构模型@@
三、B/S结构的UUHDB系统的运行环境
在原来的分布式局域网的基础上,安装了浏览器、Web服务器以及域名服务器,构成一
个Intranet环境,其中,Web服务器与UUHDB系统的事务管理器在同一台机器上,各数据库服
务器不需重新安装,仍以分布式状态存在,如图3所示。
@@0630002JPG;图3 UUHDB的研究环境(Intranet环境)@@
四、B/S结构的UUHDB系统的用户输入界面
改造后的UUHDB系统以浏览器作为客户端,为了方便用户的使用,我们提供了三种不同
级别的SQL命令的提交方式:嵌入式、输入式和交互式,以适应不同用户、不同场合的需求
。
1 嵌入式
这是最简单的一种方式。它是指在HTML文本的超联接中把SQL命令作为参数追加在C
GI程序之后,用户只能被动地访问数据库,不具有交互性。
2 输入式
在浏览器上提供一个文本编辑窗口,用户可以由此输入SQL命令。所有的数据库 *** 作
都可以通过这种方式完成,但要求用户必须懂得SQL语言。
3 交互式
制作一套查询命令的动态生成规则,以FORM表单为载体,使用户通过简单的选择、输
入即可完成对数据库的查询。界面友好亲切,使用简单,不需要用户了解SQL语言。如界面
上给出字段名,可为代号、姓名、年龄、性别、职称等,用户可选择所需字段,作为查询内
容,其值可作为查询条件。
目前,通过浏览器,用户可以对UUHDB进行全局数据查询和全局数据 *** 纵(包括插入、
修改、删除)等 *** 作。
五、B/S结构的UUHDB系统采用的通信方式
由于UUHDB是一个B/S结构的分布式数据库系统,用户通过浏览器对数据库进行访问,
因此存在多个用户同时访问Web服务器请求数据服务的现象,从而提出了并行性数据处理
的要求,即如何使多个用户能够同时访问全局库而不必相互等待和干扰,这也是UUHDB在W
eb网络环境下必须具备的基本特征之一。
在UUHDB前端的改造中,这一并行性问题是采用进程间通信的方式——DDE协议解决的
。
在UUHDB系统中,用户从浏览器上输入的查询命令通过网络传输到Web服务器端,由CG
I程序读取后,进行格式转换生成SQL语句,然后以DDE对话的形式传送给UUHDB的数据处理
系统,由其进行下一步的处理,具体的通信模型如图4所示。
@@0630003JPG;图4 CGI进程与全局事物管理器的并行通信模型@@
在图4中,每个CGI进程有三个部分组成:
(1) SQL生成:读取环境变量或标准输入,按照动态生成规则生成SQL语句。
(2) DDE客户:和DDE服务器进行通信,传送SQL语句并接收处理结果。
(3) 结果处理:把DDE客户接收的数据转换成HTML格式,通过标准输出交给Web服务器
,由其负责传送到浏览器。
图中与CGI进程相对应的数据处理系统可划分为两个功能部分:
(1) DDE服务器:接收DDE客户传来的SQL语句,并返回UUHDB数据处理系统的执行结果
。
(2) 数据处理:包括语法检查、查询分解、命令执行和结果汇总等。
什么是C语言?C语言的简介。
C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。
它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。
因此,它的应用范围广泛,不仅仅是在软件开发上,而且各类科研都需要用到C语言,具体应用比如单片机以及嵌入式系统开发。
语言特点:C是中级语言/C是结构式语言/C语言功能齐全/C语言适用范围大/简洁紧凑、灵活方便/运算符丰富/数据类型丰富/C是结构式语言/语法限制不太严格,程序设计自由度大/适用范围大,可移植性好。
与HTML相比,ASP网页具有6大特点。ASP是Active Server Page的缩写,意为“活动服务器网页”。ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。ASP的网页文件的格式是asp,现在常用于各种动态网站中。 ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或web应用程序。ASP网页可以包含HTML标记、普通文本、脚本命令以及COM组件等。利用ASP可以向网页中添加交互式内容(如在线表单),也可以创建使用HTML网页作为用户界面的web应用程序。CGI(Common Gateway Interface)是一种共用网关接口,它可以称之为一种机制因此您可以使用不同的程序编写适合的CGI程序,这些程序语言包括Visual Basic、Delphi或C/C++等,您将已经写好的程序放在WEB服务器的计算机上运行,再将其运行结果通过WEB服务器传输到客户端的浏览器上。事实上,这样的编制方式比较困难而且效率低下,因为你每一次修改程序都必须重新将CGI程序编译成可执行文件。而ASP与Script(脚本)的编写方式非常类似,它完全不需要重新编译成可执行文件就可以直接运行,再者ASP内置的ADO组件,允许用户通过客户端浏览器存取各种各样的数据库。此外,ASP与CGI最大的不同在于对象向导和组件重用,ASP除了内置的Request对象、Response对象、Server对象、Session对象、Application对象、ObjectContext对象等基本对象外,另外可以允许用户以外挂的方式使用ActiveX控件。当然,ASP本身也提供了多个ActiveX控件供使用,这些组件包括广告轮显组件、文件存取组件、文件连接组件几数据库存取组件等,这些大量扩充且重复使用的组件使ASP的功能远大于CGI。PHP是一种服务器端HTML-嵌入式脚本描述语言。 其最强大和最重要的特征是其数据库集成层,使用它完成一个含有数据库功能的网页是不可置信的简单。在HTML文件中, PHP脚本程序(语法类似于Perl或者c语言)可以使用特别的PHP标签进行引用, 这样网页制作者也不必完全依赖HTML生成网页了。由于PHP是在服务器端执行的, 客户端是看不到PHP代码的。 PHP可以完成任何CGI脚本可以完成的任务,但它的功能的发挥取决于它和各种数据库的兼容性。 PHP除了可以使用>
其实SSI跟asp差别蛮大的,ssi只能是在shtml文件载入的时候,其中的ss标签被替换为其他内容,(何种标签替换为何种内容 是用户在LwIP协议中自定义的),而ASP、CGi是可以在html载入后动态调用的,他们才能实现完善的动态交互功能
至于如何入手,lwip的源码里面有详尽的英文注释,lz可以对着看看。
如果你想进行lwip 的CGI编程,建议你看看这么几个文件:>
PHP是一种服务器端、跨平台、html嵌入式的脚本语言。
执行速度快:PHP是一种强大的CGI脚本语言,语法混合了C、Java、Perl和PHP式的新语法,执行网页比CGI、Perl和ASP更快,这是它的第一个突出的特点。
扩展资料:
PHP是目前最流行的编程语言,这毋庸置疑。它驱动全球超过2亿多个网站,有全球超过817%的公共网站在服务器端采用PHP。PHP常用的数据结构都内置了,使用起来方便简单,也一点都不复杂,表达能力相当灵活。
在服务器端的网站编程中PHP会更容易帮助你找到工作。很多互联网相关企业都在使用PHP开发框架,所以可以说市场对PHP的开发程序员的需求还是比较大的。
参考资料来源:百度百科-PHP (超文本预处理器)
只用过cgic,内部跳转在cgiMain函数中使用类似fprintf(cgiOut, "<script type=\"text/javascript\">windowlocationhref='mfgtoolcgi';</script>\n</HEAD>\n");这样可以跳转到你想到的页面。和Web服务器软件没关系,不管是apache还是其他,都是一样跳转,只要路径一致。
处理表单,在cgic中提供了函数接口,可以调用,比如的到客户端传过来的字符串:
//enter flag
cgiFormString("flag", flag, 32);
其中"flag"为客户端post过来的data键值对的键,flag是cgi中定义的char数组,用于接收post过来的键值对的值。这样就得到了客户端传递过来的值。
cgi输出到浏览器其实是加载静态html格式文件,然后读到特定字符,然后将cgi得到的值替换掉特定字符,然后出去到浏览器,进行显示。
至于调用postgreSQL数据库,我不太清楚,但是用C/C++链接数据库是肯定没问题的,这个帮不到你了。
1首先,建立交叉编译环境:交叉编译是指:在PC机上编译,在目标板上执行,我PC是linux+ arm-elf-gcc编译器扳子是ARM3000板子上的系统是uclinux,这时一个剪裁的很小的实时嵌入式linux *** 作系统推荐使用这个
2然后就是你写程序喽,不过注意可能有些库函数不能用,因为哪个编译器稍微受限一点,不是所由的c库函数都支持,不过一般开发的都有
3连起你的主机和开发板,这个你会不要连两个:串口(用来控制板子)和以太口(用来下载程序),我们板子上这些外设都有,你要使没有可以用其他的口代替传程序,但串口可是该有的阿!
4在你主机上编译程序生成目标代码,建议用makefile文件来组织你的联编关系
5把生成代码下载到目标板执行调试我是用的主机的NFS(网落文件)服务,下载到目标板的
6注:目标板是怎么控制的呢是用串口控制的,可用minicom,设置好你要控制的串口,也应该是你连板子的那个在命令行里敲上minicom,即进入minicom截面,开启你的板子,应该就是板子uclinux系统解压安装的画面了然后用ifconfig eth0
配置ip,这个ip就是你板子的ip了,注意与主机一个网段然后mount -t nfs 主机ip:/uclinux /板子上的一个目录,就把主机的 uclinux目录放到板子上了(这么说其实不合理,应该叫挂载) 然后找到你刚才一经编译好的哪个目标代码执行即可
因不了解你的具体环境和配置,暂说这些,有问题可再联系:)
The Application of SQLite in Embedded Web Server
Lei Xiao-jun(Dalian University of Technology, School of Electronic and Information Engineering, Dalian, 116023)
Abstract: This article explained the principle and the constitution of embedded web server basedon ARM , the characteristic and the system structure of SQLite system SQLite was transplanted to arm-linux embedded platform successfully The dynamic alternation between clients and
SQLite was built by C API that was offered by SQLite, which was used by Form technology and CGI technology This scheme can be applied in various fields, such as remote industry automatization equipment, remote family medial treatment equipment, control centre of Infromation Appliances and so on
Key words: SQLite; embedded system; Web server; CGI
在SQLite 提示符下只要键入:
CREATE TABLE users(
id INTERGER PRIMARY,
name CHAR MOT NULL,
password CHAR NOT NULL)
就可以创建一个供客户注册的简单数据库表。可以看出SQLite 基本兼容SQL 的语法,可以很方便地用命令行方式创建一个数据库文件。
以上就是关于一个典型的B/S结构有哪些组件构成全部的内容,包括:一个典型的B/S结构有哪些组件构成、C语言程序设计是什么、什么是ASP,PHP,CGI,JSP等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)