ospf到底做什么用的

ospf到底做什么用的,第1张

ospf是用于在链路状态数据库的基础上通过最短路径优先算法计算得到路由表的,所以ospf的收敛速度较快。由于其特有的开放性以及良好的扩展性,目前ospf在各种网络中广泛部署。

1、rip是一种简单的距离矢量路由协议,主要用来传递路由信息,维护相邻路由器的位置关系,同时根据收到的路由表信息计算自身路由表信息。因此rip通常应用于架构较为简单的小型网络环境。

2、eigrp是一种高级的距离矢量路由协议,继承了igrp的混合度量值,最大特点在于引入了非等价负载均衡技术,并拥有极快的收敛速度。据了解,eigrp协议在cisco设备网络环境中广泛部署。

扩展资料

ospf、rip、eigrp的路由选择说明

1、当一个计算机发送一个分组时,在网络上网络协议栈的每一层都附加一些信息给它。在接收方的对等层协议可以读出这些信息,这些信息类似于通信会话的某些部分。网络层的协议附加路由选择信息,这可能是通过一个网络的完整路径或是一些指示分组应该采用那条路径的优先值。

2、发送方添加的网络层信息只能由路由器或接收方的网络层协议读取。中继器和桥接器不能识别网络层信息,只能传送和转发分组。可是问题在于,一个路由器通常沿着每条路径发送数据分组,分组充满网络,并且发送的一些分组在网络上无休止地循环。

3、为了避免这些问题,路由器可以依赖人工编程把选择的路径输进设备,这被称为静态路由选择。动态路由选择是一个更好的方式,它依靠路由器收集网络信息和建立自己的路由表。这样一来路由器可以相互交换路由表,并且归并这些路由信息建立更新的路由表。

参考资料:

百度百科-路由协议

网站空间和域名的关系和区别

有不少人,包括我们的客户,对域名和网站空间之间的区别不太清楚。

这完全可以理解。像域名,网站,网站空间,虚拟主机,DNS这些词,虽然现在四处都看得到,好像每个公司每个人,连中学生都有了网站。但说到底,互联网本身也还是新鲜事务,很多人在学校里并没学过什么是域名,什么是网站。像我自己上大学的时候(1988年入学),对域名网站之类的概念完全没了解。

很多时候客户问,我三天前就购买了你们的虚拟主机计划,为什么到现在我还打不开我的网站呢?我一查,用户还没注册域名呢。所以我就回复告诉他域名和网站空间的定义。有的时候用户还会再问,那又怎么样呢?我还是打不开我的网站?有的时候定义并不解决问题,因为不是每个人都能看得懂。

所以这篇文章里,我就用大白话解释一下,域名和网站空间的区别和关系。如果你已经是经常做网站的人,就别往下看了。下面解释的可能让你觉得好笑,技术上讲也太不准确。

这里所说的网站空间包括虚拟主机,自己租用的整台主机,或自己的托管主机,以及VPS主机等形式。总之,网站空间是你放网站文件的地方。

域名是网上的一个地址,比如说yahoocom,chinamyhostingcom,相当于一个门牌号码。当你在域名前面加上

>

撞库是一个看起来很专业,但实际理解起来却很简单的名词。它其实就是黑客无聊的“恶作剧”。黑客首先会通过收集互联网已泄露的用户+密码信息,生成对应的字典表,然后再用字典中罗列的用户和密码,尝试批量登陆其他网站,这样,一旦用户为了省事,在多个网站设置了同样的用户名和密码的话,黑客很容易就会通过字典中已有的信息,登录到这些网站,从而获得用户的相关信息,如:手机号码、身份z号码、家庭住址,支付宝及网银信息等。这些信息泄露后,不仅会给用户和精神和经济带来巨大损失,同时也会给相关网站带来负面影响。

比如:最近京东发生的抹黑事件,实际上,黑客就是利用“撞库”手法,“凑巧”获取到了一些京东用户的数据(用户名密码),然后通过模仿用户评论,给京东留下了大量抹黑的差评。

从两个地方来,首先心要静,因为心主神明,心是神待的地方,心灵肮脏,神明远离,邪灵占居,心如明镜,真神居之,邪灵远去,神住心中,人才会明白世界的一切,才会看透万事,第二,智慧从上头来,世界上只有知识,学问,但不是智慧,神是智慧的源头,丶

佛陀释迦牟尼的智慧是与生俱来的,也就是我们俗称的天才。

要说明这一点,我们就只能从释迦牟尼的经历说起了。释迦牟尼出生于距今大约2500年前,是古印度北部迦毗罗卫国(今尼泊尔境内)净饭王的王太子,名叫乔达摩·悉达多(以下简称悉达多)在他出生后七天,他的母亲摩耶夫人就去世了,应该是死于产褥热。在佛教中因此就出现了一个专有名词,叫摩耶之幕,意思是屏蔽真实世界的帷幕。

