当前位置:文档之家› PetShop+详解

PetShop+详解

PetShop+详解
PetShop+详解

petshop4.0 详解之一(系统架构设计)

前言:PetShop 是一个范例,微软用它来展示.Net企业系统开发的能力。业界有许多.Net与J2EE之争,许多数据是从微软的PetShop和Sun的 PetStore而来。这种争论不可避免带有浓厚的商业色彩,对于我们开发人员而言,没有必要过多关注。然而PetShop随着版本的不断更新,至现在基于.Net 2.0的PetShop4.0为止,整个设计逐渐变得成熟而优雅,却又很多可以借鉴之处。PetShop是一个小型的项目,系统架构与代码都比较简单,却也凸现了许多颇有价值的设计与开发理念。本系列试图对PetShop作一个全方位的解剖,依据的代码是PetShop4.0,可以从链接https://www.doczj.com/doc/299484799.html,/library/default.asp?url=/library/en-

us/dnbda/html/bdasamppet4.asp中获得。

一、PetShop的系统架构设计

在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。微软推荐的分层式结构一般分为三层,从下至上分别为:数据访问层、业务逻辑层(又或成为领域层)、表示层,如图所示:

图一:三层的分层式结构

数据访问层:有时候也称为是持久层,其功能主要是负责数据库的访问。简单的说法就是实现对数据表的Select,Insert,Update, Delete的操作。如果要加入ORM

的元素,那么就会包括对象和数据表之间的mapping,以及对象实体的持久化。在PetShop的数据访问层中,并没有使用ORM,从而导致了代码量的增加,可以看

作是整个设计实现中的一大败笔。

业务逻辑层:是整个系统的核心,它与这个系统的业务(领域)有关。以PetShop

为例,业务逻辑层的相关设计,均和网上宠物店特有的逻辑相关,例如查询宠物,下订单,添加宠物到购物车等等。如果涉及到数据库的访问,则调用数据访问层。表示层:是系统的UI部分,负责使用者与整个系统的交互。在这一层中,理想的

状态是不应包括系统的业务逻辑。表示层中的逻辑代码,仅与界面元素有关。在PetShop中,是利用https://www.doczj.com/doc/299484799.html,来设计的,因此包含了许多Web控件和相关逻辑。

分层式结构究竟其优势何在?Martin Fowler在《Patterns of Enterprise Application Architecture》一书中给出了答案:

1、开发人员可以只关注整个结构中的其中某一层;

2、可以很容易的用新的实现来替换原有层次的实现;

3、可以降低层与层之间的依赖;

4、有利于标准化;

5、利于各层逻辑的复用。

概括来说,分层式设计可以达至如下目的:分散关注、松散耦合、逻辑复用、标准定义。

一个好的分层式结构,可以使得开发人员的分工更加明确。一旦定义好各层次之间的接口,负责不同逻辑设计的开发人员就可以分散关注,齐头并进。例如 UI人员

只需考虑用户界面的体验与操作,领域的设计人员可以仅关注业务逻辑的设计,而数据库设计人员也不必为繁琐的用户交互而头疼了。每个开发人员的任务得到了确认,开发进度就可以迅速的提高。

松散耦合的好处是显而易见的。如果一个系统没有分层,那么各自的逻辑都紧紧

纠缠在一起,彼此间相互依赖,谁都是不可替换的。一旦发生改变,则牵一发而动全身,对项目的影响极为严重。降低层与层间的依赖性,既可以良好地保证未来

的可扩展,在复用性上也是优势明显。每个功能模块一旦定义好统一的接口,就

可以被各个模块所调用,而不用为相同的功能进行重复地开发。

进行好的分层式结构设计,标准也是必不可少的。只有在一定程度的标准化基础上,这个系统才是可扩展的,可替换的。而层与层之间的通信也必然保证了接口的标准化。

“金无足赤,人无完人”,分层式结构也不可避免具有一些缺陷:

1、降低了系统的性能。这是不言而喻的。如果不采用分层式结构,很多业务可以

直接造访数据库,以此获取相应的数据,如今却必须通过中间层来完成。

2、有时会导致级联的修改。这种修改尤其体现在自上而下的方向。如果在表示层

中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码。

前面提到,PetShop的表示层是用https://www.doczj.com/doc/299484799.html,设计的,也就是说,它应是一个BS系统。在.Net中,标准的BS分层式结构如下图所示:

图二:.Net中标准的BS分层式结构

随着PetShop版本的更新,其分层式结构也在不断的完善,例如PetShop2.0,就没

有采用标准的三层式结构,如图三:

图三:PetShop 2.0的体系架构

从图中我们可以看到,并没有明显的数据访问层设计。这样的设计虽然提高了数

据访问的性能,但也同时导致了业务逻辑层与数据访问的职责混乱。一旦要求支持的数据库发生变化,或者需要修改数据访问的逻辑,由于没有清晰的分层,会导

致项目作大的修改。而随着硬件系统性能的提高,以及充分利用缓存、异步处理

等机制,分层式结构所带来的性能影响几乎可以忽略不计。

PetShop3.0纠正了此前层次不明的问题,将数据访问逻辑作为单独的一层独立出来:

图四:PetShop 3.0的体系架构

PetShop4.0基本上延续了3.0的结构,但在性能上作了一定的改进,引入了缓存和异步处理机制,同时又充分利用了https://www.doczj.com/doc/299484799.html, 2.0的新功能MemberShip,因此PetShop4.0的系统架构图如下所示:

图五:PetShop 4.0的体系架构

比较3.0和4.0的系统架构图,其核心的内容并没有发生变化。在数据访问层(DAL)中,仍然采用DAL Interface抽象出数据访问逻辑,并以DAL Factory作为数据访问层对象的工厂模块。对于DAL Interface而言,分别有支持MS-SQL的

SQL Server DAL和支持Oracle的Oracle DAL具体实现。而Model模块则包含了数据实体对象。其详细的模块结构图如下所示:

图六:数据访问层的模块结构图

可以看到,在数据访问层中,完全采用了“面向接口编程”思想。抽象出来的IDAL 模块,脱离了与具体数据库的依赖,从而使得整个数据访问层利于数据库迁移。DALFactory模块专门管理DAL对象的创建,便于业务逻辑层访问。SQLServerDAL和OracleDAL模块均实现IDAL模块的接口,其中包含的逻辑就是对数据库的Select,Insert,Update和Delete操作。因为数据库类型的不同,对数据库的操作也有所不同,代码也会因此有所区别。

此外,抽象出来的IDAL模块,除了解除了向下的依赖之外,对于其上的业务逻辑层,同样仅存在弱依赖关系,如下图所示:

图七:业务逻辑层的模块结构图

图七中BLL是业务逻辑层的核心模块,它包含了整个系统的核心业务。在业务逻

辑层中,不能直接访问数据库,而必须通过数据访问层。注意图中对数据访问业务的调用,是通过接口模块IDAL来完成的。既然与具体的数据访问逻辑无关,则层

与层之间的关系就是松散耦合的。如果此时需要修改数据访问层的具体实现,只要不涉及到IDAL的接口定义,那么业务逻辑层就不会受到任何影响。毕竟,具体实

现的SQLServerDAL和OracalDAL根本就与业务逻辑层没有半点关系。

因为在PetShop 4.0中引入了异步处理机制。插入订单的策略可以分为同步和异步,两者的插入策略明显不同,但对于调用者而言,插入订单的接口是完全一样的,所以 PetShop 4.0中设计了IBLLStrategy模块。虽然在IBLLStrategy模块中,仅仅是

简单的IOrderStategy,但同时也给出了一个范例和信息,那就是在业务逻辑的处理中,如果存在业务操作的多样化,或者是今后可能的变化,均应利用抽象的原理。或者使用接口,或者使用抽象类,从而脱离对具体业务的依赖。不过在PetShop

中,由于业务逻辑相对简单,这种思想体现得不够明显。也正因为此,PetShop将

核心的业务逻辑都放到了一个模块 BLL中,并没有将具体的实现和抽象严格的按

照模块分开。所以表示层和业务逻辑层之间的调用关系,其耦合度相对较高:

图八:表示层的模块结构图

在图五中,各个层次中还引入了辅助的模块,如数据访问层的Messaging模块,是

为异步插入订单的功能提供,采用了MSMQ (Microsoft Messaging Queue)技术。而表示层的CacheDependency则提供缓存功能。这些特殊的模块,我会在此后的文章中详细介绍。

petshop4.0 详解之二(数据访问层之数据库访问设计)

在系列一中,我从整体上分析了PetShop的架构设计,并提及了分层的概念。从本

部分开始,我将依次对各层进行代码级的分析,以求获得更加细致而深入的理解。在PetShop 4.0中,由于引入了https://www.doczj.com/doc/299484799.html, 2.0的一些新特色,所以数据层的内容也更

加的广泛和复杂,包括:数据库访问、Messaging、MemberShip、Profile四部分。

在系列二中,我将介绍有关数据库访问的设计。

在PetShop中,系统需要处理的数据库对象分为两类:一是数据实体,对应数据库

中相应的数据表。它们没有行为,仅用于表现对象的数据。这些实体类都被放到Model程序集中,例如数据表Order对应的实体类OrderInfo,其类图如下:

这些对象并不具有持久化的功能,简单地说,它们是作为数据的载体,便于业务逻辑针对相应数据表进行读/写操作。虽然这些类的属性分别映射了数据表的列,而

每一个对象实例也恰恰对应于数据表的每一行,但这些实体类却并不具备对应的数据库访问能力。

由于数据访问层和业务逻辑层都将对这些数据实体进行操作,因此程序集Model

会被这两层的模块所引用。

第二类数据库对象则是数据的业务逻辑对象。这里所指的业务逻辑,并非业务逻辑层意义上的领域(domain)业务逻辑(从这个意义上,我更倾向于将业务逻辑层

称为“领域逻辑层”),一般意义上说,这些业务逻辑即为基本的数据库操作,包括Select,Insert,Update和Delete。由于这些业务逻辑对象,仅具有行为而与数据无关,因此它们均被抽象为一个单独的接口模块IDAL,例如数据表Order对应的接口IOrder:

