御林军与禁军有什么分别?哪个更厉害一些

作者:小菜 更新时间:2025-03-23 点击数:
简介:在中国的历史上的各个朝代,基本都有御林军,御林军一般都是为了保护而设立的,御林军里面的军人各个身怀绝技,可以以一敌百,战斗力十分强悍,与御林军相似的还有禁军,但

【菜科解读】

在中国的历史上的各个朝代,基本都有御林军,御林军一般都是为了保护而设立的,御林军里面的军人各个身怀绝技,可以以一敌百,战斗力十分强悍,与御林军相似的还有禁军,但是这两只军队是完全不一样的,今天一起谈谈两者的区别 御林军与禁军有什么区别? 关于御林军和禁军的区别,大家可以通过下面的概念来看下,就明白了 禁 军 原指皇帝的亲兵,即侍卫宫中及扈从的军队。

历代有直称禁军、禁兵的,也有另立名目的。

又有此名义而扩大其任务范围的。

禁军初有元从禁军,以后陆续出现飞骑、百骑、千骑、万骑等名目,演变为左右羽林、左右龙武、左右神武、左右神策、左右神威等十军。

其中如神策军即戍守各地,任务不限于宿卫。

北宋称正规军为禁军或禁兵。

从各地招募,或从厢军、乡兵中选拔,由中央政府直接掌握,分隶三衙。

除防守京师外,并分番调戍各地,使将不得专其兵。

每发一兵,均须构密院颁发兵符。

编制单位有军、指挥、都。

士兵出自雇佣,且沿五代朱梁定制,文面刺字,社会地位低于一般人民。

北宋中叶,禁兵增至八十余万人。

变法时裁减兵额,置将分领,加强,战斗力有所提高。

北宋末年,政治腐败,军队缺额极多,京师三衙所统余万人,实际仅存三万人。

北宋亡,禁兵主力溃散。

时,各屯驻大军取代禁兵,成为正规军,而各地尚存的禁兵,则成为专供杂役、不从事战斗的部队。

羽林卫 即“羽林军”,为宫廷禁军,创设于汉武帝太初元年。

时,置左、右羽林军。

也设羽林军,分羽林左卫、羽林右卫。

御林军 简单的说说是保卫都城的卫戍部队。

洪武二年(公元1369年),设立亲军都尉府,统领中、左、右、前、后五卫,专事对皇城的保卫。

洪武六年(公元1373年)造守卫金牌,或镀金铜牌,牌上有篆文"守卫"、"随驾"字样,存尚宝司,军士值班领取佩带,下值时交回。

御林军为什么要戴面具: 他们戴面具跟现在特种兵戴墨镜的道理是一样的,主要不要让敌人看出你的神态,让对手产生敬畏感。

皇帝身边的近卫,一般都带鬼面,一个是防止被认出而收买,另一个是让人产生敬畏之心 在这里带上面具表示皇帝的威严,而且也防止有谋反之心的人对其不轨。

所以带上面具是另一种自我保护,也是对皇上的一种保护。

随机文章「今朝有酒今朝醉」下一句更经典 你知道吗?明朝的戚继光在哪一个皇帝的朝廷任职?苏联最具野心航天计划,研制可重复使用太空船对付美国玄武岩超音速巡航导弹,苏联最强反舰导弹(号称美国航母杀手)揭秘真正的嫦娥长什么样子,三界第一美人竟是丑陋的蟾蜍(辣眼睛)

诸葛亮为什么要求死后葬在定军山?而不是成都呢

北伐又称中原,是时期蜀汉丞相诸葛亮为了匡扶汉室,一统天下,从228年春至234年冬先后兵出汉中,对曹魏发动的五次战争。

不过,对于诸葛亮北伐来说,多以粮尽无功。

终因积劳成疾,于蜀建兴十二年(234年)病逝于五丈原(今陕西宝鸡岐山境内),享年54岁。

根据《》等史料的记载,诸葛亮遗言命令部下将自己葬在汉中定军山,依山势修建坟墓,墓穴仅能容纳下棺材。

那么,问题来了,诸葛亮的家人都在蜀汉都城成都,为什么诸葛亮要求死后葬在定军山?而不是蜀汉都城成都呢? 一 首先,根据《三国志·蜀书·诸葛亮传》的记载,诸葛亮遗命“葬汉中定军山”,所以定军山下建有武侯墓。

对于诸葛亮来说,徐州琅琊阳都(今山东临沂市沂南县)人。

但是,因为在三国时期,徐州琅琊阳都(今山东临沂市沂南县)已经是曹魏的疆域了,诸葛亮显然不能要求死后葬在家乡了。

为此,自己家人所在的蜀汉都城成都,应该是诸葛亮最可能选择的安葬之地。

不过,却要求葬在汉中地区的定军山。

对此,在笔者看来,孔明之所以这么做,原因也比较简单。

二 一方面,诸葛亮之所以要求葬在定军山,是因为定军山在汉中,是蜀汉北伐曹魏的前线。

在此基础上,诸葛亮要求死后安葬在这里,就是表明自己生前时刻铭记北伐中原,匡扶汉室,甚至可以说是为北伐中原而付出了自己的生命,也即。

同时,孔明此举也是为了警示和激励后人,比如希望和、、等文臣武将不要忘了兴复汉室,北伐曹魏,更不能忘了诸葛亮的毕生所愿。

与此相对应的是,诸葛亮如果要求死后安葬在成都或者说是蜀汉的其他地方,显然就没有这样的效果了。