悉达多作为净饭王的长子,得到了净饭王的百般呵护。在他幼年时期,他的父亲就曾经请过一位非常有名的外道算命先生为其算命(在佛教当中,外道是指除佛教意外的宗教),算命结果为,这位小王子未来要么成为明主,要么成为教宗。意思就是说,悉达多将来要么会成为一位英明的君王,要么会成为一位宗教创始人。

悉达多出生后不久,他的父亲就找大师为其算命

他的父亲为此就大为恐慌,他当然希望自己的儿子将来能继承王位,成为一位英明的君王,因此从小就把他圈养在了皇宫之中,因此在他19岁以前,他是从未出过皇宫的,根本不知道世俗人间的生活样貌。

直到他19岁的时候才第一次走出皇宫,这就是著名的四门游观,他在四个城门哪里去周游,第一次目睹了贫老病死的人间苦难。我们用一个词来形容他当时的感受,那就是触目惊心。因为他从小就生长在宫中,过着封闭的优渥的生活,成年之后才第一次见到人间的苦难,可以想象这对于他来说当时造成了多大的心理冲击。

四门游观之后,悉达多就进入了冥思,苦苦思索人类为什么会苦难。到了29岁的时候他毅然抛下了美貌的妻子和他的国家,出家修行去寻找解救人间苦难的真谛。

人为什么会苦这个问题一直困扰着悉达多,最终悉达多放弃了王位,放弃了美丽的妻子,一个人去苦苦修行去了

最终在经历了少女献食、以身饭虎等事件后,在经历了多年的苦苦思索之后,悉达多最终在一颗菩提树下冥思七日突然明白,顿悟成佛,之后便成为了释迦牟尼。其实释迦是乔达摩·悉达多的族名,既有仁爱也有能力的意思。牟尼是印度梵语,翻译过来是寂默的意思,是在山林中修道而获得成就者的通称,释迦牟尼的称呼有很多,一般称为佛陀,佛陀意为正觉者。

佛陀正觉之后讲经45年,有传说佛陀顿悟后看破一切,一时间决定自杀寻求解脱,被一位婆罗门教士劝阻,婆罗门教士对他的顿悟之想深感惊讶,建议他传布思想形成教派,于是佛陀后来历经45年讲经不缀。

那么佛陀所讲的佛教,究竟说了些什么呢?大概来说就是告诉人们该如何摆脱人间的苦难,即“了生死、灭苦悲”。

要了解佛教是如何“了生死、灭苦悲”,就要说一下佛教的四圣谛,简称为四谛佛教学。佛教其实是一个辞藻极为华丽,逻辑体系极为缜密的思想系统,与我国先秦时代散点式讨论完全不同,因此如果要了解佛教就必须要了解四圣谛。

四圣谛的第一谛为苦圣谛,也可以简称苦谛,即人生本身就是苦难,一切存在都是苦难。比如你一生下来就大哭临世,你的母亲要经历分娩的痛苦才能把你生下来,人生中十有八九都不顺心,你历经所有的磨难——肉体磨难、精神折磨始终伴随你的一生。而你一切的快乐,都只不过是下一茬苦难的引诱剂。当然,佛教对苦讲的很深,也不是我在这里三言两语就能说清楚的,对于苦谛,还有一个说法就是“生老病死,成住坏空”,这八个字有两层含义,前四个字是表达肉体的苦难,后四个字表达身外的麻烦。任何的事业,你以为做成了,随后你觉得把它保持住了,但很快就会溃破,最终归于大空。佛陀把苦圣谛表达为一切生命皆为苦难,而人生是苦难的最高体验者。

那么既然人生就是苦难,一切存在都是苦难,那么下一个逻辑必然追问苦难的根源,于是就有了四圣谛的第二谛,集圣谛。简单来说,就是苦难根植于欲望和贪婪之恶习。那么为什么叫集圣谛呢?因为在古代,集的发音与习的发音相近,集圣谛其实就是追究苦难的根脉,佛教对集圣谛讲的非常细致,讲三毒三业。所谓的三毒就是贪嗔痴。由于你有贪欲,所以你的欲望旺盛,而且难于实现,难以满足。贪欲不能实现你必然会因此愤恨,甚至愤怒,这叫嗔。贪而不得必然嗔,嗔之后所达成的心境就是痴,痴就是无明,就是你不知道这个世界的真相。所以佛家认为,苦谛的根源在集谛里,分三毒。

接着就是三业,业其实是你的身外之作,如事业、工业。佛家认为这个世界的本真是空,它分为三业,叫做身、口、意,所谓身就是你的任何一个行为都会给你做出业;所谓口就是你说的每一句话都会成为业;所谓意,就是你心里每一个动念都是业,这叫做三业,也叫作业。佛教认为,如果你没有经过修正和修为,你所作的业必是恶业,也叫做作孽。所谓业障,就是你身口意所作的那个业,构成了你的世界,这是一个虚像的世界,但它却蒙蔽了你的智慧,叫痴、无明,它使得你对本真世界被隔离,因此叫做业障。