将数据实体与相关的数据库操作分离出来,符合面向对象的精神。首先,它体现了“职责分离”的原则。将数据实体与其行为分开,使得两者之间依赖减弱,当数据

行为发生改变时,并不影响Model模块中的数据实体对象,避免了因一个类职责

过多、过大,从而导致该类的引用者发生“灾难性”的影响。其次,它体现了“抽象”的精神,或者说是“面向接口编程”的最佳体现。抽象的接口模块IDAL,与具体的数据库访问实现完全隔离。这种与实现无关的设计,保证了系统的可扩展性,同

时也保证了数据库的可移植性。在PetShop中,可以支持SQL Server和Oracle,那么它们具体的实现就分别放在两个不同的模块SQLServerDAL、OracleDAL中。

以Order为例,在SQLServerDAL、OracleDAL两个模块中,有不同的实现,但它们同时又都实现了IOrder接口,如图:

从数据库的实现来看,PetShop体现出了没有ORM框架的臃肿与丑陋。由于要对数据表进行Insert和Select操作,以SQL Server为例,就使用了SqlCommand,SqlParameter,SqlDataReader等对象,以完成这些操作。尤其复杂的是 Parameter 的传递,在PetShop中,使用了大量的字符串常量来保存参数的名称。此外,PetShop还专门为SQL Server和Oracle提供了抽象的Helper类,包装了一些常用的操作,如ExecuteNonQuery、ExecuteReader等方法。

在没有ORM的情况下,使用Helper类是一个比较好的策略,利用它来完成数据库基本操作的封装,可以减少很多和数据库操作有关的代码,这体现了对象复用的原则。PetShop将这些Helper类统一放到DBUtility模块中,不同数据库的Helper 类暴露的方法基本相同,只除了一些特殊的要求,例如Oracle中处理bool类型的方式就和SQL Server不同,从而专门提供了OraBit和OraBool方法。此外,Helper 类中的方法均为static方法,以利于调用。 OracleHelper的类图如下:

对于数据访问层来说,最头疼的是SQL语句的处理。在早期的CS结构中,由于

未采用三层式架构设计,数据访问层和业务逻辑层是紧密糅合在一起的,因此,SQL语句遍布与系统的每一个角落。这给程序的维护带来极大的困难。此外,由

于Oracle使用的是PL-SQL,而SQL Server和Sybase等使用的是T-SQL,两者虽

然都遵循了标准SQL的语法,但在很多细节上仍有区别,如果将SQL语句大量的

使用到程序中,无疑为可能的数据库移植也带来了困难。

最好的方法是采用存储过程。这种方法使得程序更加整洁,此外,由于存储过程可以以数据库脚本的形式存在,也便于移植和修改。但这种方式仍然有缺陷。一是

存储过程的测试相对困难。虽然有相应的调试工具,但比起对代码的调试而言,仍然比较复杂且不方便。二是对系统的更新带来障碍。如果数据库访问是由程序完成,在.Net平台下,我们仅需要在修改程序后,将重新编译的程序集xcopy到部署

的服务器上即可。如果使用了存储过程,出于安全的考虑,必须有专门的DBA重

新运行存储过程的脚本,部署的方式受到了限制。

我曾经在一个项目中,利用一个专门的表来存放SQL语句。如要使用相关的SQL

语句,就利用关键字搜索获得对应语句。这种做法近似于存储过程的调用,但却

避免了部署上的问题。然而这种方式却在性能上无法得到保证。它仅适合于SQL

语句较少的场景。不过,利用良好的设计,我们可以为各种业务提供不同的表来

存放SQL语句。同样的道理,这些SQL语句也可以存放到XML文件中,更有利

于系统的扩展或修改。不过前提是,我们需要为它提供专门的SQL语句管理工具。SQL语句的使用无法避免,如何更好的应用SQL语句也无定论,但有一个原则值

得我们遵守,就是“应该尽量让SQL语句尽存在于数据访问层的具体实现中”。

当然,如果应用ORM,那么一切就变得不同了。因为ORM框架已经为数据访问

提供了基本的Select,Insert,Update和Delete 操作了。例如在NHibernate中,我

们可以直接调用ISession对象的Save方法,来Insert(或者说是Create)一个数据

实体对象:

public void Insert(OrderInfo order)

{

ISession s = Sessions.GetSession();

ITransaction trans = null;

try

{

trans = s.BeginTransaction();

s.Save( order);

https://www.doczj.com/doc/299484799.html,mit();

}

finally

{

s.Close();

}

}

没有SQL语句,也没有那些烦人的Parameters,甚至不需要专门去考虑事务。此外,这样的设计,也是与数据库无关的,NHibernate可以通过Dialect(方言)的

机制支持不同的数据库。唯一要做的是,我们需要为OrderInfo定义hbm文件。

当然,ORM框架并非是万能的,面对纷繁复杂的业务逻辑,它并不能完全消灭

SQL语句,以及替代复杂的数据库访问逻辑,但它却很好的体现了“80/20(或

90/10)法则”(也被称为“帕累托法则”),也就是说:花比较少(10%-20%)的力

气就可以解决大部分(80%-90%)的问题,而要解决剩下的少部分问题则需要多

得多的努力。至少,那些在数据访问层中占据了绝大部分的CRUD操作,通过利

用ORM框架,我们就仅需要付出极少数时间和精力来解决它们了。这无疑缩短了整个项目开发的周期。

还是回到对PetShop的讨论上来。现在我们已经有了数据实体,数据对象的抽象接

口和实现,可以说有关数据库访问的主体就已经完成了。留待我们的还有两个问题需要解决:

1、数据对象创建的管理

2、利于数据库的移植

在PetShop中,要创建的数据对象包括Order,Product,Category,Inventory,Item。在前面的设计中,这些对象已经被抽象为对应的接口,而其实现则根据数据库的

不同而有所不同。也就是说,创建的对象有多种类别,而每种类别又有不同的实现,这是典型的抽象工厂模式的应用场景。而上面所述的两个问题,也都可以通过抽

象工厂模式来解决。标准的抽象工厂模式类图如下:

例如,创建SQL Server的Order对象如下:

PetShopFactory factory = new SQLServerFactory();

IOrder = factory.CreateOrder();

要考虑到数据库的可移植性,则factory必须作为一个全局变量,并在主程序运行时被实例化。但这样的设计虽然已经达到了“封装变化”的目的,但在创建PetShopFactory对象时,仍不可避免的出现了具体的类SQLServerFactory,也即是说,程序在这个层面上产生了与 SQLServerFactory的强依赖。一旦整个系统要求支持Oracle,那么还需要修改这行代码为:

PetShopFactory factory = new oracleFactory();

修改代码的这种行为显然是不可接受的。解决的办法是“依赖注入”。“依赖注入”的功能通常是用专门的IoC容器提供的,在Java平台下,这样的容器包括Spring,PicoContainer等。而在.Net平台下,最常见的则是https://www.doczj.com/doc/299484799.html,。不过,在PetShop 系统中,并不需要专门的容器来实现“依赖注入”,简单的做法还是利用配置文件和反射功能来实现。也就是说,我们可以在web.config文件中,配置好具体的Factory对象的完整的类名。然而,当我们利用配置文件和反射功能时,具体工厂的创建就显得有些“画蛇添足”了,我们完全可以在配置文件中,直接指向具体的数据库对象实现类,例如PetShop.SQLServerDAL.IOrder。那么,抽象工厂模式中的相关工厂就可以简化为一个工厂类了,所以我将这种模式称之为“具有简单工厂特质的抽象工厂模式”,其类图如下:

DataAccess类完全取代了前面创建的工厂类体系,它是一个sealed类,其中创建各种数据对象的方法,均为静态方法。之所以能用这个类达到抽象工厂的目的,是因为配置文件和反射的运用,如下的代码片断所示:

public sealed class DataAccess

{

// Look up the DAL implementation we should be using

private static readonly string path = ConfigurationManager.AppSettings[”WebDAL”]; private static readonly string orderPath =

Confi gurationManager.AppSettings[”OrdersDAL”];

public static PetShop.IDAL.IOrder CreateOrder()

{

string className = orderPath + “.Order”;

return

(PetShop.IDAL.IOrder)Assembly.Load(orderPath).CreateInstance(className);

}

}

在PetShop中,这种依赖配置文件和反射创建对象的方式极其常见,包括IBLLStategy、CacheDependencyFactory 等等。这些实现逻辑散布于整个PetShop系统中,在我看来,是可以在此基础上进行重构的。也就是说,我们可以为整个系统提供类似于“Service Locator”的实现:

public static class ServiceLocator

{

private static readonly string dalPath = ConfigurationManager.AppSettings[”WebDAL”]; private static readonly string orderPath =

ConfigurationManager.AppSettings[”OrdersDAL”];

//……

private static readonly string orderStategyPath =

ConfigurationManager.AppSettings[”OrderStrategyAssembly”];

public static object LocateDALObject(string className)

{

string fullPath = dalPath + “.” + className;

return Assembly.Load(dalPath).CreateInstance(fullPath);

}

public static object LocateDALOrderObject(string className)

{

string fullPath = orderPat h + “.” + className;

return Assembly.Load(orderPath).CreateInstance(fullPath);

}

public static object LocateOrderStrategyObject(string className)

{

string fullPath = orderStategyPath + “.” + className;

return Assembly.Load(orderStategyPath).CreateInstance(fullPath);

}

//……

}

那么和所谓“依赖注入”相关的代码都可以利用ServiceLocator来完成。例如类DataAccess就可以简化为:

public sealed class DataAccess

{

public static PetShop.IDAL.IOrder CreateOrder()

{

return (PetShop.IDAL.IOrder)ServiceLocator. LocateDALOrderObject(”Order”); }

}

通过ServiceLocator,将所有与配置文件相关的namespace值统一管理起来,这有利于各种动态创建对象的管理和未来的维护。

petshop4.0 详解之三(PetShop数据访问层之消息处理)

PetShop数据访问层之消息处理。MSMQMessaging模块中,Order对象实现了IMessaging模块中定义的接口 IOrder,同时它还继承了基类PetShopQueue,其定义如下:public class order:PetShopQueue,

