- 【PG】常见数据库、表属性设置
江无羡
数据库
PG的常见属性配置方法数据库复制、备份相关表的复制标识单表操作批量表操作链接数据库复制、备份相关表的复制标识单表操作通过ALTER语句单独更改一张表的复制标识。ALTERTABLE[tablename]REPLICAIDENTITYFULL;批量表操作通过代码块的方式,对某个schema中的所有表一起更新其复制标识。SELECTtablename,CASErelreplidentWHEN'd'TH
- linux简单安装gcc和gdb
chn-zgq
Linuxlinuxubuntu
linux安装gcc以及环境配置和gdb安装gcc-10.0添加源:sudoadd-apt-repositoryppa:ubuntu-toolchain-r/ppa更新源:sudoaptupdate下载gcc:sudoaptinstallgcc-10g++-10默认GCC版本设置为gcc-10.0:sudoupdate-alternatives--install/usr/bin/gccgcc/us
- 数据库常见笔试面试题及其解析
yxsr_zxx
数据库数据库SqlServerOracle笔试面试
数据库基础(面试常见题)一、数据库基础1.数据抽象:物理抽象、概念抽象、视图级抽象,内模式、模式、外模式2.SQL语言包括数据定义、数据操纵(DataManipulation),数据控制(DataControl)数据定义:CreateTable,AlterTable,DropTable,Craete/DropIndex等数据操纵:Select,insert,update,delete,数据控制:g
- The sharp of walter
西夏无双贝
水形物语,今天在火车上看的,不愧是今年的奥斯卡最佳影片,音乐真的是非常好听,影片之后真是发人深思,让我印象深刻。世上没有怪物,只有不一样的个体,相貌,体态,性格,人性都可以不一样,你可以是不完整的,有缺点,但是我爱你,无论你是什么,无论你有什么缺点,在我心中都是我爱你的一部分,大爱无疆。
- linux find命令
落雨无风
linux
find.-name"*.v"|xargsgrep"altera_mf"#在当前目录查找所有.v文件,并找出altera_mf的行持续更新中------
- 如何设计实现完成一个FPGA项目
芯作者
D1:verilog设计D1:VHDL设计fpga开发
设计并完成一个FPGA项目是一个复杂但非常有价值的工程任务。以下是一个详细的步骤指南,帮助你从零开始完成一个FPGA项目。1.项目定义与需求分析确定项目目标:明确项目要实现的功能和性能指标。需求分析:列出所有功能需求、性能需求、接口需求等。可行性分析:评估技术可行性、成本和时间预算。2.硬件选择FPGA芯片选择:根据项目需求选择合适的FPGA芯片(如Xilinx、Intel/Altera、Latt
- mysql添加索引的sql语句
尼采呀
mysqlsql数据库
1.添加主键索引altertable`table_name`addprimarykey(`column`);2.添加唯一索引altertable`table_name`addunique(`column`);3.添加普通索引altertable`table_name`addindexindex_name(`column`);4.添加全文索引altertable`table_name`addfull
- SQL 索引的创建和删除以及使用索引的好处
SUMMERENT
javaSQLsql数据库
目录一、创建索引1、alter方式创建索引2、create方式创建索引二、删除索引1、drop方式直接删除索引2、alter方式删除索引三、索引的使用使用索引的好处:索引主要有普通索引、唯一索引、主键索引、外键索引、全文索引、复合索引几种一、创建索引1、alter方式创建索引①普通索引:MySQL中基本索引类型,允许在定义索引的列中插入重复值和空值altertable表名addindex索引名(要
- Spark MLlib模型训练—推荐算法 ALS(Alternative Least Squares)
不二人生
SparkML实战spark-ml推荐算法算法
SparkMLlib模型训练—推荐算法ALS(AlternativeLeastSquares)如果你平时爱刷抖音,或者热衷看电影,不知道有没有过这样的体验:这类影视App你用得越久,它就好像会读心术一样,总能给你推荐对胃口的内容。其实这种迎合用户喜好的推荐,离不开机器学习中的推荐算法。在今天这一讲,我们就结合两个有趣的电影推荐场景,为你讲解SparkMLlib支持的协同过滤与频繁项集算法电影推荐场
- Oracle 用户及角色 介绍
iteye_3158
数据库
一.用户管理1.1建立用户(数据库验证)CREATEUSERDAVEIDENTIFIEDBYpwdDEFAULTTABLESPACEusersTEMPORARYTABLESPACEtempQUOTA5mONusers;1.2修改用户ALTERUSERDAVEQUOTA0ONSYSTEM;1.3删除用户DROPUSERDAVE;DROPUSERDAVECASCADE;1.4显示用户信息SELECT*
- MySql关键字
zm2714
mysql
ADDALLALTERANALYZEANDASASCASENSITIVEBEFOREBETWEENBIGINTBINARYBLOBBOTHBYCALLCASCADECASECHANGECHARCHARACTERCHECKCOLLATECOLUMNCONDITIONCONNECTIONCONSTRAINTCONTINUECONVERTCREATECROSSCURRENT_DATECURRENT_TI
- 8B10B编解码及FPGA实现
weixin_34309435
概述在使用ALTERA的高速串行接口时,GXB模块里硬件实现了8B10B编码,用户只是“傻瓜”式的使用,笔者也一直没有弄清楚。网上搜索了一些学习资料,结合参考文献希望能够对其进行消化。另外,ALTERA现在已经提供8B10BIP,用户可以直接使用,不过有时候为了代码可移植性需要自己写代码实现8B10B编解码,笔者希望在这方面也做些实践。8B10B编码概念基本概念网上可以轻易找到答案,简单的说就是将
- 关于 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) 的解决办法
朝畫夕拾
修改密码:ALTERUSER'root'@'localhost'IDENTIFIEDBY'root';启动cmd窗口,输入命令“mysql-uroot-p”直接回车登录到MySQL服务器,然后进行修改,可以输入命令:mysql>ALTERUSER'root'@'localhost'IDENTIFIEDBY'HuaZai12345!';现在退出,在输入命令“mysql-uroot-p”在输入刚才设置
- 数据库的操作:DDL数据定义语言
一名在八月份找工作的测试员
数据库
SQL语言的介绍及分类:数据库的操作:SQL语言的介绍-CSDN博客一.介绍DDL:数据定义语言(数据库对象的操作(结构))数据库对象:数据库,表,视图,索引等create(创建)/alter(修改)/drop(删除/销毁)二.语法1.数据库database:没有修改的操作创建数据库:createdatabase数据库名;销毁/删除数据库:DROPDATABASE数据库名;2.表table①创建表
- 关于深度森林的一点理解
Y.G Bingo
机器学习方法机器学习神经网络
2017年年初,南京大学周志华老师上传了一篇名为:DeepForest:TowardsAnAlternativetoDeepNeuralNetworks的论文,一石激起千层浪,各大媒体纷纷讨论着,这似乎意味着机器学习的天色要变,实则不然,周志华老师通过微博解释道,此篇论文不过是为机器学习打开了另一扇窗,是另一种思维,而不是真的去替代深度神经网络(DNN)。下面我就简单概括一下我对这篇论文的理解,如
- how to resolve install mysql always notice‘You must reset your password using ALTER USER statement before executing this statement.’
WXL_JIANSHU
现象:#[YoumustresetyourpasswordusingALTERUSERstatementbeforeexecutingthisstatement.](http://www.cnblogs.com/debmzhang/p/5013540.html)修复:安装完mysql之后,登陆以后,不管运行任何命令,总是提示这个step1:SETPASSWORD=PASSWORD('yournew
- 创建Hive表后,查看表结构发现中文注释乱码
StoicD
Hivehive
问题描述:创建Hive表后,查看表结构发现中文注释乱码解决方法:进入mysql,执行如下命令usehive;#修改表字段注解编码altertableCOLUMNS_V2modifycolumnCOMMENTvarchar(256)charactersetutf8;#修改表注解编码altertableTABLE_PARAMSmodifycolumnPARAM_VALUEvarchar(4000)ch
- JavaScript
bda1a329d33d
JS语法1.控制浏览器弹出一个警告框alter('这是我的第一行JS代码');2.在计算机页面中输出一个内容document.write('语句');3.向控制台输出一个内容console.log('语句');4.button点击事件5.超链接6.引入外部JS7.单行注释//JS数据类型String字符串Number数值Boolean布尔值Null空值Undefined未定义Object对象Str
- undo 表空间满了的处理方法
cm_0205
数据库
在插入数据或者update时,有时会报ora_30036错误,导致数据插入失败,其原因是数据库的undo表空间不足所致,解决undo表空间满的方法有两种。方法一:添加undo表空间的数据文件altertablespaceundoadddatafile'/u01/oracle/backup/undo02.dbf'size100Mreuse;方法二:切换undo表空间1、建立新的表空间undotbs3
- SOC 与 ARM
weixin_30316097
嵌入式
SOC是指片上系统,意思是一个芯片就构成一个包括了存储、CPU、甚至还有AD、UART等等其他资源的系统!而ARM只是CPU的一种,有的片上系统是51、nios、PIC、等等不一而是!特别是nios,是altera的FPGA构成的,这个系统也称为SOPC其实就是SOC的一种,只不过是基于FPGA和软核来构成的!ARM授权从高到低大体分为三种,即架构授权、内核授权以及使用授权(实际的授权中,授权费用
- 云苍穹单据修改字段后保存时报错alter Table xx add xx navrchar(50)default() not null如何解决?
涎涎
正文如下图所示,我在修改单据的某几个字段保存时,则报如下错误altertablet_kdgz_ysdoo1_entryaddfauxpropid.fbdzggnavarchar(50)default('')notnull;我们逐个逐个解析上面的报错语句,table后面一般是跟的是表名而上面的表名有一个很重要的标识是entry有这个标识表示这是分录的表名,而后的字段就更好理解了fauxpropid.
- 安装python新版本后,pip指向旧的python环境解决办法
m0_60961641
pythonpiplinux
1.更新软链接:sudoln-sf/usr/local/bin/python3.8/usr/bin/python32.设置默认版本:sudoupdate-alternatives--configpython33.选择序号,选择你默认使用的Python版本即可
- 数据库系统概论——关系数据库标准语言SQL
time_silence
数据库sqlmysql
//[]中的内容不是必须内容,是为了实现某些功能时才添加的。1、SQL概述SQL(StructuredQueryLanguage):结构化查询语言,是关系数据库的标准语言。1.1SQL的特点综合统一高度非过程化面向集合的操作方式以同一种语法结构提供多种使用方式语言简洁,易学易懂九个核心词SQL功能动词数据查询SELECT数据定义CREATE,DROP,ALTER数据操纵INSERT,UPDATE,
- Kafka~Kafka命令行参数使用教程
飞Link
大数据kafkazookeeper分布式
一、kafka-topics.sh1.参数参数描述–bootstrap-server连接的KafkaBroker主机名称和端口号–topic操作的topic名称–create创建主题–delete删除主题–alter修改主题–list查看所有主题–describe查看主题详细描述–partition设置分区数–replication-factor设置分区副本–config更新系统默认的配置2.实例
- 好奇心,让人永葆生活的热情
多多Sunny
《列奥纳多·达•芬奇传》【美】沃尔特·艾萨克森(WalterIsaacson)著汪冰译读这本书完全源于满足娃的好奇心,不过读了以后也满足了自己的好奇心。那天跟娃一起看了《蒙娜丽莎》这幅画,告诉他是500年前一位叫达·芬奇的人画的,无意中我提到小学时好像学过一篇课文叫《画鸡蛋》,里面的主人公就是达·芬奇。娃就记住了这个人,没事就让我给讲讲达·芬奇。所知有限,只能靠外援解决。不过看了这本书,我觉得我小
- 推荐开源项目:OpenNote——自托管的轻量级笔记应用
殷泳娓
推荐开源项目:OpenNote——自托管的轻量级笔记应用OpenNoteOpenNotewasbuilttobeanopenweb-basedalternativetoMicrosoftOneNote(T)andEverNote.项目地址:https://gitcode.com/gh_mirrors/op/OpenNote项目介绍OpenNote是一款基于Web的开源笔记软件,采用MIT许可证,旨
- Plane Mobile 开源项目教程
高慈鹃Faye
PlaneMobile开源项目教程plane-mobileMobileAppofPlane.OpenSourceJIRA,LinearandHeightAlternative.Planehelpsyoutrackyourissues,epics,andproductroadmapsinthesimplestwaypossible.项目地址:https://gitcode.com/gh_mirror
- Oracle只读表
zha_sir
Oracleoracle只读
Oracle只读表能阻止表上所有的DML操作(truncate/insert/update/delete)SQL>createtablet_zhasirasselect*fromdba_objectswhererownumaltertablet_zhasirreadonly;Tablealtered.--设置表为读写状态SQL>altertablet_zhasirreadwrite;Tableal
- mysql用户授权
花无重日人未红
创建用户并授权1.CREATEUSERpmp@'%'IDENTIFIEDBY'supporter';2.SETPASSWORDFOR'pmp'@'%'=PASSWORD('supporter');3.授权GRANTSELECT,INSERT,UPDATE,REFERENCES,DELETE,CREATE,DROP,ALTER,INDEX,CREATEVIEW,SHOWVIEWONsupp_app.
- FPGA学习笔记-FLASH固化
MR_Promethus
FPGA开发
在我们刚开始学习FPGA的时候,我们一般都是将编译后生成的.sof文件(针对于Altera器件)通过JTAG方式下载到FPGA内部,但是我们会发现,给FPGA重新上电之后,我们之前给它下载的程序已经丢失了,如果我们还想让FPGA跑上次的功能就必须再下载一次程序。出现这个问题,是因为我们的程序并没有存到FPGA外接的配置芯片中,只是存在FPGA内部的SRAM(静态随机存储器,掉电丢失)。为了解决这个
- java工厂模式
3213213333332132
java抽象工厂
工厂模式有
1、工厂方法
2、抽象工厂方法。
下面我的实现是抽象工厂方法,
给所有具体的产品类定一个通用的接口。
package 工厂模式;
/**
* 航天飞行接口
*
* @Description
* @author FuJianyong
* 2015-7-14下午02:42:05
*/
public interface SpaceF
- nginx频率限制+python测试
ronin47
nginx 频率 python
部分内容参考:http://www.abc3210.com/2013/web_04/82.shtml
首先说一下遇到这个问题是因为网站被攻击,阿里云报警,想到要限制一下访问频率,而不是限制ip(限制ip的方案稍后给出)。nginx连接资源被吃空返回状态码是502,添加本方案限制后返回599,与正常状态码区别开。步骤如下:
- java线程和线程池的使用
dyy_gusi
ThreadPoolthreadRunnabletimer
java线程和线程池
一、创建多线程的方式
java多线程很常见,如何使用多线程,如何创建线程,java中有两种方式,第一种是让自己的类实现Runnable接口,第二种是让自己的类继承Thread类。其实Thread类自己也是实现了Runnable接口。具体使用实例如下:
1、通过实现Runnable接口方式 1 2
- Linux
171815164
linux
ubuntu kernel
http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.1.2-unstable/
安卓sdk代理
mirrors.neusoft.edu.cn 80
输入法和jdk
sudo apt-get install fcitx
su
- Tomcat JDBC Connection Pool
g21121
Connection
Tomcat7 抛弃了以往的DBCP 采用了新的Tomcat Jdbc Pool 作为数据库连接组件,事实上DBCP已经被Hibernate 所抛弃,因为他存在很多问题,诸如:更新缓慢,bug较多,编译问题,代码复杂等等。
Tomcat Jdbc P
- 敲代码的一点想法
永夜-极光
java随笔感想
入门学习java编程已经半年了,一路敲代码下来,现在也才1w+行代码量,也就菜鸟水准吧,但是在整个学习过程中,我一直在想,为什么很多培训老师,网上的文章都是要我们背一些代码?比如学习Arraylist的时候,教师就让我们先参考源代码写一遍,然
- jvm指令集
程序员是怎么炼成的
jvm 指令集
转自:http://blog.csdn.net/hudashi/article/details/7062675#comments
将值推送至栈顶时 const ldc push load指令
const系列
该系列命令主要负责把简单的数值类型送到栈顶。(从常量池或者局部变量push到栈顶时均使用)
0x02 &nbs
- Oracle字符集的查看查询和Oracle字符集的设置修改
aijuans
oracle
本文主要讨论以下几个部分:如何查看查询oracle字符集、 修改设置字符集以及常见的oracle utf8字符集和oracle exp 字符集问题。
一、什么是Oracle字符集
Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系。ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据。它使数据库工具,错误消息,排序次序,日期,时间,货
- png在Ie6下透明度处理方法
antonyup_2006
css浏览器FirebugIE
由于之前到深圳现场支撑上线,当时为了解决个控件下载,我机器上的IE8老报个错,不得以把ie8卸载掉,换个Ie6,问题解决了,今天出差回来,用ie6登入另一个正在开发的系统,遇到了Png图片的问题,当然升级到ie8(ie8自带的开发人员工具调试前端页面JS之类的还是比较方便的,和FireBug一样,呵呵),这个问题就解决了,但稍微做了下这个问题的处理。
我们知道PNG是图像文件存储格式,查询资
- 表查询常用命令高级查询方法(二)
百合不是茶
oracle分页查询分组查询联合查询
----------------------------------------------------分组查询 group by having --平均工资和最高工资 select avg(sal)平均工资,max(sal) from emp ; --每个部门的平均工资和最高工资
- uploadify3.1版本参数使用详解
bijian1013
JavaScriptuploadify3.1
使用:
绑定的界面元素<input id='gallery'type='file'/>$("#gallery").uploadify({设置参数,参数如下});
设置的属性:
id: jQuery(this).attr('id'),//绑定的input的ID
langFile: 'http://ww
- 精通Oracle10编程SQL(17)使用ORACLE系统包
bijian1013
oracle数据库plsql
/*
*使用ORACLE系统包
*/
--1.DBMS_OUTPUT
--ENABLE:用于激活过程PUT,PUT_LINE,NEW_LINE,GET_LINE和GET_LINES的调用
--语法:DBMS_OUTPUT.enable(buffer_size in integer default 20000);
--DISABLE:用于禁止对过程PUT,PUT_LINE,NEW
- 【JVM一】JVM垃圾回收日志
bit1129
垃圾回收
将JVM垃圾回收的日志记录下来,对于分析垃圾回收的运行状态,进而调整内存分配(年轻代,老年代,永久代的内存分配)等是很有意义的。JVM与垃圾回收日志相关的参数包括:
-XX:+PrintGC
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-XX:+PrintGCDateStamps
-Xloggc
-XX:+PrintGC
通
- Toast使用
白糖_
toast
Android中的Toast是一种简易的消息提示框,toast提示框不能被用户点击,toast会根据用户设置的显示时间后自动消失。
创建Toast
两个方法创建Toast
makeText(Context context, int resId, int duration)
参数:context是toast显示在
- angular.identity
boyitech
AngularJSAngularJS API
angular.identiy 描述: 返回它第一参数的函数. 此函数多用于函数是编程. 使用方法: angular.identity(value); 参数详解: Param Type Details value
*
to be returned. 返回值: 传入的value 实例代码:
<!DOCTYPE HTML>
- java-两整数相除,求循环节
bylijinnan
java
import java.util.ArrayList;
import java.util.List;
public class CircleDigitsInDivision {
/**
* 题目:求循环节,若整除则返回NULL,否则返回char*指向循环节。先写思路。函数原型:char*get_circle_digits(unsigned k,unsigned j)
- Java 日期 周 年
Chen.H
javaC++cC#
/**
* java日期操作(月末、周末等的日期操作)
*
* @author
*
*/
public class DateUtil {
/** */
/**
* 取得某天相加(减)後的那一天
*
* @param date
* @param num
*
- [高考与专业]欢迎广大高中毕业生加入自动控制与计算机应用专业
comsci
计算机
不知道现在的高校还设置这个宽口径专业没有,自动控制与计算机应用专业,我就是这个专业毕业的,这个专业的课程非常多,既要学习自动控制方面的课程,也要学习计算机专业的课程,对数学也要求比较高.....如果有这个专业,欢迎大家报考...毕业出来之后,就业的途径非常广.....
以后
- 分层查询(Hierarchical Queries)
daizj
oracle递归查询层次查询
Hierarchical Queries
If a table contains hierarchical data, then you can select rows in a hierarchical order using the hierarchical query clause:
hierarchical_query_clause::=
start with condi
- 数据迁移
daysinsun
数据迁移
最近公司在重构一个医疗系统,原来的系统是两个.Net系统,现需要重构到java中。数据库分别为SQL Server和Mysql,现需要将数据库统一为Hana数据库,发现了几个问题,但最后通过努力都解决了。
1、原本通过Hana的数据迁移工具把数据是可以迁移过去的,在MySQl里面的字段为TEXT类型的到Hana里面就存储不了了,最后不得不更改为clob。
2、在数据插入的时候有些字段特别长
- C语言学习二进制的表示示例
dcj3sjt126com
cbasic
进制的表示示例
# include <stdio.h>
int main(void)
{
int i = 0x32C;
printf("i = %d\n", i);
/*
printf的用法
%d表示以十进制输出
%x或%X表示以十六进制的输出
%o表示以八进制输出
*/
return 0;
}
- NsTimer 和 UITableViewCell 之间的控制
dcj3sjt126com
ios
情况是这样的:
一个UITableView, 每个Cell的内容是我自定义的 viewA viewA上面有很多的动画, 我需要添加NSTimer来做动画, 由于TableView的复用机制, 我添加的动画会不断开启, 没有停止, 动画会执行越来越多.
解决办法:
在配置cell的时候开始动画, 然后在cell结束显示的时候停止动画
查找cell结束显示的代理
- MySql中case when then 的使用
fanxiaolong
casewhenthenend
select "主键", "项目编号", "项目名称","项目创建时间", "项目状态","部门名称","创建人"
union
(select
pp.id as "主键",
pp.project_number as &
- Ehcache(01)——简介、基本操作
234390216
cacheehcache简介CacheManagercrud
Ehcache简介
目录
1 CacheManager
1.1 构造方法构建
1.2 静态方法构建
2 Cache
2.1&
- 最容易懂的javascript闭包学习入门
jackyrong
JavaScript
http://www.ruanyifeng.com/blog/2009/08/learning_javascript_closures.html
闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。
下面就是我的学习笔记,对于Javascript初学者应该是很有用的。
一、变量的作用域
要理解闭包,首先必须理解Javascript特殊
- 提升网站转化率的四步优化方案
php教程分享
数据结构PHP数据挖掘Google活动
网站开发完成后,我们在进行网站优化最关键的问题就是如何提高整体的转化率,这也是营销策略里最最重要的方面之一,并且也是网站综合运营实例的结果。文中分享了四大优化策略:调查、研究、优化、评估,这四大策略可以很好地帮助用户设计出高效的优化方案。
PHP开发的网站优化一个网站最关键和棘手的是,如何提高整体的转化率,这是任何营销策略里最重要的方面之一,而提升网站转化率是网站综合运营实力的结果。今天,我就分
- web开发里什么是HTML5的WebSocket?
naruto1990
Webhtml5浏览器socket
当前火起来的HTML5语言里面,很多学者们都还没有完全了解这语言的效果情况,我最喜欢的Web开发技术就是正迅速变得流行的 WebSocket API。WebSocket 提供了一个受欢迎的技术,以替代我们过去几年一直在用的Ajax技术。这个新的API提供了一个方法,从客户端使用简单的语法有效地推动消息到服务器。让我们看一看6个HTML5教程介绍里 的 WebSocket API:它可用于客户端、服
- Socket初步编程——简单实现群聊
Everyday都不同
socket网络编程初步认识
初次接触到socket网络编程,也参考了网络上众前辈的文章。尝试自己也写了一下,记录下过程吧:
服务端:(接收客户端消息并把它们打印出来)
public class SocketServer {
private List<Socket> socketList = new ArrayList<Socket>();
public s
- 面试:Hashtable与HashMap的区别(结合线程)
toknowme
昨天去了某钱公司面试,面试过程中被问道
Hashtable与HashMap的区别?当时就是回答了一点,Hashtable是线程安全的,HashMap是线程不安全的,说白了,就是Hashtable是的同步的,HashMap不是同步的,需要额外的处理一下。
今天就动手写了一个例子,直接看代码吧
package com.learn.lesson001;
import java
- MVC设计模式的总结
xp9802
设计模式mvc框架IOC
随着Web应用的商业逻辑包含逐渐复杂的公式分析计算、决策支持等,使客户机越
来越不堪重负,因此将系统的商业分离出来。单独形成一部分,这样三层结构产生了。
其中‘层’是逻辑上的划分。
三层体系结构是将整个系统划分为如图2.1所示的结构[3]
(1)表现层(Presentation layer):包含表示代码、用户交互GUI、数据验证。
该层用于向客户端用户提供GUI交互,它允许用户