在讲述了苦圣谛和集圣谛后,那么下一个逻辑台阶必然是要追问灭苦集的境界,这就是灭圣谛,简称灭谛,也可以表达为灭度苦集,达至觉悟的境界。那么要灭掉苦和集,灭掉苦难,你所能达到的那个状态和境界叫做涅槃。在佛教当中,涅槃其实就是下辈子绝不做人,更深一步就是绝不做任何生命,进入大空境,是为涅槃。涅槃分为有余涅槃、无余涅槃和无住涅槃等。无余涅槃是任何人,包括大德高僧终生修佛直到寂灭也就是死亡能达到的境界。有余涅槃仅指佛陀肉身尚在,已经进入涅槃的境界。所谓无住涅槃,意思是佛陀本人虽已经没有肉身,但以涅槃状态仍然可以普度众生。

当然,灭谛是修佛很难达到的境界,那么如何达到灭谛的境界呢?这就是下一个逻辑台阶必然要追问的问题,便是道圣谛,简称道谛。它的含义是修持,“戒欲以升正觉”是摆脱苦难达成涅槃的唯一通道,也就是修佛。佛教的修佛是由浅入深的层层推进,讲的极为细致,讲三学、六度、八正道等等。所谓的三学就是戒、定、慧,所谓戒就是戒除贪欲,或者戒除贪嗔痴,也叫戒三毒。在你戒了之后你才能进入定,所谓定就是把自己的身体和灵魂确定在不受文明红尘骚扰的状态,在这个状态下你才能修,你才能在这个状态下修证。

所谓六度,第一度叫布施度,所谓布施度并不是给与他人好处这么简单,而是要由内向外释放,而不是向外摄取;第二度是持戒度,不仅是戒除杀生、偷盗之类的戒律,而是要戒绝一切文明红尘的纷扰;第三度是安忍度,一般来说就是无论对方对你做什么,你都不会生气,比如对方向你吐痰,你不但不发火,还安然地抹掉它,乐呵呵给对方行礼,这叫安忍;第四度是精进度,在你达到了前三度,达到了三学里的戒和定,你在定的状态下也叫禅定。所谓禅定是没有任何杂念,思想和精神形成一个全空的通道,才能够进入修证的精进,这叫精进度;第五度是禅定度,就是精进到一定程度,你才能进入禅定的状态,逼近大空境,是为禅定;第六度是般若度,般若是梵语的音译,般若其实并不完全是智慧,而是绝不执着,绝无贪念,绝不在世上竞争。只有达到这个度你才能进入涅槃,才能进入消除痴的有明境界。

而所谓的八正道,是为正见、正思、正语、正业、正命、正精进、正念、正定,其中可以分出身、口、意三个层次,这些讲起来就更为复杂,在此不多说了,有兴趣的话大家可以去看佛经,姑且可以在字面上去理解它。

其实说了这么多,我们可以发现,其实佛教是一门辞藻极为华丽,逻辑极为缜密的思想体系,对于人世间的苦难,有什么样的苦,为什么会苦,你如何消除这些苦难以及达到什么境界才能脱离苦难,佛教其实是有着一整套完善的体系去解释的。能够悟出如此高深的智慧,我也只能说,释迦牟尼确实是属于天才般的人物,而且还不是一般的天才。

当然,佛学本身就博大精深,我用这么少的文字,也很难把佛教表达清楚,佛经所说的内容,其实是对释迦牟尼当时讲学时候所说的话的记录,所以你看佛经的时候,开头都会有如是我闻的字样,意思就是我听佛是这么说的。

在此多说一些的就是,佛教在逻辑学上其实已经达到了一个非常高深的程度,而完整的逻辑学是科学文明产生的前提。在唐玄奘西天取经回到唐朝的时候,就曾经带回过一部完整的逻辑学,只可惜这套逻辑学太过于深奥,而我们国人非常注重于实用,这些逻辑学因为没有什么实用价值,所以长期以来被人忽略了,所以我们千百年来便与科学文明失之交臂了。

那么佛教的逻辑学达到了怎样的高度呢?在佛经中曾经记述过十四无记的问题,即指十四个超越经验认知层次的问题,无法加以叙述或说明,因此佛陀舍置不答的问题。其中有一个问题就非常有意思,一位外道童子曾经问过佛陀“世有边,世无边,世无边非有边,世有边非无边”的问题,其实翻译成大白话就是问佛陀这个宇宙有没有边界,如果有的话,边界在哪里,如果没有,边界外面是什么?在逻辑上来说,如果回答说宇宙是有边界的,这点在逻辑上成立,因为你无法想象一个无边无界的宇宙是什么样子。如果你回答宇宙是没有边界的,在逻辑上也成立,因为宇宙边界的外面其实还有另外的存在。对于这个问题,佛陀没有回答。又比如,曾经有人问过达摩类似于宇宙边界的问题,先有鸡还是先有蛋,达摩说,二者皆可,视缘分而定。