PetShop.IMessaging.IOrder方法的实现代码如下: public new orderInfo Receive() { // This method involves in distributed transaction and need Automatic Transaction type base.transactionType = MessageQueueTransactionType.Automatic; return

(OrderInfo)((Message)base.Receive()).Body; }

petshop4.0 详解之四(PetShop之https://www.doczj.com/doc/299484799.html,缓存)

如果对微型计算机硬件系统有足够的了解,那么我们对于Cache这个名词一定是耳熟能详的。在CPU以及主板的芯片中,都引入了这种名为高速缓冲存储器(Cache)的技术。因为Cache的存取速度比内存快,因而引入Cache能够有效的

解决CPU与内存之间的速度不匹配问题。硬件系统可以利用 Cache存储CPU访问

概率高的那些数据,当CPU需要访问这些数据时,可以直接从Cache中读取,而

不必访问存取速度相对较慢的内存,从而提高了 CPU的工作效率。软件设计借鉴

了硬件设计中引入缓存的机制以改善整个系统的性能,尤其是对于一个数据库驱动的Web应用程序而言,缓存的利用是不可或缺的,毕竟,数据库查询可能是整个Web站点中调用最频繁但同时又是执行最缓慢的操作之一,我们不能被它老迈的

双腿拖缓我们前进的征程。缓存机制正是解决这一缺陷的加速器。

4.1 https://www.doczj.com/doc/299484799.html,缓存概述

作为.Net框架下开发Web应用程序的主打产品,https://www.doczj.com/doc/299484799.html,充分考虑了缓存机制。

通过某种方法,将系统需要的数据对象、Web页面存储在内存中,使得Web站点

在需要获取这些数据时,不需要经过繁琐的数据库连接、查询和复杂的逻辑运算,就可以“触手可及”,如“探囊取物”般容易而快速,从而提高整个Web系统的性能。

https://www.doczj.com/doc/299484799.html,提供了两种基本的缓存机制来提供缓存功能。一种是应用程序缓存,它

允许开发者将程序生成的数据或报表业务对象放入缓存中。另外一种缓存机制是页输出缓存,利用它,可以直接获取存放在缓存中的页面,而不需要经过繁杂的对该页面的再次处理。

应用程序缓存其实现原理说来平淡无奇,仅仅是通过https://www.doczj.com/doc/299484799.html,管理内存中的缓存

空间。放入缓存中的应用程序数据对象,以键/值对的方式存储,这便于用户在访

问缓存中的数据项时,可以根据key值判断该项是否存在缓存中。

放入在缓存中的数据对象其生命周期是受到限制的,即使在整个应用程序的生命周期里,也不能保证该数据对象一直有效。https://www.doczj.com/doc/299484799.html,可以对应用程序缓存进行管理,例如当数据项无效、过期或内存不足时移除它们。此外,调用者还可以通过CacheItemRemovedCallback委托,定义回调方法使得数据项被移除时能够通知用户。

在.Net Framework中,应用程序缓存通过System.Web.Caching.Cache类实现。它是

一个密封类,不能被继承。对于每一个应用程序域,都要创建一个Cache类的实例,其生命周期与应用程序域的生命周期保持一致。我们可以利用Add或Insert方法,将数据项添加到应用程序缓存中,如下所示:

Cache["First"] = "First Item";

Cache.Insert("Second", "Second Item");

我们还可以为应用程序缓存添加依赖项,使得依赖项发生更改时,该数据项能够从缓存中移除:

string[] dependencies = {"Second"};

Cache.Insert("Third", "Third Item",

new System.Web.Caching.CacheDependency(null, dependencies));

与之对应的是缓存中数据项的移除。前面提到https://www.doczj.com/doc/299484799.html,可以自动管理缓存中项的

移除,但我们也可以通过代码编写的方式显式的移除相关的数据项:

Cache.Remove("First");

相对于应用程序缓存而言,页输出缓存的应用更为广泛。它可以通过内存将处理后的https://www.doczj.com/doc/299484799.html,页面存储起来,当客户端再一次访问该页面时,可以省去页面处理的

过程,从而提高页面访问的性能,以及Web服务器的吞吐量。例如,在一个电子

商务网站里,用户需要经常查询商品信息,这个过程会涉及到数据库访问以及搜

索条件的匹配,在数据量较大的情况下,如此的搜索过程是较为耗时的。此时,利用页输出缓存就可以将第一次搜索得到的查询结果页存储在缓存中。当用户第二

次查询时,就可以省去数据查询的过程,减少页面的响应时间。

页输出缓存分为整页缓存和部分页缓存。我们可以通过@OutputCache指令完成对Web页面的输出缓存。它主要包含两个参数: Duration和VaryByParam。Duration

参数用于设置页面或控件进行缓存的时间,其单位为秒。如下的设置表示缓存在

60秒内有效:

<%@ OutputCache Duration=“60“ VaryByParam=“none“ %>

只要没有超过Duration设置的期限值,当用户访问相同的页面或控件时,就可以

直接在缓存中获取。

使用VaryByParam参数可以根据设置的参数值建立不同的缓存。例如在一个输出

天气预报结果的页面中,如果需要为一个ID为txtCity的TextBox控件建立缓存,

其值将显示某城市的气温,那么我们可以进行如下的设置:

<%@ OutputCache Duration=”60” VaryByParam=”txtCity” %>

如此一来,https://www.doczj.com/doc/299484799.html,会对txtCity控件的值进行判断,只有输入的值与缓存值相同,才从缓存中取出相应的值。这就有效地避免了因为值的不同而导致输出错误的数据。

利用缓存的机制对性能的提升非常明显。通过ACT(Application Center Test)的测试,可以发现设置缓存后执行的性能比未设置缓存时的性能足足提高三倍多。

引入缓存看来是提高性能的“完美”解决方案,然而“金无足赤,人无完人”,缓存机

制也有缺点,那就是数据过期的问题。一旦应用程序数据或者页面结果值发生的

改变,那么在缓存有效期范围内,你所获得的结果将是过期的、不准确的数据。我们可以想一想股票系统利用缓存所带来的灾难,当你利用错误过期的数据去分析

股市的风云变幻时,你会发现获得的结果真可以说是“失之毫厘,谬以千里”,看似大好的局面就会像美丽的泡沫一样,用针一戳,转眼就消失得无影无踪。

那么我们是否应该为了追求高性能,而不顾所谓“数据过期”所带来的隐患呢?显然,在类似于股票系统这种数据更新频繁的特定场景下,数据过期的糟糕表现甚至比

低效的性能更让人难以接受。故而,我们需要在性能与数据正确性间作出权衡。所幸的是,.Net Framework 2.0引入了一种新的缓存机制,它为我们的“鱼与熊掌兼得”带来了技术上的可行性。

.Net 2.0引入的自定义缓存依赖项,特别是基于MS-SQL Server的SqlCacheDependency特性,使得我们可以避免“数据过期”的问题,它能够根据数据库中相应数据的变化,通知缓存,并移除那些过期的数据。事实上,在PetShop

4.0中,就充分地利用了SqlCacheDependency特性。

4.2 SqlCacheDependency特性

SqlCacheDependency特性实际上是通过System.Web.Caching.SqlCacheDependency

类来体现的。通过该类,可以在所有支持的SQL Server版本(7.0,2000,2005)

上监视特定的SQL Server数据库表,并创建依赖于该表以及表中数据行的缓存项。当数据表或表中特定行的数据发生更改时,具有依赖项的数据项就会失效,并自动从 Cache中删除该项,从而保证了缓存中不再保留过期的数据。

由于版本的原因,SQL Server 2005完全支持SqlCacheDependency特性,但对于

SQL Server 7.0和SQL Server 2000而言,就没有如此幸运了。毕竟这些产品出现在.Net Framework 2.0之前,因此它并没有实现自动监视数据表数据变化,通知https://www.doczj.com/doc/299484799.html,的功能。解决的办法就是利用轮询机制,通过https://www.doczj.com/doc/299484799.html,进程内的一个线

程以指定的时间间隔轮询SQL Server数据库,以跟踪数据的变化情况。

要使得7.0或者2000版本的SQL Server支持SqlCacheDependency特性,需要对数

据库服务器执行相关的配置步骤。有两种方法配置SQL Server:使用aspnet_regsql

命令行工具,或者使用SqlCacheDependencyAdmin类。

4.2.1 利用aspnet_regsql工具

aspnet_regsql工具位于Windows\https://www.doczj.com/doc/299484799.html,\Framework\[版本]文件夹中。如果直接双击该工具的执行文件,会弹出一个向导对话框,提示我们完成相应的操作:

图4-1 aspnet_regsql工具

如图4-1所示中的提示信息,说明该向导主要用于配置SQL Server数据库,如membership,profiles等信息,如果要配置SqlCacheDependency,则需要以命令行的方式执行。以 PetShop 4.0为例,数据库名为MSPetShop4,则命令为:

aspnet_regsql -S localhost -E -d MSPetShop4 -ed

以下是该工具的命令参数说明:

-? 显示该工具的帮助功能;

-S 后接的参数为数据库服务器的名称或者IP地址;

-U 后接的参数为数据库的登陆用户名;

-P 后接的参数为数据库的登陆密码;

-E 当使用windows集成验证时,使用该功能;

-d 后接参数为对哪一个数据库采用SqlCacheDependency功能;

-t 后接参数为对哪一个表采用SqlCacheDependency功能;

-ed 允许对数据库使用SqlCacheDependency功能;

-dd 禁止对数据库采用SqlCacheDependency功能;

-et 允许对数据表采用SqlCacheDependency功能;

-dt 禁止对数据表采用SqlCacheDependency功能;

-lt 列出当前数据库中有哪些表已经采用sqlcachedependency功能。

以上面的命令为例,说明将对名为MSPetShop4的数据库采用SqlCacheDependency

功能,且SQL Server采用了windows集成验证方式。我们还可以对相关的数据表

执行aspnet_regsql命令,如:

aspnet_regsql -S localhost -E -d MSPetShop4 -t Item -et

aspnet_regsql -S localhost -E -d MSPetShop4 -t Product -et

aspnet_regsql -S localhost -E -d MSPetShop4 -t Category -et

当执行上述的四条命令后,aspnet_regsql工具会在MSPetShop4数据库中建立一个

名为 AspNet_SqlCacheTablesForChangeNotification的新数据库表。该数据表包含三

个字段。字段tableName记录要追踪的数据表的名称,例如在PetShop 4.0中,要

记录的数据表就包括Category、Item和Product。notificationCreated字段记录开始

追踪的时间。 changeId作为一个类型为int的字段,用于记录数据表数据发生变化

的次数。如图4-2所示:

图4-2 AspNet_SqlCacheTablesForChangeNotification数据表

除此之外,执行该命令还会为MSPetShop4数据库添加一组存储过程,为

https://www.doczj.com/doc/299484799.html,提供查询追踪的数据表的情况,同时还将为使用了 SqlCacheDependency

的表添加触发器,分别对应Insert、Update、Delete等与数据更改相关的操作。例

如Product数据表的触发器:

Create TRIGGER dbo.[Product_AspNet_SqlCacheNotification_Trigger] ON [Product]

FOR Insert, Update, Delete AS BEGIN

SET NOCOUNT ON

EXEC dbo.AspNet_SqlCacheUpdateChangeIdStoredProcedure N'Product'

END

其中,AspNet_SqlCacheUpdateChangeIdStoredProcedure即是工具添加的一组存储

过程中的一个。当对 Product数据表执行Insert、Update或Delete等操作时,就会

激活触发器,然后执行AspNet_SqlCacheUpdateChangeIdStoredProcedure存储过程。其执行的过程就是修改 AspNet_SqlCacheTablesForChangeNotification数据表的changeId字段值:

Create PROCEDURE dbo.AspNet_SqlCacheUpdateChangeIdStoredProcedure

@tableName NVARCHAR(450)

AS

BEGIN

Update dbo.AspNet_SqlCacheTablesForChangeNotification WITH (ROWLOCK) SET changeId = changeId + 1

Where tableName = @tableName

END

GO

4.2.2 利用SqlCacheDependencyAdmin类

我们也可以利用编程的方式来来管理数据库对SqlCacheDependency特性的使用。

该类包含了五个重要的方法:

表4-1 SqlCacheDependencyAdmin类的主要方法

假设我们定义了如下的数据库连接字符串:

const string connectionStr = "Server=localhost;Database=MSPetShop4";

那么为数据库MSPetShop4启用SqlCacheDependency对象更改通知的实现为:protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

SqlCacheDependencyAdmin.EnableNotifications(connectionStr);

}

}

