很久以前,你可能习惯了connection.open,command.execute("select...")这样的代码,写啊写啊,你开始 不停地copy/paste,因为数据库的操作太雷同了,还好,粘粘贴贴倒也凑合,然后有一天客户说他们要用oracle,于是你开始抱着本oracle 开发指南狂啃pl/sql,你开始试验调用oracle的存储过程该怎么写,参数是用@还是?或者是:,取个blob游标又要咋写,你纳闷为啥这不同的数 据库sql区别咋这么大呢?不都是号称符合啥sql几几的标准吗?你的头开始痛了,你开始写不同的DAL,代码与十指齐飞,脑袋昏昏天黑黑——又加班 了!!这次第,怎一个愁字了得!!
然后你觉得再也不能这样过了,再也不能这样活了,你开始用DAAB,后来升级到Enterprise Library,恩,不错,代码好象少了,后来再加个Code Smith,恩,不错,自动生成代码,自己敲键盘少了,虽然你还得在不同的数据库间挣扎,还得把取出来的数据一点一点地填到你的实体类里,但是目前看上去 还不赖,可以忙里偷闲泡杯两块八一包的劣质茶叶咂吧咂吧你那被劣质显示器辐射的开裂的嘴唇了。但是你觉得还不够,你在想,是否有Code Neo,或者干脆来个Code Matrix,整个DAL都不用自己写了,自动把数据库的数据填到自己的实体类里,然后对这个对象进行操作就行了,剩下的CRUD全部有这个Code Matrix来完成,达不达??
神啊,救救我吧……
“当当当当……“,O/R Mapping来到了大家的眼前。
O/R Mapping全称是object/rational mapping,即对象/关系数据库映射,意思是对象模型和关系模型的映射,也就是把我们常见的以对象模型表示的对象映射到关系模型上去,当然,这个关系 模型我们常常指的是目前大部分主流的关系数据库,如oracle/sqlserver等等。基于.Net来说,o/r mapping就是将我们的.Net类映射到数据库中指定的表上,由O/R Mapping框架帮我们实现object<-->table之间的交互,我们完全不再需要写sql语句(当然不是绝对的),也不再关心背后 用的是那种数据库,你只需要定义好对象和数据库该如何交互,剩下的,全部由O/R Mapping的框架来解决,你只需要如下代码即可:
Customer cust = framework.Get(...);
cust.Name = "newname";
framework.Save(cust);
或者:
framework.Delete(cust);
ok!!手起键盘落,整个世界清净了!!
是不是很动心啊??
ok,正式介绍今天的主角——Hibernate!!
Hibernate是一个目前应用的最广泛的开放源代码的 对象关系映射框架,它对Java的JDBC(类似于ADO.Net)进行了非常轻量级的对象封装,使得程序员可以随心所欲的使用对象编程思维来操纵数据 库,目前在国内Java开发界已经颇为流行,Hibernate+Spring往往是很多Java公司招聘的要求。而NHibernate,顾名思义,如 同NUnit,NAnt一样,是基于.Net的Hibernate实现,但是目前介绍NHibernate的资料非常少,缺少一个系统完整的教程来全面的 展现和深入NHibernate,而且现在NHibernate的文档又残缺不全,少的可怜,很多NHibernate的学习者往往都是通过 Hibernate的文档来学习,但是毕竟不是所有的.Net开发者都熟悉Java,也不是所有的人都有精力有时间去学习Java,所以,我准备开始一个 Step by Step的NHibernate教程,以便有兴趣的朋友能够快速的熟悉NHibernate,能够更快地体验NHibernate的开发乐趣。
我将会从零开始,配以详细的代码和图片,以便感兴趣的朋友能够最快最清晰地掌握NHibernate,任何建议,请e至:abluedog@163.com
分享到:
相关推荐
中点电位平衡控制,载波层叠调制,三电平变器,三电平逆变器,T型变器
f94e41aefe80...d.apk
基于 ROS 导航栈,使用 MPC 进行路径跟踪 资源内项目源码是均来自个人的课程设计、毕业设计或者具体项目,代码都测试ok,都是运行成功后才上传资源,答辩评审绝对信服的,拿来就能用。放心下载使用!源码、说明、论文、数据集一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 4、如有侵权请私信博主,感谢支持
MATLAB再生制动模型 simulink 制动能量回收模型 电动车复合制动模型 刹车回能模型 电机再生制动 视频操作,截图说明,简单易懂,一一对应。 电动汽车再生制动控制策略模型,采用逻辑门限值控制算法,依次分配前后轮制动力,分配电机制动力和液压制动力。 包括详细建模过程+建模公式+模型使用说明
video_250111_202128.mp4
MATLAB 实现的混合储能功率分配策略和容量配置 背景:风力并网功率平抑 算法:遗传算法 麻雀搜索算法 变分模态分解 VMD 目标:经济性最优 模型:储能系统变寿命模型 算法源程序,可运行
保姆级RRT+Dijstra基于目标导向优化改进的路径规划算法,机器人路径规划导航RRT,有算法matlab源文件,可直接运行,适合初学者学习, 双向RRT+Dijstra,单向RRT+Dijstra都有,都是做了改进的。 仅供学习使用
寒假培训医疗管理平台前后端
料箱输送线程序,有合流和分拣, 精华部分是WCS和PLC的Socket接口和分拣控制程序 提供设备布局图和电气图纸以及博途V16程序。 程序源自欧企,无加密,外企程序还是比较美观的,程序仅供学习参考,不讲解 硬件配置:PLC:1516F-3 PN DP,1212C等 HMI:TP1200 Confort等 主要设备有:英特诺直流辊筒电机和控制卡 条码阅读器DataMan 470 SEW MOVIfit变频器
c1100-universalk9_ias.16.08.01.SPA.bin
===如资源质量问题,可半价退款,代下全网资源,价格公道==== 标题 "2021年10月补丁修复win10打印问题专业.rar" 指的是一个专门针对Windows 10操作系统中的打印问题而设计的更新补丁。这个补丁可能包含了对“Print Spooler”服务的修复,因为打印问题往往与这个服务有关。Print Spooler是Windows系统中的一个核心服务,它负责管理打印任务的队列,将打印作业从应用程序发送到打印机。 描述中提到的“复制在桌面以管理员身份运行文件就解决了”,意味着这是一个可执行文件(可能是批处理脚本或安装程序),需要以管理员权限运行才能正确应用补丁。这是为了确保文件能修改系统级别的设置,尤其是那些可能受权限保护的服务或驱动程序配置。 基于“打印机”和“共享打印机”的标签,我们可以推断这个问题不仅涉及本地打印机,还可能包括网络上的共享打印机。在Windows 10环境中,用户经常通过网络共享打印机,以便多台计算机可以共用一台打印机。然而,共享打印机有时会。内容来源于网络分享,如有侵权请联系我删除。另外如果没有积分的同学需要下载,请私信我。
前端分析-2023071100789
轴承,导轨,联轴器,卡簧选型
基于51单片机的太阳能自动追光系统-仿真设计 本设计是基于单片机的太阳能自动追光系统,主要实现以下功能33: LCD1602显示角度步进电机的角度、方向步进电机的方向、时间以及模式 系统具有自动模式(晴天)与时间模式(阴天) 自动模式下,当四个光敏电阻测量光照度过小,自动进入时间模式且LED灯亮 自动模式下,那个方向的光照值小与其他三个方向的一定数值,方向步进电机将旋转至该方向 自动模式下,角度步进电机不起作用(回零) 时间模式下,角度步进电机根据DS1302的时间进行调节角度步进电机的角度 时间模式下,方向步进电机不起作用(回零) DS1302时间可通过串口进行调节(发送三个HEX数据就行,三个分别为时分秒) 标签:51单片机、步进电机、LCD1602、ADC0832 本设计以STC89C52单片机为核心控制器,加上其他的模块一起组成太阳能电磁板光线自动跟踪的整个系统,其中包含中控部分、输入部分和输出部分。 中控部分采用了STC89C52单片机,其主要作用是获取输入部分数据,经过内部处理,控制输出部分。 输入由四部分组成,第一部分是DS1302时钟模块,通过该模块可获取当前的时间;第
三菱FX3U分切机程序,采用三菱伺服的速度与力矩模式,收料采 用锥度与恒张力两种控制模式,程序包含锥度计算详细步骤,有模拟量输入输出,有张力检测,有PID调节,是锂电行业分切机通用程序模板
【中华野史系列】朝野佥载.pdf【中华野史系列】朝野佥载1.pdf
基于主从博弈的共享储能与综合能源微网优化运行研究 综合能源微网与共享储能的结合具有一定的创新性,在共享储能的背景下考虑微网运营商与用户聚合商之间的博弈关系,微网的收益和用户的收益之间达到均衡。 采用主从博弈的方法,微网运营商作为上层领导者制定价格策略,用户聚合商作为下层跟随者改变用能行为,共享储能商作为辅助设施。 利用迭代式启发式算法和对于MILP问题的CPLEX求解器对博弈模型进行求解,最终达到微网聚合商和用户聚合商的利益双赢的目标。 主要针对文章中的情景四,即含有共享储能和电制热设备进行仿真复现。 参考文献:《基于主从博弈理论的共享储能与综合能源微网优化运行研究_帅轩越》 关键词:综合能源微网;主从博弈;共享储能;电热综合需求响应
内容概要:本文探讨了在视频编码过程中取消整像素搜索(integer-pel search)这一传统步骤对高分辨率视频的影响。整像素搜索一直是提升编码性能的重要手段,在以往的研究和技术应用中占据了大量的时间和资源。然而作者发现对于现代高分辨率视频而言,即使省略这个步骤也能得到几乎相同的效果,并带来显着的时间节约以及更低的成本消耗(时间、硬件面积、内存带宽)。实验结果显示,取消整像素搜索对于许多高分辨率序列(特别是分辨率为1080p及以上)的最终压缩效率影响微乎其微,而总体编码时间可以节省超过一半。此外,基于帧级与宏块级别的分析进一步验证了这种方法的可行性和优势。作者还研究了几种不同的因素(如预测窗口大小、位速率、GOP结构)对这种方法效果的影响,并与当前流行的一些快速搜索算法进行了对比评估。总之,在保持高质量的同时大幅度提高了编码速度,尤其是在高分辨率和多层运动估计应用场景下,证明了一种全新的高效能低复杂度的技术路径可行性。 适合人群:本篇文章适用于从事视频编码领域的研究人员和专业开发人员,尤其是那些正在探索优化高分辨率视频编码方法的人群。 使用场景及目标:1) 对于想要减少硬件开销并提高计算效能的数据中心或者视频流服务平台来说,可以通过实施无整像素搜索来实现成本和功耗方面的巨大节约;2) 研究团队希望找到一种有效的方式降低大规模视频转码任务所需的时间和资源;3) 开发新一代高性能视频编码器产品的工程师们可以从该方法获得启发。 其他说明:尽管在某些特定条件下(例如超快动作或极高压缩率),无整像素搜索可能导致轻微质量下降,但总的来说它提供的性能改进远远超过了任何潜在损失,并且非常适合当今市场主流高清内容的需求趋势。此外,论文附录中包含了具体实现方式和技术细节介绍,帮助感兴趣的读者更深入地理解和复制实验结果。
西门子1200博途程序与威纶触摸屏画面实例 ,博图版本V15及以上,内容涉及上位机通讯,modbus485,伺服等。 具体有: 1,西门子1200控制4台步进电机; 2,西门子1200与4台MS300变频器modbus485轮询读写参数; 3,西门子1200与上位机TCP IP通讯控制相机拿照,反馈数据; 4,设备为多工位联动控制。
内容概要:本文详细介绍了一个基于MATLAB的小波包变换(DWT)和卷积神经网络(CNN)结合的电缆故障诊断系统。项目涵盖了从环境搭建、数据准备到模型设计、训练、评估的全过程,并展示了详细的GUI设计与可视化界面的实现。首先对电缆故障的背景和意义进行了深入讨论,随后介绍了数据预处理方法,通过小波包变换提取电缆信号的多尺度特征,接着使用CNN进行深度学习并优化分类模型。模型架构包括输入层、小波包变换层、卷积层、池化层和全连接层。为解决数据集构建困难的问题,文中提到数据增强及合成的方法,同时也考虑到了实时数据流处理、模型解释性以及跨设备兼容性等方面的挑战。最后,文章提供了完整的模型实现代码片段,并提出了未来改进建议和技术扩展方向。 适合人群:具备一定编程基础的研发人员或技术人员,尤其对智能电网建设和设备健康监测感兴趣者。 使用场景及目标:针对电力系统中的电缆故障诊断,旨在开发出一款高效、准确、实时性强且具有良好泛化能力和自动化的电缆故障诊断系统。可用于工业设备的状态监测、智能电网中的电缆健康评估等方面。 其他说明:项目包含丰富的参考资料和代码示例,并探讨了包括多任务学习、在线更新在内的高级话题。