这是一个二律背反问题,也就是如果你按照逻辑去推导,当你推导到极致的时候,一定会出现两个截然相反,但逻辑都成立的答案。对于这个问题,西方直到18世纪的时候,才由著名哲学家康德得出了结论,当然康德是证明了二律背反问题。

其实通过这个问题,我们也能看出佛教在逻辑学上所达到的程度。其实凡是大德高僧,都精研过佛经,也受过非常良好的逻辑学训练,判断一个和尚是否是真和尚,你和他辩论便能看出了。

好了,关于释迦牟尼,就说这么多吧,佛学毕竟太高深了,我也只能简单地说一下。对于佛陀的智慧,我也只能说,我很惊叹,能做出如此高深学问的人,真不是一般的天才能做出来的,佛陀的智慧,也只能是天生的了。

相信大多数人都跟笔者以前一样,对于释迦牟尼悟道后得到的智慧非常迷惑,自从他32岁悟道后,竟然可以说法长达49年,才进入涅槃。

问题来了,49年的说法,经弟子阿难和众师兄弟整理后,得到了无数的典籍,这些智慧是怎么来的?

(释迦牟尼与弟子们想象图)

因此题涉及唯心哲学方向,所以相信唯物哲学的小伙伴请暂避一下。

我们的这个世界,在佛学里,小乘佛法认为是众生共同业力感化而生成,这个众生包括胎生(动物)、卵生(有蛋动物)、湿生(水里生物)、化生(细菌类微生物)。 在大乘佛法上则认为,这个世界是由第八识——阿赖耶识演变成的。

注意,佛经上说的“器世间”就是指我们现在的物质世界。

同时,这个阿赖耶识也叫种子藏、如来藏、第八识,既然叫第八识,那前七识是什么?前七识是指人的眼识,为第一识;耳为第二识;鼻为第三识;舌为第四识;身为第五识;意(大脑)为第六识;第七识叫末那识(潜意识)。

第七识负责传送消息(或信号,如记忆等)给第八阿赖耶识,储存在那里。

这个阿赖耶识,就是禅宗苦苦追求的“心”,所谓明“心”见性,就是指反观自己的思维念头 等内在 ,发现自己这个“心”,这个“心”就是毕竟空的,但又不是我们理解的“空的”,因为它藏有无所不知,无所不能,无所不在的智慧。

因此,悟道(见到第八识)后的人,他即拥有了无穷的智慧,因为他可以从第八识里得到他想得到的智慧,包括人世间所有的学问,以及关于宇宙所有的学问。

阿赖耶识不是一个人的心藏,而是这个世界无数众生的共同心藏,包括胎生(哺乳动物)、卵生(有蛋动物)、湿生(水里生物)、化生(微生物),因为菩萨常怀慈悲之心,就是因为众生共用一个如来藏,同心同体,杀一动物就是割自己身上肉一样。(在佛法里,得了“他心通”这种神通,就是同体同心这个情况,跟量子纠缠是不是有些相似?)

(量子纠缠)

打个比喻,可以把阿赖耶识比喻成整个因特网(大数据库),而我们每个人,每个生灵,就是每部上网的电脑或者手机,众生通过因特网链接在一起,不分彼此,悟道后(远程访问)可以随意浏览别的计算机和整个因特网的数据。

只不过我们的手机电脑会断网,阿赖耶识可不会断网,每个众生的生与死,都与阿赖耶识无关,它只会忠实的把这些生死断续的信息储存好,供悟道后的人查阅。

这就是万法归一心,一心生万法!《大乘起信论》上说:“心生则种种法生,心灭则种种法灭。”

好了,笔者啰嗦了这么多,就是为了引出正题:释迦牟尼的智慧哪里来?

(吕良伟饰演的释迦牟尼剧照)

很明显,释迦牟尼在菩提树下打坐,因机缘抬头睹明星而悟道,悟道后,即从阿赖耶识,得到了过去无尽众生、佛陀等,他们忠实记录下来的无穷无尽智慧,支持他说法49年。

难,当然难

创业难的原因

1、中国商业环境,已经分层化,很多普通人的创业机会越来越少。

2、创业者而心态原因,总是幻想着创业失败,失败并不可怕,可怕的是惧怕失败,不敢再站起来。

3、创业者喜欢跟风创业,而不是去主动发现商机,所以选择了不对的行业,导致很难走下去。

4、资源分布不均,只要都掌握在少数的企业和个人手中,大多数没有资源的创业者生意很难做。

5、创业缺乏资金,所以通过合伙创业来维持,但是却处理不好合伙人之间的关系。

6、创业管理不善,导致内部出现问题。

7、创业公司缺乏融资渠道,创业者的项目对投资人没有吸引力。

总之,创业难的原因有很多,远不止这些,但是目前国家大力扶持大众创业,资本也在不断地推波助澜,所以有很多的人愿意去尝试创业,要知道并不是所有人的创业都是失败告终的,创业虽难,但是尽可能的去解决克服困难是每一个创业者应该做的。

说点大白话~~呵呵。单独做个 *** 作数据库的类,在这个类中引用bean。能明白吧

给你个以前工作的例子。。