为数据表Product启用SqlCacheDependency对象更改通知的实现则为:SqlCacheDependencyAdmin.EnableTableForNotifications(connectionStr, "Product");

如果要调用表4-1中所示的相关方法,需要注意的是访问SQL Server数据库的帐户必须具有创建表和存储过程的权限。如果要调用EnableTableForNotifications方法,还需要具有在该表上创建SQL Server触发器的权限。

虽然说编程方式赋予了程序员更大的灵活性,但aspnet_regsql工具却提供了更简单的方法实现对SqlCacheDependency的配置与管理。PetShop 4.0采用的正是

内分泌科考试试题及答案解析

内分泌科出科临床考试试题(一) 姓名毕业学校分数 一、单选题:每题2分 1.糖尿病是一组病因不明的内分泌代谢病,其共同主要标志是() A 多饮、多尿、多食 B 乏力 C 消瘦 D 高血糖 E 尿糖阳性 2.下述哪一项符合淡漠型甲亢() A.突眼征明显 B.心悸、多食、多汗、无力明显 C.甲状腺肿大明显 D.T4不增高,而只有T3增高 E.常见于老年人,易发生甲亢危象 3.内分泌系统的反馈调节是指: ( ) A.神经系统对内分泌系统的调节. B.内分泌系统对神经系统的调节 C.免疫系统对内分泌系统的调节; D.免疫系统对神经系统的调节; E.下丘脑一垂体一靶腺之间的相互调节 4.常用于内分泌功能减退的动态功能试验是: ( ) A.兴奋试验 B.抑制试验; C.激发试验 D.拮抗试验; E.负荷试验 5.1型糖尿病与2型糖尿病,最主要的区别在于() A 症状轻重不同 B 发生酮症酸中毒的倾向不同 C 对胰岛素的敏感性不同 D 胰岛素的基础水平与释放曲线不同 E 血糖稳定性不同 6.引起ACTH升高的疾病是: ( ) A.Sheehan综合征 B.肾上腺皮质腺瘤 C.Addison病 D.原发性醛固酮增多症 E.PRI 瘤 7.血中直接调节胰岛素分泌而且经常起调节作用的重要因素是 A 游离脂肪酸 B 血糖浓度 C 肾上腺素 D 胃肠道激素 E 血酮体浓度 8.Sheehan综合征患者各靶腺功能减退替代治疗应先补充: ( ) A.性激素 B.甲状腺激素 C.糖皮质激素 D.ACTH E.GnRH 9.对于慢性淋巴细胞性甲状腺炎的描述,以下哪项是错误的() A.可合并恶性贫血 B.多见于中年妇女 C.可伴有甲状腺功能亢进 D.可合并1型糖尿病 E.诊断明确,宜手术治疗 10.糖尿病性血管病变,最具有特征性的是()

四大波谱基本概念以及解析综述

四大谱图基本原理及图谱解析 一.质谱 1.基本原理: 用来测量质谱的仪器称为质谱仪,可以分成三个部分:离子化器、质量分析器与侦测器。其基本原理是使试样中的成分在离子化器中发生电离,生成不同荷质比的带正电荷离子,经加速电场的作用,形成离子束,进入质量分析器。在质量分析器中,再利用电场或磁场使不同质荷比的离子在空间上或时间上分离,或是透过过滤的方式,将它们分别聚焦到侦测器而得到质谱图,从而获得质量与浓度(或分压)相关的图谱。 在质谱计的离子源中有机化合物的分子被离子化。丢失一个电子形成带一个正电荷的奇电子离子(M+·)叫分子离子。它还会发生一些化学键的断裂生成各种 碎片离子。带正电荷离子的运动轨迹:经整理可写成: 式中:m/e为质荷比是离子质量与所带电荷数之比;近年来常用m/z表示质荷比;z表示带一个至多个电荷。由于大多数离子只带一个电荷,故m/z就可以看作离子的质量数。 质谱的基本公式表明: (1)当磁场强度(H)和加速电压(V)一定时,离子的质荷比与其在磁场中运动半径的平方成正比(m/z ∝r2m),质荷比(m/z)越大的离子在磁场中运动的轨道半径(rm)也越大。这就是磁场的重要作用,即对不同质荷比离子的色散作用。 (2)当加速电压(V)一定以及离子运动的轨道半径(即收集器的位置)一定时,离子的质荷比(m/z)与磁场强度的平方成正比(m/z∝H2)改变H即所谓的磁场扫描,磁场由小到大改变,则由小质荷比到大质荷比的离子依次通过收集狭缝,分别被收集、检出和记录下来。 (3)若磁场强度(H)和离子的轨道半径(rm)一定时,离子的质荷比(m/z)与加速电压(V)成反比(m/z∝1/V),表明加速电压越高,仪器所能测量的质量范

内分泌系统讲解

内分泌系统 概述 内分泌系统endocrine system 是神经系统以外主导支配人体的另一套调节系统,由内分泌腺和内分泌组织构成。主要功能是与神经系统一起共同调节人体的新陈代谢、生长发育和生殖过程等生理功能的活动,以保持机体内环境的平衡与稳定。 内分泌腺属于无管腺,分泌物称激素hormone,直接进入血液或淋巴,随血循环运输至全身各处,调节各器官的活动。内分泌腺还有丰富的血液供应和植物神经分布,其结构和功能活动有显著的年龄变化。体内主要内分泌腺有脑垂体、松果体、甲状腺、甲状旁腺、肾上腺、性腺等。内分泌腺的体积和重量都很小,最大的甲状腺仅几十克;有的内分泌组织是一些细胞团,分散于某些器官内,如:胰岛、卵泡、黄体等。一种类型的激素只作用于特定的器官、组织或细胞,又称为靶器官、靶组织或靶细胞。 内分泌激素在通过细胞膜时,因细胞膜能感受细胞表面刺激作用,在穿越细胞膜过程中,激素同样以二种方式进行,一种方式被限制在蛋白质性质通道中(每一通道只允许一种分子或离子通过,如葡萄糖、氨基酸、钾、钠、钙、氯等受扩散梯度影响的被动运输以及依靠能耗的主动运输)经通道开关被穿膜运输;另一种方式是脂溶性物质如甾体激素等,直接穿越膜的脂类部分,不必通过蛋白质通道进入细胞内,靠细胞膜内陷形成的液泡“内吞泡”又叫胞吞泡方式进入细胞和“外排泡”又叫胞吐泡方式将内涵物释放到细胞外。细胞膜上带有多种多样的受体分子,只对某种刺激发生反应,如胰岛素、乙酰胆碱和低密度脂蛋白的受体;另一些受体则可被普通因子所激活,如与其它细胞或无机物表面接触,细胞表面受到刺激可造成跨膜电位的改变。激素在运动员生理代谢过程中为保证最大限度地动员体能、控制能量代谢、运动后体能恢复等均具有极大作用。血液中激素应维持正常水平,过多过少均会导致机体功能紊乱,甚至产生严重后果。各种激素分泌水平还受血液中代谢产物含量或其它激素浓度的影响与调节。 一、甲状腺 甲状腺thyroid gland是人体内最大的内分泌腺。位于第5颈椎至第1胸椎水平,既甲状软骨的中部和气管上段前面和两侧,分左、右两个侧叶,中间以峡部相连,呈粉红色“H”形,重约20—40克。少数人甲状腺峡缺如,半数人自峡部向上伸出一个细长的锥体叶,可延伸至舌骨处。 甲状腺富含血管,外包颈深筋膜,深入腺内将甲状腺实质分若干大小不同的团块或小叶。甲状腺实质有两类细胞组成,一类细胞为大小、形状不规则的甲状腺滤泡,滤泡表面围以单层立方上皮,每一滤泡中央为胶体(被伊红染成粉红色,含碘化球蛋白),即甲状腺球蛋白储存地。甲状腺滤泡位于细蜜的结缔组织之间,内含丰富的毛细血管和毛细淋巴管和交感神经纤维。甲状腺滤泡上皮细胞通过吐胞作用,入滤泡腔后形成甲状腺球蛋白,以此构成甲状腺激素三碘甲腺原氨酸(T3)和四碘甲腺原氨酸(T4)的前体。甲状腺滤泡细胞具有合成和胞吐甲状腺球蛋白(入滤泡腔)并释放甲状腺素(T3和T4)入毛细血管的作用。另一类细胞为滤泡旁细胞,靠近滤泡细胞外缘,比滤泡细胞大,形似卵圆或多边形,单个或小群分散出现在滤泡细胞之间,但不入滤泡腔。根据免疫化学研究泡内可能储存有甲状腺降钙素,用以调节血钙代谢。控制甲状腺降钙素释放的主要因子是血清钙浓度,血钙浓度升高可刺激降钙素的分泌,而低钙血症可抑制其分泌。 甲状腺的主要功能具有增进机体物质代谢,维持人体正常生长发育,尤其对骨骼和神经系统正常发育起着重要作用。甲状腺素分泌过旺,可引起功能亢进,造成眼突眼性甲状腺肿,简称为“甲亢”。表现为心跳加速、神经过敏、体重减轻、眼球突出等。儿童甲状腺素分泌不足