三 另一方面,定军山属大巴山脉,其脉自高庙子入平地,隆起秀峰十二座,自石山子至元山子,号称“十二连峰”,再东为当口寺孤峰,自西向东绵延十多公里。

也即定军山不仅是兵家必争之地,而且拥有众多的山峰。

在此基础上,有个说法就是说诸葛亮去世前留下遗言给后主刘禅,要四个人抬着他的棺一直往南走,绳子在哪里断,就把他埋在哪里。

但是,这四个人在绳子没断的时候已经精疲力尽,所以就在定军山随便选择一个地方将诸葛亮安葬了。

那么,非常明显的是,定军山的复杂地形加上诸葛亮的遗言安排,促使诸葛亮墓的具体所在地至今成谜。

四 最后,如此相对应的是,如果诸葛亮要求死后安葬在蜀汉都城成都的话,那么自己的墓地就比较容易找到了。

在蜀汉实力明显弱于曹魏的背景下,不确定哪一天曹魏的大军就攻破了蜀汉都城成都。

在此基础上,诸葛亮因为多次北伐曹魏,其墓地也可能遭到盗墓和破坏。

所以,诸葛亮要求死后安葬在定军山,借助于定居山复杂的地形,再加上比较隐秘的埋葬方法,从而避免被盗墓的风险。

而这,无疑是诸葛亮聪明才智又一体现。

对此,北魏地理学家郦道元《》中记载:“葬于其山,因即地势,不起坟垄”。

从“不起坟垄”来看,诸葛亮明显不希望他人知道自己的埋葬之处。

随机文章《历史与社会》教学中如何培养学生的读图能力死亡率最高的极限洞穴潜水,美国洞穴一年死25人国产歼20隐形战斗机详解,隐身性和速度超越F35天王星海王星冥王星的区别,冥王星最小天王星最大(八大行星)太平洋最深处有生物吗,海底一万米存在怪物或外星人(细思极恐)

三种模式实现分层结构下transaction数据访问层与业务逻辑分离

三层结构下,数据访问层与业务逻辑分离。

从对象关系角度看,业务逻辑层的对象依赖于数据访问层。

.net平台提供了ado.net对数据库进行操作,connection对象提供了对database连接与transaction的功能。

在分层结构下,数据访问层处理了对数据库的操作,实现了domain每一个对象与database的方法。

例如对象Customer,提供CustomerDAO.Add(),CustomerDAO.Update()等等的方法,每一个方法都会引用独立的connection对象。

业务层直接调用CustomerDAO的方法。

connection对象对业务层是close状态,业务层不能访问到并且控制ado.net提供的transaction。

在不破坏分层体系结构前提下一般有三种方式来实现。

System.Transaction:.net提供的一个使用很简单的解决方法。

System.Transaction允许对local和distributed数据库进行操作。

使用System.Tansaction不用考虑是一个或者多个connection,一个或多个数据库。

例如可以使用TransactionScope,举个例子,下面的code很直观,using (TransactionScope scope = new TransactionScope()){SqlConnection connection1 = new SqlConnection(connectString1)SqlConnection connection2 = new SqlConnection(connectString2)scope.Complete();}有两个connection,System.Transaction会整合成一个tranaction来处理,那么我们只需要在业务层需要transaction的地方使用TransactionScope就可以了,很方便。

虽然方便,但还是有不利的地方。

因为System.Transaction会自动监测connection,如果只有一个,就直接使用ado.net的transaction,perfomance不会影响。

但如果是上面的code,有两个以上的connection,System.Transaction会自动升级为distributed级别,这样performance会打了折扣。

而且对于除sqlserver一些其他的数据库例如oracle,一直会是distributed级别。

这种方式只适合对于performance要求不是很高的项目。

Connection/Transaction参数传递给DAO:这种方式的思路是DAO的对象每一个对象需要提供一个参数来接受是否需要transaction的信息。

例如可以自定义一个MyTrans类,MyTrans类引用一个connection对象。

public class MyTrans{public IConnection connection;public void beginTrans();public void commitTrans();}这样一个包装过的类,就可以使业务层的对象对connection间接的进行操作,例如业务层类customer.Update()就可以这样实现。

using(MyTrans tran=new MyTrans){tran.beginTrans();CustomerDAO dao=new CustomerDAO(tran);dao.Add();tran.commitTrans();}这样实现,对开发的复杂度会增大,DAO需要每个类都要实现一个接受Trans的参数。

这种方式适和那种有充足时间而且想亲自操作数据库的项目。

AOP实现Transaction:这种方式可以参考Spring提供的AOP机制与Spring的Transation,Aop的内部实现是采用了反射原理,利用Typebuilder对Class的Methord进行重新编排,使在逻辑层的对象方法内部自动的加入Connection的transaction的操作。

Spring提供了一个声明的方式,很方便快捷,而且由于使用的Ado.net进行操作,所以performance没有受到任何影响。

如以下Code,只要简单的声明就可以了。

public class TestObjectManager : ITestObjectManager {// Fields/Properties ommited[Transaction()]public void SaveTwoTestObjects(TestObject to1, TestObject to2){TestObjectDao.Create(to1.Name, to1.Age);TestObjectDao.Create(to2.Name, to1.Age);}[Transaction()]public void DeleteTwoTestObjects(string name1, string name2){TestObjectDao.Delete(name1);TestObjectDao.Delete(name2);}}这种方式适合项目较大,需要快速开发,而且项目决策者愿意使用工具的项目。

三种,模式,实现,分层,结构,下,transaction,数

加入收藏
               

御林军与禁军有什么分别?哪个更厉害一些

点击下载文档

格式为doc格式

  • 账号登录
社交账号登录