这个是BEAN

package cnccnparea;

import javaioSerializable;

public class Area implements Serializable {

/

区域ID

/

private String areaId;

/

区域名称

/

private String areaName;

/

所属区县

/

private String areaFatherId;

/

所属省市

/

private String areaGrandfatherId;

/

区域ID getter,setter method

/

public String getAreaId( ){

return areaId;

}

public void setAreaId( String areaId ){

thisareaId = areaId;

}

/

区域名称 getter,setter method

/

public String getAreaName( ){

return areaName;

}

public void setAreaName( String areaName ){

thisareaName = areaName;

}

/

所属区县 getter,setter method

/

public String getAreaFatherId( ){

return areaFatherId;

}

public void setAreaFatherId( String areaFatherId ){

thisareaFatherId = areaFatherId;

}

/

所属省市 getter,setter method

/

public String getAreaGrandfatherId( ){

return areaGrandfatherId;

}

public void setAreaGrandfatherId( String areaGrandfatherId ){

thisareaGrandfatherId = areaGrandfatherId;

}

}

这个是对数据库的 *** 作。懒得挑了。。都粘过来,你自己看吧,有些是公司内部的类,不用都明白哈~~

package cnccnparea;

/

<p>Title: AreaMgrImpl</p>

<p>Description: area implement</p>

<p>Copyright: Copyright (c) 2006</p>

<p>Company: jadosoft</p>

@author Yangyang

@version 10

/

import javasqlResultSet;

import javasqlSQLException;

import javautilArrayList;

import orgapachelog4jLogger;

import cnjadoapplogOperatorLog;

import cnjadoapplogOperatorLogger;

import cnjadolibQuoteReplace;

import cnjadolibwebCommonDAO;

import cnjadolibwebPage;

import cnjadolibwebPageDiv;