有机波谱综合谱图解析

综合谱图解析 1.某未知物分子式为C5H12O,它的质谱、红外光谱以及核磁共振谱如图,它的紫外吸收光谱在200 nm以上没有吸收,试确定该化合物结构。并解释质谱中m/z 57和31的来源。

2?待鉴定的化合物(I )和(II )它们的分子式均为C 8H 12O 4。它们的质谱、红外 光谱和核磁共振谱见图。也测定了它们的紫外吸收光谱数据:(I )入max 223nm , S 4100; (II )入max 219nm 2300,试确定这两个化合物。 未之物(I )的谱图 127 100-1 - 10 10 曲 凹 M 亠亲) ? 册 -J P 科 J S W

未之物(II)的谱图

3、某未知物的分子式为C 9H 10O 2,紫外光谱数据表明:该物入max 在26 4、262 I? 257、252nm (&maxIOI 、158、147、194、153);红外、核磁数据如图所示,试 0 LOtMio. sopoiggg 翌g 嚴效 却31卿]卿丄电00 uyo iw mo 推断其结构,并说明理 由。 ! \ \ 「 1 CCh 1 I J —' 1 1 _■ ____ __ _ ,B . _ ,- T J.亠」亠亠」亠 | * --------------- U 5>0 4. 0 d/ppm

4.某未知物C ii H i6的UV 、IR 、中NMR 、MS 谱图及13C NMR 数据如下,推导 未知物结构。 序号 S c ( ppm ) 碳原子个数 序号 S c ( ppm ) 碳原子个数 1 143.0 1 6 32.0 1 2 128.5 2 7 31.5 1 3 128.0 2 8 22.5 1 4 125.5 1 9 10.0 1 5 36.0 1 MS(E[] 100 so 30D A/tnn 350 血 >0624*68<)2 4 內 OS n 2 2 98765^43211 0SU 'H bMRfCDCI^

四大图谱综合解析

2013/12/2四大图谱综合解析[解] 从分子式CHO,求得不饱和度为零,故未知物应为512饱和脂肪族化合物。 1 某未知物分子式为CHO,它的质谱、红外光谱以及核磁共振谱如图,512未知物的红外光谱是在CCl溶液中测定的,样品的CCl稀溶液它的紫外吸收光谱在200 nm以上没有吸收,试确定该化合物结构。44-1的红外光谱在3640cm处有1尖峰,这是游离O H基的特征吸收峰。样品的CCl4浓溶液在3360cm-1处有1宽峰,但当溶液稀释后复又消失,说明存在着分子间氢键。未知物核磁共振谱中δ4. 1处的宽峰,经重水交换后消失。上述事实确定,未知物分子中存在着羟基。未知物核磁共振谱中δ0.9处的单峰,积分值相当3个质子,可看成是连在同一碳原子上的3个甲基。δ3.2处的单峰,积分值相当2个质子,对应1个亚甲基,看来该次甲基在分子中位于特丁基和羟基之间。质谱中从分子离子峰失去质量31(-CHOH)部分而形成基2峰m/e57的事实为上述看法提供了证据,因此,未知物的结构CH是3CCl稀溶液的红外光谱, CCl浓溶液44 CHOH C HC在3360cm-1处有1宽峰23 CH3 2. 某未知物,它的质谱、红外光谱以及核磁共振谱如图,它的根据这一结构式,未知物质谱中的主要碎片离子得到了如下紫外吸收光谱在210nm以上没有吸收,确定此未知物。解释。CH CH3+3.+ +C CH HCOH CHOH C HC3223 m/e31CH CH33 m/e88m/e57-2H -CH-H-CH33m/e29 CH m/e73CHC23+ m/e41 [解] 在未知物的质谱图中最高质荷比131处有1个丰度很小的峰,应从分子量减去这一部分,剩下的质量数是44,仅足以组为分子离子峰,即未知物的分子量为131。由于分子量为奇数,所以未成1个最简单的叔胺基。知物分子含奇数个氮原子。根据未知物的光谱数据中无伯或仲胺、腈、CH3N酞胺、硝基化合物或杂芳环化合物的特征,可假定氮原子以叔胺形式存CH3在。红外光谱中在1748 cm-1处有一强羰基吸收带,在1235 cm-1附近有1典型正好核磁共振谱中δ2. 20处的单峰(6H ),相当于2个连到氮原子上的宽强C-O-C伸缩振动吸收带,可见未知物分子中含有酯基。1040 的甲基。因此,未知物的结构为:-1cm处的吸收带则进一步指出未知物可能是伯醇乙酸酯。O核磁共振谱中δ1.95处的单峰(3H),相当1个甲基。从它的化学位移来CH3N看,很可能与羰基相邻。对于这一点,质谱中,m/e43的碎片离子CHCHCHOC223CH(CHC=O)提供了有力的证据。在核磁共振谱中有2个等面积(2H)的三重33峰,并且它们的裂距相等,相当于AA’XX'系统。有理由认为它们是2个此外,质谱中的基峰m /e 58是胺的特征碎片离子峰,它是由氮原子相连的亚甲-CH-CH,其中去屏蔽较大的亚甲基与酯基上的氧原子22的β位上的碳碳键断裂而生成的。结合其它光谱信息,可定出这个相连。碎片为至此,可知未知物具有下述的部分结构:CHO3NCH2CHCHCHOCCH32231 2013/12/23.某未知物CH的UV、IR、1H NMR、MS谱图及13C NMR数据如下,推[解] 1. 从分子式CH,计算不饱和度Ω=4;11161116导未知物结构。 2. 结构式推导未知物碳谱数据UV:240~275 nm 吸收带具有精细结构,表明化合物为芳烃;序号δc序号δc碳原子碳原子IR ::695、740 cm-1 表明分子中含有单取代苯环;(ppm)个数(ppm)个数MS :m/z 148为分子离子峰,其合理丢失一个碎片,得到m/z 91的苄基离子;1143.01632.01 313C NMR:在(40~10)ppm 的高场区有5个sp杂化碳原子;2128.52731.51 1H NMR:积分高度比表明分子中有1个CH和4个-CH-,其中(1.4~1.2)3128.02822.5132 ppm为2个CH的重叠峰;4125.51910.012因此,此化合物应含有一个苯环和一个CH的烷基。511536.01 1H NMR 谱中各峰裂分情况分析,取代基为正戊基,即化合物的结构为:23

高中生物知识点解析:内分泌系统

2019年高中生物知识点解析:内分泌系统【】2019年高中生物知识点解析:内分泌系统是查字典生物网为您整理的最新学习资料,请您详细阅读! 1、甲状腺: 位于咽下方。可分泌甲状腺激素。 2、肾上腺: 分皮质和髓质。皮质可分泌激素约50种,都属于固醇类物质,大体可为三类: ①糖皮质激素如可的松、皮质酮、氢化可的松等。他们的作用是使蛋白质和氨基酸转化为葡萄糖;使肝脏将氨基酸转化为糖原;并使血糖增加。此外还有抗感染和加强免疫功能的作用。 ②盐皮质激素如醛固酮、脱氧皮质酮等。此类激素的作用是促进肾小管对钠的重吸收,抑制对钾的重吸收,因而也促进对钠和水的重吸收。 ③髓质可分泌两种激素即肾上腺素和甲肾上腺素,两者都是氨基酸的衍生物,功能也相似,主要是引起人或动物兴奋、激动,如引起血压上升、心跳加快、代谢率提高,同时抑制消化管蠕动,减少消化管的血流,其作用在于动员全身的潜力应付紧急情况。 3、脑垂体: 分前叶(腺性垂体)和后叶(神经性垂体),后叶与下丘脑相连。前叶可分泌生长激素(191氨基酸)、促激素(促甲状腺激素、促肾上腺皮质激素、促性腺激素)、催乳素(199氨基酸)。后叶的激素有催产素(OXT)

和抗利尿激素(ADH)(升压素)(都为含9个氨基酸的短肽),是由下丘脑分泌后运至垂体后叶的。 4、下丘脑: 是机体内分泌系统的总枢纽。可分泌激素如促肾上腺皮质激素释放因子、促甲状腺激素释放激素、促性腺激素释放激素、生长激素释放激素、生长激素释放抑制激素、催乳素释放因子、催乳素释放制因子等。 5、性腺: 主要是精巢和卵巢。可分泌雄性激素、雌性激素、孕酮(黄体酮)。6、胰岛: a细胞可分泌胰高血糖素(29个氨基酸的短肽), b细胞可分泌胰岛素(51个氨基酸的蛋白质),两者相互拮抗。 7、胸腺: 分泌胸腺素,有促进淋巴细胞的生长与成熟的作用,因而和机体的免疫功能有关。 查字典生物网的编辑为大家带来的2019年高中生物知识点解析:内分泌系统,希望能为大家提供帮助。

NMR,VU,IR,MS四大图谱解析解析

