摘要: 第四节:MVC中AOP思想的体现(四种过滤器)并结合项目案例说明过滤器的实际用法 一. 简介 MVC中的过滤器可以说是MVC框架中的一种灵魂所在,它是MVC框架中AOP思想的具体体现,所以它以面向切面的形式无侵入式的作用于代码的业务逻辑,与业务逻辑代码分离,一经推出,广受开发者的喜爱。 那么过滤器到 阅读全文
posted @ 2020-08-06 20:09 暗※空 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 本节内容 引入 使用NHibernate二级缓存 启用缓存查询 管理NHibernate二级缓存 结语 返回文章列表 引入 这篇我还继续上一篇的话题聊聊NHibernate二级缓存剩下的内容,比如你修改、删除数据时,二级缓存是什么策略呢?我们如果使用缓存查询呢?如何管理NHibernate二级缓存呢 阅读全文
posted @ 2020-08-06 10:49 暗※空 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 本节内容 引入 介绍NHibernate二级缓存 NHibernate二级缓存提供程序 实现NHibernate二级缓存 结语 返回文章列表 引入 上一篇我介绍了NHibernate内置的一级缓存即ISession缓存。这篇我们来了解下NHibernate二级缓存即ISessionFactory级别 阅读全文
posted @ 2020-08-06 10:48 暗※空 阅读(92) 评论(0) 推荐(0) 编辑
摘要: 本节内容 引入 NHibernate一级缓存介绍 NHibernate一级缓存管理 结语 返回文章列表 引入 大家看看上一篇了吗?对象状态。这很容易延伸到NHibernate的缓存。在项目中我们灵活的使用NHibernate的缓存机制。NHibernate性能会大大提高的哦,我们接下来就来探索NHi 阅读全文
posted @ 2020-08-06 10:47 暗※空 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 本节内容 引入 对象状态 对象状态转换 结语 返回文章列表 引入 在程序运行过程中使用对象的方式对数据库进行操作,这必然会产生一系列的持久化类的实例对象。这些对象可能是刚刚创建并准备存储的,也可能是从数据库中查询的,为了区分这些对象,根据对象和当前会话的关联状态,我们可以把对象分为三种: 瞬时对象: 阅读全文
posted @ 2020-08-06 10:46 暗※空 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 本节内容 引入 实例分析 1.表及其约束 2.存储过程、视图 结语 返回文章列表 引入 上篇我们初步探索了SchemaExport工具使用,知道如何使用SchemaExport工具和SchemaUpdate工具利用NHibernate持久化类和映射文件删除、创建、更新数据库架构,这篇具体分析如何为表 阅读全文
posted @ 2020-08-06 10:44 暗※空 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 本节内容 引入 SchemaExport工具 SchemaUpdate工具 实例分析 结语 返回文章列表 引入 我其实都是一直先编写持久化类和映射文件,然后使用SchemaExport工具生成数据库架构。这样的方式就是领域驱动设计/开发(DDD,Domain Driven Design/Develo 阅读全文
posted @ 2020-08-06 10:43 暗※空 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 本节内容 引入 代码生成工具 结语 返回文章列表 引入 我们花了大量的篇幅介绍了相关NHibernate的知识,一直都是带着大家手动编写代码,首先创建数据库架构,然后编写持久化类和映射文件,最后编写数据操作方法,测试方法。这是典型的数据库驱动开发(DbDD,Database-Driven Devel 阅读全文
posted @ 2020-08-06 10:41 暗※空 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 本节内容 引入 实例分析 拾遗 结语 返回文章列表 引入 上两篇,介绍使用MyGeneration提供的模板创建存储过程和删除对象、创建对象、更新对象整个详细过程,这篇介绍如何利用<sql-query>做更多的事,在程序开发中,我们不仅仅只利用存储过程增删查改对象,我们还可以想执行任意的存储过程,这 阅读全文
posted @ 2020-08-06 10:38 暗※空 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 本节内容 引入 实例分析 2.创建对象 3.更新对象 结语 返回文章列表 引入 上一篇,怎么使用MyGeneration提供的模板创建存储过程和删除对象存储过程的使用,这篇接下来介绍在NHibernate中如何使用存储过程创建对象、更新对象整个详细过程,这些全是在实际运用中积累的经验,涉及使用的错误 阅读全文
posted @ 2020-08-06 10:37 暗※空 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 本节内容 引入 使用MyGeneration生成存储过程 实例分析 1.删除对象 结语 返回文章列表 引入 上一篇,我们介绍了视图,征集大家的意见,我接下来可能用三篇篇幅来介绍在NHibernate中如何使用存储过程的整个详细过程,这些全是在实际运用中积累的经验,涉及刚刚使用的错误信息,如何修改存储 阅读全文
posted @ 2020-08-06 10:35 暗※空 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 本节内容 引入 1.持久化类 2.映射文件 3.测试 结语 引入 在数据库操作中,我们除了对表操作,还有视图、存储过程等操作,这一篇和下篇来学习这些内容。这篇我们来学习如何在NHibernate中使用视图。首先,我们在数据库中建立一个名为viewCustomer视图,选中CustomerId、Fir 阅读全文
posted @ 2020-08-06 10:33 暗※空 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 本节内容 引入 立即加载 实例分析 1.一对多关系实例 2.多对多关系实例 结语 引入 通过上一篇的介绍,我们知道了NHibernate中默认的加载机制——延迟加载。其本质就是使用GoF23中代理模式实现,这节我们简单分析NHibernate另一种加载机制——立即加载。我用一张图片形象的展现立即加载 阅读全文
posted @ 2020-08-06 10:31 暗※空 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 本节内容 引入 延迟加载 实例分析 1.一对多关系实例 2.多对多关系实例 结语 返回文章列表 引入 通过前面文章的分析,我们知道了如何使用NHibernate,比如CRUD操作、事务、一对多、多对多映射等问题,这篇我们初步探索NHibernate中的加载机制。 在讨论之前,我们看看我们使用的数据模 阅读全文
posted @ 2020-08-06 10:29 暗※空 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 本节内容 多对多关系引入 多对多映射关系 多对多关联查询 1.原生SQL关联查询 2.HQL关联查询 3.Criteria API关联查询 结语 返回文章列表 多对多关系引入 让我们再次回顾在第二篇中建立的数据模型: 在图上,我已经清晰的标注了表之间的关系,上两篇分析Customer和Order之间 阅读全文
posted @ 2020-08-06 10:25 暗※空 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 本节内容 关联查询引入 一对多关联查询 1.原生SQL关联查询 2.HQL关联查询 3.Criteria API关联查询 结语 返回文章列表 关联查询引入 在NHibernate中提供了三种查询方式给我们选择:NHibernate查询语言(HQL,NHibernate Query Language) 阅读全文
posted @ 2020-08-06 10:08 暗※空 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 本节内容 引入 NHibernate中的集合类型 建立父子关系 父子关联映射 结语 返回文章列表 引入 通过前几篇文章的介绍,基本上了解了NHibernate,但是在NHibernate中映射关系是NHibernate中的亮点,也是最难掌握的技术。从这篇开始学习这些东西,我将图文结合来说明这里奥秘的 阅读全文
posted @ 2020-08-06 09:59 暗※空 阅读(372) 评论(0) 推荐(0) 编辑
摘要: 本节内容 引入 方案1:直接添加 方案2:巧用组件 实例分析 结语 返回文章列表 引入 通过前面7篇的学习,有点乏味了~~~这篇来学习一个技巧,大家一起想想如果我要在Customer类中实现一个Fullname属性(就是Firstname和Lastname的组合)该怎么做呢? 方案1:直接添加 “我 阅读全文
posted @ 2020-08-06 09:45 暗※空 阅读(147) 评论(0) 推荐(0) 编辑