public class AreaMgrImpl {

/

Constructor

/

public AreaMgrImpl(){

}

/

OperatorLog

/

private OperatorLog log = null;

private int rowNum = 0;

/

OperatorLogSetter

/

public void setLog(Object o) {

if (o instanceof OperatorLog) {

OperatorLog log = (OperatorLog) o;

thislog = log;

}

}

/

DataSource lookup jndi

/

private String jndi = "jdbc/ccn";

private String tableName = "area";

/

log4j

/

private static Logger logger= LoggergetLogger(AreaMgrImplclassgetName());

/

判断是否已经存在相同记录

@param area 记录的值对象

@return 是否存在另一记录与该记录相同

/

public boolean existedArea( Area area ) {

//单引号替换

area = (Area)QuoteReplacereplace(area);

StringBuffer sqlBuf = new StringBuffer(100);

sqlBufappend(" select count() from " + tableName);

/ @toDo: 要保留的行,去掉行前注释符,注:只保留主键(或联合主键的行)做是否存在的判断依据 /

sqlBufappend(" where area_id = " + areagetAreaId()); //区域ID

// sqlBufappend(" and area_name = '" + areagetAreaName()+ "'"); //区域名称

// sqlBufappend(" and area_father_id = '" + areagetAreaFatherId()+ "'"); //所属区县

// sqlBufappend(" and area_grandfather_id = '" + areagetAreaGrandfatherId()+ "'"); //所属省市

loggerwarn("---sql:existedArea---" + sqlBuf);

CommonDAO dao = null;

ResultSet rs = null;

boolean existed = false;

try {

dao = new CommonDAO(jndi);

rs = daoquery(sqlBuftoString());

if ( rsnext() ){

if (rsgetInt(1) != 0) {

existed = true;

}

}

}

catch (Exception e) {

eprintStackTrace();

}

finally {

daodestroy();

}

return existed;

}

/

add a new record

@param area 新增记录的值对象

@return 是否添加成功

/

public boolean addArea( Area area ){

//组合sql语句

StringBuffer sqlBuf = new StringBuffer(100);

sqlBuf

append("insert into "+tableName)

append("(")

append("area_id") //区域ID

append(",area_name") //区域名称

append(",area_father_id") //所属区县

append(",area_grandfather_id") //所属省市

append(")")

append(" values(");

StringBuffer sqlBufValues = new StringBuffer(100);

sqlBufValues

append("" + areagetAreaId()) //区域ID

append(",'" + areagetAreaName() + "'") //区域名称

append(",'" + areagetAreaFatherId() + "'") //所属区县

append(",'" + areagetAreaGrandfatherId() + "'") //所属省市

append(")");

sqlBuf = sqlBufappend(sqlBufValues);

loggerwarn("---sql:addArea---"+sqlBuf);

//更新数据

return thisupdateData( sqlBuftoString(),"addArea" );

}

/

edit the specified object

@param area 修改成的新记录的对象

@return 修改是否成功

/

public boolean editArea( Area area){

//组合sql语句

StringBuffer sqlBuf = new StringBuffer(100);

sqlBuf

append("update "+tableName+" set ")

append("area_id = " + areagetAreaId()) //区域ID

append(",area_name = '" + areagetAreaName() + "'") //区域名称

append(",area_father_id = '" + areagetAreaFatherId() + "'") //所属区县

append(",area_grandfather_id = '" + areagetAreaGrandfatherId() + "'") //所属省市

append(" where area_id = ")

append(areagetAreaId());

loggerwarn("---sql:editArea---"+sqlBuf);

//更新数据

return updateData( sqlBuftoString(),"editArea" );

}

/

delete the specified object by id

@param areaID 记录的ID值

@return 删除记录是否成功

/

private boolean delAreaById(String areaID) {

StringBuffer sqlBuf = new StringBuffer(100);

sqlBufappend(" delete from "+tableName);

sqlBufappend(" where area_id=");

sqlBufappend(areaID);

loggerwarn("---sql:delAreaById---"+sqlBuf);

boolean result = thisupdateData( sqlBuftoString(), "delAreaById" );

return result;

}

/

delete the specified objects

@param areaIDs 多条记录ID组成的数组

@return boolean 删除多条是否成功

/

public boolean delAreas(String[] areaIDs) {

if ( areaIDs != null && areaIDslength > 0 ) {

int size = areaIDslength;

for (int i = 0; i < size; i++) {

if ( !thisdelAreaById( areaIDs[i]) ) {

return false;

}

}

return true;

}

return false;

}

/

get the specified object

@param areaId 记录的ID值

@return 与该ID匹配的记录的值对象

/

public Area getAreaByID( String areaId ){

Area area = null;

//组合查询条件

StringBuffer sqlBuf = new StringBuffer();

sqlBuf

append("select from "+tableName+" where area_id = ")

append(areaId);

loggerwarn("---sql:getAreaByID---"+sqlBuf);

CommonDAO dao = null;

ResultSet rs = null;

try{

dao = new CommonDAO(jndi);

rs = daoquery(sqlBuftoString());

//读取结果集信息

if ( rsnext() ){

area = thisreadDataFromRs(rs);

}

}catch( Exception ex ){

exprintStackTrace();

}finally{

daodestroy();

dao=null;

sqlBuf = null;

}

return area;

}

/

get all objects

@param

@return 全部记录的列表

/

public ArrayList getAreaList(){

ArrayList arr = null;

//组合查询条件

String sql = "select from "+tableName+" order by area_id desc";

loggerwarn("---sql:getAreaList---"+sql);

CommonDAO dao = null;

ResultSet rs = null;

try{

dao = new CommonDAO(jndi);

rs = daoquery(sql);

//读取结果集信息

arr = thisreadDataListFromRs(rs);

}catch( Exception ex ){

exprintStackTrace();

}finally{

daodestroy();

dao=null;

sql = null;

}

return arr;

}

/

get all objects

@param area

@return 满足查询条件的记录的对象组成的列表

/

public ArrayList getAreaList(Area area ){

ArrayList arr = null;

//组合查询条件

StringBuffer sqlBuf = new StringBuffer(50);

sqlBufappend( "select from "+tableName);

sqlBufappend( " where 1=1 ");

/ @todo: 可以在这里加上你自己的查询条件 /

sqlBufappend( " order by area_id desc");

loggerwarn("---sql:getAreaList---"+sqlBuf);

CommonDAO dao = null;

ResultSet rs = null;

try{

dao = new CommonDAO(jndi);

rs = daoquery(sqlBuftoString());

//读取结果集信息

arr = thisreadDataListFromRs(rs);

}catch( Exception ex ){

exprintStackTrace();

}finally{

daodestroy();

dao=null;

sqlBuf = null;

}

return arr;

}

/

get all objects by search

数值、日期等按指定区间查询

@param areaSearch 查询条件的值对象

@return 满足条件的记录组成的对象列表

/

public ArrayList getAreaListBySearch(AreaSearch areaSearch ){

ArrayList arr = null;

StringBuffer sqlBuf = new StringBuffer(50);

StringBuffer sqlWhere = thisgetSqlwherBySearch(areaSearch);

sqlBufappend( "select from " + tableName + " where 1=1 ");

sqlBufappend(sqlWhere);

sqlBufappend( " order by area_id desc");

loggerwarn("---sql:getAreaListSplit---"+sqlBuf);

CommonDAO dao = null;

ResultSet rs = null;

try{

dao = new CommonDAO(jndi);

rs = daoquery(sqlBuftoString());

//读取结果集信息

arr = thisreadDataListFromRs(rs);

}catch( Exception ex ){

exprintStackTrace();

}finally{

daodestroy();

dao=null;

sqlBuf = null;

}

return arr;

}

/

查询结果分页显示

@param pageBean 页信息的对象

@return 是否分页查询成功

/

public boolean getAreaListSplit( Page pageBean ){

ArrayList arr = new ArrayList();

int pageSize = 0;

int pageNo = 0;

if (pageBean == null) {

return false;

}

if (pageBeangetPageSize() <= 0) {

pageBeansetPageSize(50);

}

if (pageBeangetPageNo()<= 0) {

pageBeansetPageNo(1);

}

pageSize = pageBeangetPageSize();

pageNo = pageBeangetPageNo();

StringBuffer sql = new StringBuffer(" select from "+tableName+" order by area_id desc");

StringBuffer countSql = new StringBuffer("select count() from "+tableName);

loggerwarn("---sql:getAreaListSplit---"+sql);

loggerwarn("---countSql:getAreaListSplit---"+countSql);

CommonDAO dao = null;

try{

dao = new CommonDAO(jndi);

rowNum = PageDivgetCount(countSqltoString(), dao);

pageBeansetPageInfo(rowNum, pageSize);

//执行查找

ResultSet rs = PageDivgetResultSet(pageNo, pageSize, rowNum, sqltoString(), dao);

for (int i = 0; i < pageSize && rsnext(); i++) {

//从结果集中读取数据

arradd(readDataFromRs(rs));

}

}catch( Exception ex ){

exprintStackTrace();

}finally{

daodestroy();

}

pageBeansetList(arr);

return true;

}

/

get objects by search ,display split

按值查询并分页显示,数值、日期等查指定区间

@param pageBean 页信息对象

@param areaSearch 查询条件对象

@return 获得页列表是否成功

/

public boolean getAreaListSplitBySearch( Page pageBean,AreaSearch areaSearch ){

ArrayList arr = new ArrayList();

int pageSize = 0;

int pageNo = 0;

if (pageBean == null) {

return false;

}

if (pageBeangetPageSize() <= 0) {

pageBeansetPageSize(15);

}

if (pageBeangetPageNo()<= 0) {

pageBeansetPageNo(1);

}

pageSize = pageBeangetPageSize();

pageNo = pageBeangetPageNo();

StringBuffer sqlWhere = thisgetSqlwherBySearch(areaSearch);

StringBuffer sql = new StringBuffer(" select from " + tableName + " where 1=1 " + sqlWhere + " order by area_id desc");

StringBuffer countSql = new StringBuffer("select count() from " + tableName + " where 1=1 " + sqlWhere);

loggerwarn("---sql:getAreaListSplit---"+sql);

loggerwarn("---countSql:getAreaListSplit---"+countSql);

CommonDAO dao = null;

try{

dao = new CommonDAO(jndi);

rowNum = PageDivgetCount(countSqltoString(), dao);

pageBeansetPageInfo(rowNum, pageSize);

//执行查找

ResultSet rs = PageDivgetResultSet(pageNo, pageSize, rowNum, sqltoString(), dao);

for (int i = 0; i < pageSize && rsnext(); i++) {

//从结果集中读取数据

arradd(readDataFromRs(rs));

}

}catch( Exception ex ){

exprintStackTrace();

}finally{

daodestroy();

}

pageBeansetList(arr);

return true;

}

/

读取值对象列表

@param rs 结果集

@return 从结果集中读取的对象列表

/

private ArrayList readDataListFromRs(ResultSet rs) throws SQLException {

ArrayList arr = new ArrayList();

Area area = null;

try{

while (rsnext()) {

area = new Area();

//将字段值set到值对象中

areasetAreaId(rsgetString("area_id")); //区域ID

areasetAreaName(rsgetString("area_name")); //区域名称

areasetAreaFatherId(rsgetString("area_father_id")); //所属区县

areasetAreaGrandfatherId(rsgetString("area_grandfather_id")); //所属省市

arradd(area);

}

}catch( Exception ex ){

exprintStackTrace();

}

return arr;

}

/

读取单个值对象

@param rs 结果集

@return 按某列读取的特定记录的值对象

/

private Area readDataFromRs(ResultSet rs) throws SQLException {

Area area = new Area();

try{

//将字段值set到值对象中

areasetAreaId(rsgetString("area_id")); //区域ID

areasetAreaName(rsgetString("area_name")); //区域名称

areasetAreaFatherId(rsgetString("area_father_id")); //所属区县

areasetAreaGrandfatherId(rsgetString("area_grandfather_id")); //所属省市

}catch( Exception ex ){

exprintStackTrace();

}

return area;

}

/

更新数据 用于数据更新语句 Insert,Update,Delete

@param updateSql 数据库更新语句

@param logtype 数据库 *** 作类型

@return 更新成功与否

/

private boolean updateData(String updateSql, String logtype) {

int returnInt = -1;

boolean returnFlag = false;

CommonDAO dao = null;

try {

dao = new CommonDAO("jdbc/ccn");

returnInt = daoexcute(updateSql);

if (returnInt != -1) {

returnFlag = true;

}

}

catch (Exception ex) {

exprintStackTrace();

}

finally {

daodestroy();

}

// 写入日志

if (log != null) {

logsetSql(updateSql);

logsetOperation(logtype);

OperatorLogger loggerUpdate = new OperatorLogger();

loggerUpdateaddLog(log);

}

return returnFlag;

}

/

获得按值对象查询的查询条件

@param areaSearch 条件查询的值对象

@return sql查询条件

/

private StringBuffer getSqlwherBySearch(AreaSearch areaSearch ){

areaSearch = (AreaSearch)QuoteReplacereplace(areaSearch); //值对象中的单引号替换

String areaId = areaSearchgetAreaId();

String areaName = areaSearchgetAreaName();

String areaFatherId = areaSearchgetAreaFatherId();

String areaGrandfatherId = areaSearchgetAreaGrandfatherId();

StringBuffer sqlWhere = new StringBuffer(" ");

if (areaId != null && areaIdtrim()length() != 0) {

sqlWhereappend(" and area_id like '%")append(areaId)append("%' ");

}

if (areaName != null && areaNametrim()length() != 0) {

sqlWhereappend(" and area_name like '%")append(areaName)append("%' ");

}

if (areaFatherId != null && areaFatherIdtrim()length() != 0) {

sqlWhereappend(" and area_father_id like '%")append(areaFatherId)append("%' ");

}

if (areaGrandfatherId != null && areaGrandfatherIdtrim()length() != 0) {

sqlWhereappend(" and area_grandfather_id like '%")append(areaGrandfatherId)append("%' ");

}

return sqlWhere;

}

/

根据不同类别得到区域名称

@param areaSearch 条件查询的值对象,areaType 区域类别如:城市,区,县

@return 符合条件的area集合

/

public ArrayList getAreaInfo(AreaSearch areaSearch,String areaType){

ArrayList arr = null;

StringBuffer sqlBuf = new StringBuffer(50);

String areaId = areaSearchgetAreaId();

//得到省市名称

if(areaTypeequals("sheng")){

sqlBufappend("select from area where area_grandfather_id = area_id and area_id =area_father_id ");

}

//得到市名称

if(areaId != null && areaTypeequals("shi")){

sqlBufappend("select from area where area_grandfather_id = '"+areaId+"' and area_id=area_father_id and area_grandfather_id!=area_father_id");

}

//得到区县名称

if(areaId != null && areaTypeequals("qu")){

sqlBufappend("select from area where area_father_id = '"+areaId+"' and area_id != area_father_id" );

}

sqlBufappend( " order by area_id ");

loggerwarn("---sql:getAreaListSplit---"+sqlBuf);

CommonDAO dao = null;

ResultSet rs = null;

try{

dao = new CommonDAO(jndi);

rs = daoquery(sqlBuftoString());

//读取结果集信息

arr = thisreadDataListFromRs(rs);

}catch( Exception ex ){

exprintStackTrace();

}finally{

daodestroy();

dao=null;

sqlBuf = null;

}

return arr;

}

}