13C-NMR谱图解析 13C-NMR谱图解析流程 1.分于式的确定 2.由宽带去偶语的谱线数L与分子式中破原子数m比较,判断分子的对称性. 若L=m,每一个碳原子的化学位移都不相同,表示分子没有对称性;若L

基团类型Qc/ppm 烷0-60 炔60-90 烯,芳香环90-160 羰基160 4.组合可能的结构式 在谱线归属明确的基础上,列出所有的结构单元,并合理地组合成一个或几个可能的工作结构。 5.确定结构式 用全部光谱材料和化学位移经验计算公式验证并确定惟一的或

可能性最大的结构式,或与标准谱图和数据表进行核对。经常使用的标准谱图和数据表有: 经验计算参数 1.烷烃及其衍生物的化学位移 一般烷烃灸值可用Lindeman-Adams经验公式近似地计算: ∑ Qc5.2 =nA - + 式中:一2.5为甲烷碳的化学位移九值;A为附加位移参数,列于下表,为具有某同一附加参数的碳原子数。 表2 注:1(3).1(4)为分别与三级碳、四级碳相连的一级碳;2(3)为与三级碳相连的二级碳,依此类推。 取代烷烃的Qc为烷烃的取代基效应位移参数的加和。表4一6给出各种取代基的位移参数

四大图谱综合解析

2013/12/2
四大图谱综合解析
1 某未知物分子式为C5 H12 O,它的质谱、红外光谱以及核磁共振谱如图,
它的紫外吸收光谱在200 nm以上没有吸收,试确定该化合物结构。
CCl4稀溶液的红外光谱, CCl4浓溶液 在3360cm-1处有1宽峰
[解] 从分子式C5H12O,求得不饱和度为零,故未知物应为 饱和脂肪族化合物。 未知物的红外光谱是在CCl4溶液中测定的,样品的CCl4稀溶液 的红外光谱在3640cm-1处有 1尖峰,这是游离 O H基的特征吸收 峰。样品的CCl4浓溶液在 3360cm-1处有 1宽峰,但当溶液稀释 后复又消失,说明存在着分子间氢键。未知物核磁共振谱中δ4. 1处的宽峰,经重水交换后消失。上述事实确定,未知物分子 中存在着羟基。 未知物核磁共振谱中δ0.9处的单峰,积分值相当3个质子,可 看成是连在同一碳原子上的3个甲基。δ3.2处的单峰,积分值 相当2个质子,对应1个亚甲基,看来该次甲基在分子中位于特 丁基和羟基之间。 质谱中从分子离子峰失去质量31(- CH2 OH)部分而形成基 峰m/e57的事实为上述看法提供了证据,因此,未知物的结构 CH3 是
H3C
C
CH3
CH2OH
根据这一结构式,未知物质谱中的主要碎片离子得到了如下 解释。
CH 3
2. 某未知物,它的质谱、红外光谱以及核磁共振谱如图,它的 紫外吸收光谱在210nm以上没有吸收,确定此未知物。
CH2
+ OH m/e31 -2H
+ . CH2OH
H3C
CH3
H3C
C
CH 3
C+
CH3
m/e88 -CH3 m/e29 m/e73
m/e57 -CH3 -H CH 3 C + CH 2
m/e41
[解] 在未知物的质谱图中最高质荷比131处有1个丰度很小的峰,应 为分子离子峰,即未知物的分子量为131。由于分子量为奇数,所以未 知物分子含奇数个氮原子。根据未知物的光谱数据中无伯或仲胺、腈、 酞胺、硝基化合物或杂芳环化合物的特征,可假定氮原子以叔胺形式存 在。 红外光谱中在1748 cm-1处有一强羰基吸收带,在1235 cm-1附近有1典型 的宽强C-O-C伸缩振动吸收带,可见未知物分子中含有酯基。1040 cm-1处的吸收带则进一步指出未知物可能是伯醇乙酸酯。 核磁共振谱中δ1.95处的单峰(3H),相当1个甲基。从它的化学位移来 看,很可能与羰基相邻。对于这一点,质谱中,m/e43的碎片离子 (CH3C=O)提供了有力的证据。在核磁共振谱中有2个等面积(2H)的三重 峰,并且它们的裂距相等,相当于AA’XX'系统。有理由认为它们是2个 相连的亚甲-CH2-CH2,其中去屏蔽较大的亚甲基与酯基上的氧原子 相连。 至此,可知未知物具有下述的部分结构:
O CH 2 CH 2 O C CH 3
从分子量减去这一部分,剩下的质量数是 44,仅足以组 成1个最简单的叔胺基。
CH 3 CH3 N
正好核磁共振谱中δ2. 20处的单峰(6H ),相当于2个连到氮原子上 的甲基。因此,未知物的结构为:
CH3 CH3 O N CH2 CH2 O C CH3
此外,质谱中的基峰m /e 58是胺的特征碎片离子峰,它是由氮原子 的β位上的碳碳键断裂而生成的。结合其它光谱信息,可定出这个 碎片为
CH3 CH3 N CH 2
1

综合谱图解析

1、某未知物分子式为C5H12O,它的质谱、红外光谱以及核磁共振谱如图,它的紫外吸收光谱在200 nm以上没有吸收,试确定该化合物结构。 1 : 2 : 9 [解] 从分子式C5H12O,求得不饱和度为零,故未知物应为饱和脂肪族化合物。 未知物的红外光谱是在CCl4溶液中测定的,样品的CCl4稀溶液的红外光谱在3640cm-1处有1尖峰,这是游离O H基的特征吸收峰。样品的CCl4浓溶液在

3360cm -1处有1宽峰,但当溶液稀释后复又消失,说明存在着分子间氢键。未知物核磁共振谱中δ4. 1处的宽峰,经重水交换后消失。上述事实确定,未知物分子中存在着羟基。 未知物核磁共振谱中δ0.9处的单峰,积分值相当3个质子,可看成是连在同一碳原子上的3个甲基。δ3.2处的单峰,积分值相当2个质子,对应1个亚甲基,看来该次甲基在分子中位于特丁基和羟基之间。 质谱中从分子离子峰失去质量31(-CH 2OH )部分而形成基峰m/e57的事实为上述看法提供了证据,因此,未知物的结构是 C CH 3 H 3C CH 3 CH 2OH 根据这一结构式,未知物质谱中的主要碎片离子得到了如下解释。 C CH 3 H 3C CH 3 CH 2OH +. C + CH 3 CH 3 H 3C CH 2 OH + m/e31m/e88 m/e57 -2H -CH 3 -CH 3-H CH 3 C CH 2 + m/e29 m/e73 m/e41 2、某未知物,它的质谱、红外光谱以及核磁共振谱如图,它的紫外吸收光谱在210nm 以上没有吸收,确定此未知物。

226 3 [解] 在未知物的质谱图中最高质荷比131处有1个丰度很小的峰,应为分子离子峰,即未知物的分子量为131。由于分子量为奇数,所以未知物分子含奇数个氮原子。根据未知物的光谱数据亚无伯或仲胺、腈、酞胺、硝基化合物或杂芳环化合物的特征,可假定氮原子以叔胺形式存在。 红外光谱中在1748 cm-1处有一强羰基吸收带,在1235 cm-1附近有1典型的宽强C-O-C伸缩振动吸收带,可见未知物分子中含有酯基。1040 cm-1处的吸

(完整版)卫星图像处理流程

卫星图像处理流程 一.图像预处理 1.降噪处理 由于传感器的因素,一些获取的遥感图像中,会出现周期性的噪声,我们必须对其进行消除或减弱方可使用。 (1)除周期性噪声和尖锐性噪声 周期性噪声一般重叠在原图像上,成为周期性的干涉图形,具有不同的幅度、频率、和相位。它形成一系列的尖峰或者亮斑,代表在某些空间频率位置最为突出。一般可以用带通或者槽形滤波的方法来消除。 消除尖峰噪声,特别是与扫描方向不平行的,一般用傅立叶变换进行滤波处理的方法比较方便。 图1 消除噪声前

图2 消除噪声后 (2)除坏线和条带 去除遥感图像中的坏线。遥感图像中通常会出现与扫描方向平行的条带,还有一些与辐射信号无关的条带噪声,一般称为坏线。一般采用傅里叶变换和低通滤波进行消除或减弱。 图3 去条纹前

图4 去条纹后 图5 去条带前

图6 去条带后 2.薄云处理 由于天气原因,对于有些遥感图形中出现的薄云可以进行减弱处理。 3.阴影处理 由于太阳高度角的原因,有些图像会出现山体阴影,可以采用比值法对其进行消除。二.几何纠正 通常我们获取的遥感影像一般都是Level2级产品,为使其定位准确,我们在使用遥感图像前,必须对其进行几何精纠正,在地形起伏较大地区,还必须对其进行正射纠正。特殊情况下还须对遥感图像进行大气纠正,此处不做阐述。 1.图像配准 为同一地区的两种数据源能在同一个地理坐标系中进行叠加显示和数学运算,必须先将其中一种数据源的地理坐标配准到另一种数据源的地理坐标上,这个过程叫做配准。(1)影像对栅格图像的配准 将一幅遥感影像配准到相同地区另一幅影像或栅格地图中,使其在空间位置能重合叠加显示。

四大谱图综合解析

3 待鉴定的化合物(I)和(II)它们的分子式均为C8H12O4。它们的质谱、红外光谱和核磁共振谱见图。也测定了它们的紫外吸收光谱数据:(I)λmax223nm,δ4100;(II)λmax219nm,δ2300,试确定这两个化合物。 未之物(I)的质谱 未之物(II)质谱

化合物(I)的红外光谱 化合物(II)的红外光谱 化合物(I)的核磁共振谱

化合物(II)的核磁共振谱 [解] 由于未知物(I)和(II)的分子式均为C8H12O4,所以它们的不饱和度也都是3,因此它们均不含有苯环。(I)和(II)的红外光谱呈现烯烃特征吸收,未知物(I):3080cm-1,(υ=C-H),1650cm-1(υ=C-C) 未知物(II)::3060cm-1 (υ=C-H),1645cm-1(υ=C-C) 与此同时两者的红外光谱在1730cm-1以及1150~1300 cm-1之间均具有很强的吸收带,说明(I)和(II)的分子中均具有酯基; (I)的核磁共振谱在δ6.8处有1单峰,(II)在δ6.2处也有1单峰,它们的积分值均相当2个质子。显然,它们都是受到去屏蔽作用影响的等同的烯烃质子。另外,(I)和(II )在δ4. 2处的四重峰以及在δ1.25处的三重峰,此两峰的总积分值均相当10个质子,可解释为是2个连到酯基上的乙基。因此(I)和(II)分子中均存在2个酯基。这一点,与它们分子式中都含有4个氧原子的事实一致。 几何异构体顺丁烯二酸二乙酯(马来酸二乙酯)和反丁烯二酸二乙酯(富马酸二乙酯)与上述分析结果一致。现在需要确定化合物([)和(II)分别相当于其中的哪一个。 COOEt COOEt COOEt EtOOC 顺丁烯二酸二乙酯反丁烯二酸二乙酯 利用紫外吸收光谱所提供的信息,上述问题可以得到完满解决。由于富马酸二乙酯分子的共平面性很好,在立体化学上它属于反式结构。而在顺丁烯二酸二乙酯中,由于2个乙酯基在空间的相互作用,因而降低了分子的共平面性,使共轭作用受到影响,从而使紫外吸收波长变短。

生理题目第十一章 内分泌说课讲解

第十一章内分泌 一、名词解释 1.激素2.旁分泌 3.自分泌 4.神经分泌 5.靶细胞 6.允许作用 7.下丘脑调节肽 8.促激素 9.应急反应 lO.应激反应 二、填空题 1.按分子结构和化学性质,将激素可分为两大类,即———和———。 2.内分泌细胞分泌的信使分子称为——,其作用的细胞称为————。 3.下丘脑基底部的促垂体区神经元分泌下丘脑调节肽,经————运送到————调节其分泌功能。 4.内分泌腺分泌水平的相对稳定是通过——机制实现的。 5.生长素的主要作用是———和———。 6.由神经垂体释放的激素,其生物合成部位是——。 7.人幼年缺乏生长素将患——;成年后生长素分泌过多则出现———。 8.幼年时缺乏T3、T4将患——;成年后缺乏T3、T4将患—— 9.肾上腺皮质分泌的激素有———、———、和———。 10.糖皮质激素浓度升高可引起血液中中性粒细胞数目——,淋巴细胞数目——,嗜酸性粒细胞数目——。 11.应急反应和应激反应的主要区别在于,前者主要是——系统活动的增强,而后者则是——系统活动的增强。 12.血糖水平升高可引起胰岛素分泌———。

13.胰岛A细胞主要产生的激素是——,B细肥产生的主要是——,D细胞产生的主要是———。 14.维生素D,的活性形式是——。 15.甲状腺功能亢进时,血胆固醇水平———于正常。 16.当体内甲状腺激素含量增高时,心脏活动———。 17.调节体内钙、磷代谢的激素是——、———、和维生素D3 18.蛋白餐或静脉注射氨基酸可使胰岛素分泌————。 三、选择题 (一)A型题 1.血中激素浓度很低,而生理效应十分明显是因为 A.激素的半衰期长 B.激素的特异性强 C.激素作用有靶细胞 D.激素间有相互作用 E.激素有高效能放大作用 2.关于含氮类激素的正确描述是 A.分子较大,不能透过细胞膜 B.不易被消化酶所破坏,故可口服使用 C.可直接与胞质内受体结合而发挥生物效应 D.全部是氨基酸衍生物 E.用基因调节学说来解释其作用机制 3.第二信使cAMP’的作用是激活 A.DNA酶 B.磷酸化酶’ C.蛋白激酶 D.腺苷酸环化酶, E.磷酸二酯酶 4.下列哪种激素属于含氮激素 A.1,25-二羟维生素D3 B.雌二醇 C.睾酮 D.醛固酮 E.促甲状腺激素 5.神经激素是指

卫星遥感数据的正射影像图的制作

卫星遥感数据的正射影像图的制作 【摘要】卫星遥感是一种采用人们通过航空技术发射在地球外层空间的人造卫星对地球地面、地面以上的空间以及外层太空天体进行综合性观测的技术。而卫星遥感所得数据在正射影像图的制作上应用价值广泛,本文通过阐述卫星遥感数据以及卫星影响图的来源以及所具有的特征,并分析了卫星遥感数据用于制作正射影图过程中出现的纠错、配准以及最后统一融合的方法及原理,简要介绍了正射影像图的构型、调色以及去重叠等数据信息处理的方式和过程。 【关键词】卫星遥感技术;数据;信息;正射影像图;制作 引言 21世纪信息科技时代的到来,卫星遥感技术也在不断的更新、完善之中。目前的卫星遥感技术在用于制作正射影像图方面效果显著,并且成图的精准度越来越高,远远超过比例尺地形图的精准度。卫星遥感技术在城市建设、城市规划以及了解环境状况和资源状况方面具有强大的支撑作用。采用卫星遥感技术制作的城市影像图具有目标辨认难度小、内容清晰、比例尺大以及转释较容易的优势,这项技术已经广泛应用于社会生产和发展的各个层面。该项技术还有助于治理生态环境、搜集专业信息、监测工程项目以及防止各种自然灾害等工作的开展。 1.国内外普遍流行的卫星影像图收集方式 随着新科技革命的不断深入,卫星遥感技术日新月异,目前国际上较为早期出现的卫星遥感技术是来自美国的Earth watch 卫星数据资源库的QuickBird卫星影像,这款卫星影像的地面全色分辨率达到0.61m,成像款幅度达到16.5×16.5/km2,随后美国相继推出了Space imaging Ikonos和Land sat TM卫星遥感影像,这宽两款卫星遥感较Earth watch的QuickBird的影像效果以及成像款幅度都有所提升。俄罗斯生产了一款Spin-2卫星影像,这款卫星影像在地面分辨率方面虽然不及美国的Land sat TM卫星遥感,但是其成像款幅度可以达到200×300/km2却与美国的三种卫星影响有明显的优势。 2.卫星影像图的纠错、配准以及统一融合 2.1 数字纠错 光学纠错仪是一款用于将航拍模拟摄影片转化为平面图的工具,主要适用于传统的框架模幅式的航拍摄像画面的数字影像[1]。现阶段出现了许多新鲜的卫星数字遥感技术,这些技术的影响数据采用传统的光学纠错仪就不能很好地转化。因此,数字微分纠错技术由此诞生。这是一项通过地面的有效参数以及数字地面的基本雏形,在设置适当的构想公式,并依据适当的数学模型控制范围和控制点将航拍摄像画面的数字影像转化为正射影像图的。这种技术不仅简单、方便,而且适用范围较广,已经成为国内外普遍使用的数字纠错技术。

内分泌学练习试卷22

内分泌学练习试卷22 (总分:90.00,做题时间:90分钟) 一、 A1型题(总题数:45,分数:90.00) 1.引起地方性甲状腺肿最主要原因是 (分数:2.00) A.遗传 B.自身免疫 C.激素合成障碍 D.缺碘√ E.高碘 解析: 2.以下关于高脂蛋白血症的说法正确的是 (分数:2.00) A.Ⅴ型高脂蛋白血症以TC升高为主 B.ⅡB型高脂蛋白血症在临床上相当常见√ C.Ⅲ型高脂蛋白血症在临床上最常见 D.ⅡA型高脂蛋白血症在临床上罕见 E.Ⅰ型高脂蛋白血症在临床上较为常见 解析: 3.嗜铬细胞瘤手术前的药物应用,下列说法正确的是 (分数:2.00) A.术前常规应用β受体阻滞剂 B.α受体阻断药的应用一般不得少于2周√ C.因酚苄明作用时间长,故手术前3天宜停用 D.以上都不对 E.术前停用降压药,单用β受体阻滞剂 解析: 4.1型糖尿病患者的首位死亡原因是 (分数:2.00) A.酮症酸中毒昏迷 B.冠心病 C.脑血管病 D.感染 E.肾小球硬化症√ 解析: 5.甲亢服用抗甲状腺药物期间不宜做哪一项检查 (分数:2.00) A.BMR B.甲状腺131I摄取率√ C.TT3 D.TT4 E.TSH 解析: 6.关于维生素B1的论述说法错误的是 (分数:2.00) A.恶性肿瘤对维生素B1需求增加 B.大量饮酒能增加维生素B1代谢

C.喝大量咖啡能增加维生素B1的吸收√ D.喝发酵茶叶能减少维生素B1吸收 E.糖尿病病人对维生素Bl需求增加 解析: 7.甲状腺性甲亢最常见的是 (分数:2.00) A.多结节性甲状腺肿伴甲亢 B.自主性高功能性甲状腺瘤 C.弥漫性甲状腺肿伴甲状腺功能亢进症√ D.碘源性甲亢 E.滤泡性甲状腺癌 解析: 8.下列属于下丘脑激素的是 (分数:2.00) A.生长激素 B.促甲状腺激素 C.黄体生成素 D.生长激素释放激素√ E.促卵泡素 解析: 9.对确诊SLE和判断其活动性参考价值最大的抗体是 (分数:2.00) A.抗核抗体 B.抗dsDNA抗体√ C.抗Sm抗体 D.抗RNP抗体 E.抗Ro抗体 解析: 10.发生甲亢危象时,首先给予 (分数:2.00) A.大剂量碘剂 B.控制感染 C.抗甲状腺药物增量口服√ D.氢化可的松静点 E.普萘洛尔 解析: 11.Addison病患者,应用肾上腺皮质激素替代治疗,下列说法正确的是(分数:2.00) A.给药途径以肌注为主 B.应终生使用激素替代治疗√ C.有感染或手术时应停用 D.剂量一旦确定,终生不变 E.每日1次给药即可 解析: 12.X线检查对甲旁亢有诊断价值的是 (分数:2.00) A.骨密度改变 B.腰椎压缩性骨折 C.多处骨折

卫星影像与航拍的区别

卫星影像图与飞机航拍图的区别 一、卫星影像图与飞机航拍图区别 (一)定义 1、卫星影像图:卫星影像图是以卫星作为遥感平台,通过卫星上装载的对地观测遥感仪器对地球表面进行观测所获得的遥感图像。 2、飞机航拍图:飞机航拍图是以飞机作为遥感平台,在近地点的稳定高度拍摄地面各种目标所获得的图像。 (二)成图原理、方式 1、卫星影像图:以卫星为航天遥感平台(一般大于80km),以扫描方式获取图像,有很多波段,最大可达350多个以上,彩色图像基本上都是波段组合和融合而成,色彩不太真实。 2、飞机航拍图:以飞机为航空遥感平台(小于80km),以光学摄影进行的遥感,一般是黑白,真彩和彩红外摄影,一般最多4个波段,颜色比较真实。 (三)分辨率 1、卫星影像图:比例尺小,分辨率低,清晰度相对较低,一般分辨率可从0.5米—1000米之间;

2、飞机航拍图:比例尺较大,分辨率较高,清晰度高,一般分辨率可从0.04米—1米之间。 (四)图像变形 1、卫星影像图:摄影高度较高,因此建筑的投影差方向和大小基本上都一样,变形小。 2、飞机航拍图:摄影高度较低,因此建筑的投影差方向和大小每个地方都不一样,变形大。 (五)成图面积 1、卫星影像图:成图面积大,含信息丰富,拍摄面域广,获取速度快,可做全球动态监测。 2、飞机航拍图:成图面积小,离地面距离相对要近得多, 观察格外清晰、准确, 图像稳定, 精度高,避免了常规调查的盲目性和不必要的无效工作, 极大的节约了时间和精力, 节约了财力和物力。 (六)图像用途 1、卫星影像图:国土,规划,水利等大型工程。 2、飞机航拍图:小面积测绘,应急、抗灾。 (七)优点 1、卫星影像图:

内分泌学动态试验说课讲解

内分泌学动态试验

库欣综合征 1mgDST: 适应症:库欣综合征定性诊断,尤其适用于门诊筛查 试验方法:午夜给予1mg地塞米松,测定次日晨8:00血浆皮质醇 结果分析:正常:次日晨8:00血浆皮质醇小于1.8μg/dl,绝对排除库欣;小于5μg/dl,基本排除库欣 2mgDST: 适应症:库欣综合征定性诊断 试验方法:地塞米松0.5mg q6h p.o.×2天,服药第2、第3天测8am血皮质醇、24h 尿皮质醇 结果分析:正常:第三日晨8:00血浆皮质醇小于1.8μg/dl,绝对排除库欣;小于5μg/dl,基本排除库欣 影响因素:多种药物都能影响地塞米松的吸收和代谢率,如苯妥英钠、苯巴比妥、卡马西平、利福平和乙醇通过CYP3A4诱导肝酶清除地塞米松,降低其血浓度。肝肾功能衰竭时,地塞米松清除率降低 8mgDST: 适应症:用于病因诊断,判定是否为ACTH依赖性 试验方法:地塞米松2mg q6h p.o.×2天,服药第2、第3天测8am血皮质醇、24h尿皮质醇 结果分析:服用地塞米松后第三天血、第四天尿皮质醇抑制率大于50%认为可被抑制,考虑库欣病。肾上腺肿瘤、皮质癌或异位ACTH综合征多不能被抑制 原发性醛固酮增多症 随机醛固酮血浆肾素活性比值(ARR): 适应症:原发性醛固酮增多症的筛查(门诊) 筛查前准备:纠正血钾至正常范围;无需限制钠盐摄入;停用对RASS系统有影响的药物至少2-4周 试验方法:清晨起床后保持非卧位(可以坐位,站立或者行走)至少2小时,静坐15分钟采血,采血时间在8:00-10:00 结果分析:醛固酮单位pg/ml,血浆肾素活性单位ng/mL/h,ARR>300筛查试验阳性 体位试验(卧位+随机): 适应症:原发性醛固酮增多症的筛查 试验方法:夜间平卧6小时以上,清晨8点卧位采血测醛固酮及血浆肾素活性,非卧位2小时后坐15分钟测定醛固酮和血浆肾素活性 结果分析:(醛固酮立位-醛固酮卧位)/醛固酮卧位<30%提示为醛固酮瘤 生理盐水试验: 适应症:原发性醛固酮增多症的确诊试验

最新卫星影像图2米卫星影像图-北京揽宇方圆

北京揽宇方圆信息技术有限公司 一、高清卫星影像数据生产,按照合同约定,项目经理组织生产。 二、提交的产品,满足以下参数要求: 1.时间要求:成像时间2014年(含)以后 2.面积:大于200万平方公里,包括四川、重庆、云南、甘肃、安徽、湖南、湖北、江苏等全部。 3.精度要求:满足1:5万比例尺精度要求,重点保证覆盖辖区内城市建成区、村镇、道路、桥梁、河流等重要目标地物。 4.空间分辨率:优于2.5米 5.数据格式:GeoTIFF或IMG 6.坐标系:WGS84或者2000坐标系 7.卫星影像数据整体色调一致,接近自然色; 8.卫星影像数据应具有较好的平面定位精度,不低于10米; 9.卫星影像数据拼接精度应高于2个像元,不存在裂缝、错位等情况。 10.合同签订后在7个工作日内,提交影像产品。 三、提交的影像产品在满足招标要求的四川、重庆、云南、甘肃、安徽、湖南、 湖北、江苏8个省的基础上,考虑到自然灾害发生时间和地点的不确定性,我方承诺中标后一年内将按照甲方的需求额外提供部分省市的遥感影像,以满足甲方灾害应急需求。如一年中没有发生重大灾害,我方同样承诺中标后可以额外提供采购方采购面积的20%的影像产品。 四、交货方式:由于数据量比较大,采用移动硬盘为介质给甲方提供影像产品

五、提交产品的格式:提供按照1:5万标注分幅的分幅影像,数据格式为 GEOTIFF 六、验收:按合同时间要求供货,配合甲方进行验收,安装验收是我公司和甲方 单位共同对影像产品根据有关的产品技术指标进行验收。安装验收后双方签署安 装验收证书。 供应商全称(盖章):北京揽宇方圆信息技术有限公司 全权代表(签字): 附件14-4影像产品生产技术流程 1原始影像检查 1.1完整性检查 对原始卫星影像压缩包解压缩,查看影像数据、RPC文件、XML元文件等内容是否缺失,文件是否可读。 1.2数据源覆盖 根据数据的经纬度范围,制作数据源覆盖范围矢量文件,叠加工作区范围,检查数据源的覆盖状况及不同数据源的覆盖范围。 1.3时相 根据影像的头文件的信息,统计并制作影像时相分布图,检查影像时相是否符合项目的要求。 1.4重叠区 根据影像的覆盖矢量文件检查相邻景之间的重叠区是否大于2%,不符合要求的数据需重新选取订购。 1.5云量 检查每景影像的云、雪、雾覆盖状况,并列表记录其覆盖位置、覆盖量、是否覆盖重点关注区域。 1.6入射角 根据影像的头文件,检查每景影像的入射角,确认入射角是否符合项目的要求。 1.7纹理 根据影像的快视图,先对影像质量总体情进行检查,对疑似有问题的,打开影像文件进行重点检查。 对全色影像的纹理细节、多光谱影像的光谱丰富程度、多光谱波段间匹配程度等进行全面检查,并记录质量不合格影像,以及质量问题描述。

综合谱图解析

1、某未知物分子式为CHO,它的质谱、红外光谱以及核磁共振谱如图,它的125紫外吸收光谱在200 nm以上没有吸收,试确定该化合物结构。 1 : 2 : 9 [解] 从分子式CHO,求得不饱和度为零,故未知物应为饱和脂肪族化合物。125未知物的红外光谱是在CCl溶液中测定的,样品的CCl稀溶液的红外光谱44-1处有1尖峰,这是游离O H基的特征吸收峰。样品的在3640cmCCl浓溶液在4word

编辑版. -1宽峰,但当溶液稀释后复又消失,说明存在着分子间氢键。未知13360cm处有处的宽峰,经重水交换后消失。上述事实确定,未知物分4. 1物核磁共振谱中δ子中存在着羟基。个质子,可看成是连在同3未知物核磁共振谱中δ0.9处的单峰,积分值相当个亚甲基,12个质子,对应个甲基。一碳原子上的3δ3.2处的单峰,积分值相当看来该次甲基在分子中位于特丁基和羟基之间。的事OHCH)部分而形成基峰m/e57质谱中从分子离子峰失去质量31(-2实为上述看法提供了证据,因此,未知物的结构是CH3OHCHC CH23CH3根据这一结构式,未知物质谱中的主要碎片离子得到了如下解释。CHCH3+3.++CCHOH CH OHCHC CH m/e31CHCH33m/e88m/e57-2H-CH-H-CH33m/e29CHCCHm/e7323+m/e41 3232 2、某未知物,它的质谱、红外光谱以及核磁共振谱如图,它的紫外吸收光谱在210nm以上没有吸收,确定此未知物。 word 编辑 版.

3622 个丰度很小的峰,应为分子离处有在未知物的质谱图中最高质荷比1311] [解。由于分子量为奇数,所以未知物分子含奇数个子峰,即未知物的分子量为131氮 原子。根据未知物的光谱数据亚无伯或仲胺、腈、酞胺、硝基化合物或杂芳环化合物的特征,可假定氮原子以叔胺形式存在。-1-1典型的红外光谱中在1748 cm处有一强羰基吸收带,在1235 cm1附近有-1处的吸--宽强COC1040 cm伸缩振动 吸收带,可见未知物分子中含有酯基。word 编辑版. 收带则进一步指出未知物可能是伯醇乙酸酯。个甲基。从它的化学位移来看, 11.95处的单峰(3H),相当核磁共振谱中δ提供了C=O)很可能与羰基相邻。对于这一点,质谱中,m/e43的碎片离子(CH3并且它们的裂距相等,的三重峰,在核磁共振谱中有2个等面积(2H)有力的证据。,其中去-2个相连的亚甲-CHCH相当于AA'XX'系统。有理由认为它们是22屏蔽较大的亚甲基与酯基上的氧原子相连。至此,可知未知物具有下述的部分结构:OCHCHCHOC322个

相关主题
文本预览
相关文档 最新文档