下一辈子 不是成语,是四字词语。含“辈”的成语只有24个:

1、人 才 辈 出 

拼音: rén cái bèi chū

解释: 辈 出:一 批 一 批 地 出 现。形 容 有 才 能 的 人 不 断 涌 现。

出处: 清 · 毕 沅《续 资 治 通 鉴 · 元 纪 · 世 祖 至 元 二 十 年》:“得 如 左 丞 许 衡 教 国 子,则 人 才 辈 出 矣。”

举例造句: 我 们 的 时 代 是 人 才 辈 出 的 时 代。

拼音代码: r c b c

近义词: 人 才 济 济

反义词: 人 才 零 落、后 继 无 人

用法: 作谓语、定语、宾语;指 人 才 不 断 涌 现

英文: every generation produces its man of ability

2、祖 祖 辈 辈 

拼音: zǔ zǔ bèi bèi

解释: 辈 辈:一 代 一 代。世 世 代 代。

举例造句: 我 祖 祖 辈 辈 都 是 种 地 的。

拼音代码: z z b b

近义词: 世 世 代 代

用法: 作主语、宾语、定语;指 世 世 代 代

英文: for generations

这样写的意思应该是本表的Cpno是外键,参照本表的Cno主键。这样建立的不是两个表外键关系,而是同一个表。我觉得这样S、T和C之间的实体关系有些乱。理顺coursestudent和teacher之间的关系是正确添加外键的关键。

如何添加表的外键关系,请看如下实例:

CREATE DATABASE CLOTH_INFO

CREATE TABLE User_info

(

id INT(4) NOT NULL AUTO_INCREMENT,

PRIMARY KEY (id)(主键)

)

CREATE TABLE cloth_info(

id_number INT(4) NOT NULL AUTO_INCREMENT,

PRIMARY KEY(id_number)(主键)

)

CREATE TABLE cloth_sale_info(

id_number INT(4) NOT NULL,

cloth_id INT(4) REFERENCES cloth_info(id_number),(外键)

user_id INT(4) REFERENCES User_info(id)(外键)

)

CREATE TABLE cloth_store_info(

id_number INT(4) NOT NULL ,

cloth_id INT(4) REFERENCES cloth_info(id_number)(外键)

)

以上就是关于ospf到底做什么用的全部的内容,包括:ospf到底做什么用的、网站与域名的关系、撞库攻击是什么意思 12306数据泄露或为撞库攻击等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9720158.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存