网站界面设计起着决定性作用网站建设验收方发言稿

bicheng/2026/1/26 5:38:56/文章来源:
网站界面设计起着决定性作用,网站建设验收方发言稿,品牌设计公司排名广州设计,团购网站 方案orm的理解我看过无数的文章和评论#xff08;尤其是评论#xff09;#xff0c;它们告诉我们ORM#xff08;对象关系映射#xff09;概念的严重性#xff0c;糟糕性和错误性。 以下是通常的声明#xff0c;以及我对它们的评论#xff1a; “它们很慢” –映射有一些开销… orm的理解 我看过无数的文章和评论尤其是评论它们告诉我们ORM对象关系映射概念的严重性糟糕性和错误性。 以下是通常的声明以及我对它们的评论 “它们很慢” –映射有一些开销但这并不严重。 您可能会拥有慢得多的代码段。 “它们会产生不利于性能的错误查询” –首先它产生的查询要比常规开发人员编写的查询好其次–如果您使用错误的映射则会产生错误的查询。 “它们剥夺了您的控制权” –您可以自由执行本机查询 “您不需要它们普通SQL和XDBC很好” –不但是我将在下一段中讨论 “它们迫使您使用不好的吸气剂和吸气剂” –您的实体是简单的价值对象 在那里使用吸气剂/吸气剂就可以了 。 下面的更多内容 数据库升级非常困难– ORM周围有很多工具可以简化架构转换。 许多ORM都内置了这些工具 但是为什么首先需要一个ORM 假设您决定不使用一个。 您编写查询并以ResultSet的形式或所用语言的任何形式将结果取回。 您可以在那里通过其名称访问每一列。 结果是类型不安全的类似地图的结构。 但是系统的其余部分需要对象–前端组件需要对象服务方法需要对象作为参数等等。这些对象是简单的值对象并且通过getter公开它们的状态没有错。 他们没有任何对状态进行操作的逻辑仅用于传输状态。 如果您使用的是静态类型的语言则很可能在代码周围使用对象而不是类型不安全的结构更不用说这些结构是数据库访问接口并且您不会在前端使用它们码。 因此您想到了一个绝妙的主意–“我将创建一个价值对象并将结果集中的所有内容都转移给它。 现在我已经将数据保存在一个对象中并且不需要在数据库中传递特定于接口的接口来传递代码。” 这是伟大的一步。 但是很快您就意识到这是一项重复性的任务–您正在创建一个新对象然后手动逐字段手动将结果从SQL查询传输到该对象。 然后您设计了一个巧妙的反射实用程序该实用程序可以读取对象字段并假设您在数据库中具有相同的列名读取结果集并填充对象。 好吧猜猜是什么-多年来ORM一直在做同样的事情。 我敢打赌他们的更好并且可以在许多您认为不需要的场景中工作。 而且我只是简单地说明了维护本地查询的过程有多奇怪-有些将它们放在一个巨大的文本文件中难看而另一些则将它们放在行内DBA现在如何优化它们 总结上一段–您将在项目中创建某种ORM但您的项目将比那里吸收的更多并且您不会承认它是ORM。 这是提到称为commons-dbutils Java的实用程序的好地方。 它是将数据库结果映射到涵盖基本情况的对象的简单工具。 它不是ORM但它执行ORM的工作–将数据库映射到您的对象。 但是基本的列到字段映射器中缺少一些东西那就是外键和联接。 使用ORM即使需要JOIN来获取用户地址也可以在“地址”字段中获取用户的地址。 这既是ORM的优点也是主要的缺点。 * ToOne映射通常是安全的。 但是* ToMany集合可能非常棘手并且经常被滥用 。 这部分是ORM的错误因为ORM不会以任何方式警告您映射一组属于公司的所有订单的后果。 您将永远也永远不需要访问该集合但是可以对其进行映射。 我从未听说过ORM反对者的说法因为他们还没有达到这一点。 那么ORM基本上是dbutils加上危险的集合映射吗 不它为您提供了许多所需的其他功能。 方言–您以与数据库无关的方式编写代码尽管您可能不会更改最初选择的数据库供应商但是使用任何数据库都容易得多而无需每个开发人员都了解语法的罪魁祸首。 我曾经使用过MSSQL和Oracle但与他们合作几乎没有痛苦。 另一个非常非常重要的事情是缓存。 您会执行两次相同的查询吗 我猜不是但是如果碰巧是在第三个方法调用的两个单独的方法中则可能很难捕获或避免。 会话缓存来了它将为您保存所有重复的查询以便从数据库中获取某些行对象。 这里对ORM的另一种批评是-会话管理太复杂了。 我主要使用JPA因此我无法透露其他信息但是正确地进行会话管理确实很棘手。 都是出于非常好的原因前面提到的缓存事务管理延迟映射等但是它仍然太复杂了。 您需要团队中至少有一个对特定ORM有丰富经验的人员来正确地进行设置。 但是还有二级缓存这要重要得多。 这种事情可以使facebook和twitter等服务得以存在–您将很少变化的数据填充到分布式内存中而不是每次都查询数据库而是从内存中获取对象这快了很多倍。 为什么这与ORM相关 因为通常可以将缓存解决方案插入ORM并且您可以将ORM生成的对象完全存储在内存中。 通过这种方式缓存对您的数据库访问代码变得完全透明从而使其简单而高效。 因此总而言之– ORM仍在执行您需要做的事情但是几乎可以肯定的是存在10年的框架比您自己的映射器要好并且它们在顶部提供了许多必要且重要的附加功能他们的核心功能。 他们也有两个弱点他们实际上都说“您需要知道自己在做什么” 它们很容易被滥用这可能导致从数据库中获取大量不必要的结果。 您可以非常轻松地创建mapping脚的映射这会减慢您的应用程序的速度。 当然有一个好的映射是您的责任但是ORM并没有真正帮助您 他们的会话管理很复杂尽管有很好的理由但可能需要团队中经验丰富的人才能正确地进行设置 我从未见过将这两个用作反对ORM的论据而本文开头的错误用法却经常被使用这使我相信对ORM狂热的人们很少知道他们在说什么。 参考 ORM Haters不要从Bozho的技术博客博客上的JCG合作伙伴 Bozhidar Bozhanov那里 得到它 。 翻译自: https://www.javacodegeeks.com/2012/05/orm-haters-dont-get-it.htmlorm的理解

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/86637.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

刷网站排名软件济南企业自助建站

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程 1 、安装GDB sudo apt-get install gdb 2 、怎么打断点 1 、源文件的某一行设置断点 break 行号 2、一个特定的函数设置断点 break 函数名 3、设置条件断点 break 行号 i…

wordpress毛玻璃主题优化网站排名公司

1.问题:官网BUG 本地做 yum 仓库,下载的文件,只有 23 版本的,其他的版本没有文件(版本23,占用2.1T后,一直不下载其它版本;) 2.解决方案: 2.1. rsync剔除不要的版本 [rootlocalh…

网站添加cms东莞常平火车站叫什么

PL/pgSQL是Vastbase提供的一种过程语言,在普通SQL语句的使用上增加了编程语言的特点,可以用于创建函数、存储过程、触发器过程以及创建匿名块等。 本文介绍Vastbase中PL/pgSQL的执行流程,包括PL/pgSQL的编译与运行。 1、编译 PL/pgSQL的编译…

家装类设计网站长沙市网站推广电话

如果全球影像每5天一更新,并集多种地图数据源于一体的PB级海量地图数据该怎样去管理呢? 这是当我了解到SOAR网站之后,思考过的一个问题。 全球最大的在线地图网站 在SOAR的官方网站,据称它是世界上最大的在线地图网站。 它是集…

南昌正规网站公司吗宁波建设监理管理协会网站

去年这个时候简单的摸索了一下三维的GIS相关的东西,也就是仅仅玩耍了一把,这次来点真正用的上的干货效果效果: 1、加载自定义百度样式的瓦片效果 2、加载自定义百度样式的缩放效果 3、快速手动进去咱的大帝都 4、加载海量Mark效果 5、加载海量Mark和简单模型效果 6、…

大家都用哪个网站做读书笔记临沂企业建站系统模板

项目编号: S 060 ,文末获取源码。 \color{red}{项目编号:S060,文末获取源码。} 项目编号:S060,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 鹅块类型模块2.3 固…

最好的营销网站网页构建语言

1. 背景 网上搜了很多文章,总算有点头绪了。其实隐私清单最后做出来就是一个plist文件。找了几个常用三方已经配好的看了看,比着做就好了。 WWDC23 中关于隐私部分的更新(WWDC23 隐私更新官网),其中提到了第三方 SDK 的…

仿牌网站优化企业网站策划方案书

一、NetCDF介绍 NetCDF(network Common Data Form)网络通用数据格式是由美国大学大气研究协会(University Corporation for Atmospheric Research,UCAR)的Unidata项目科学家针对科学数据的特点开发的,是一种面向数组型并适于网络共享的数据的描述和编码标准。NetCDF广泛应…

丹徒网站建设怎么样本地的赣州网站建设

SSL 证书(也称为公钥证书)是安装在 Web 服务器上的加密文件,可帮助建立安全、加密的在线通信,SSL 证书有两个主要用途: 提供加密:当访问者的浏览器通过SSL连接到您的网站时,信息交换是加密的&a…

网站开发与维修是什么意思用流媒体做的电台网站

SVG实现波浪效果 svg path:C 贝塞尔曲线绘制波浪形状 A 绘制圆弧形 svg animate:制作波浪动画,为了波浪动画效果自然,设置values关键点       attributeName:变化属性名 dur:动画时间 repeatCount&a…

网站建设在淘宝上以后让还让发布吗建筑工程类人才招聘

使用akshare可以很方便的获取同花顺行业列表,与每个行业对应的个股信息,流程如下: 使用ak.stock_board_industry_summary_ths()获取行业列表循环行业列表,使用ak.stock_board_industry_cons_ths()获取行业对应的个股信息 官方文…

给客户做网站建设方案企业邮箱怎么获取

目录 一、Chunk基本概念 1. Chunk的概念: 2. 配置Chunk: 3. Chunk的示例配置: 4. Chunk的执行流程:

什么网站做装修的推广引流的10大渠道

dataset库是Python中一个用于操作数据库的简单库,它提供了一种简洁的方式与各种关系型数据库进行交互,例如SQLite、MySQL、PostgreSQL 等。你可以使用dataset库来执行查询、插入、更新和删除操作,而无需编写复杂的SQL语句。dataset库适用于小…

济南网站制作平台电商主图模板

前言: 下面分享一些关于阿里,美团,深信服等公司的面经,供大家参考一下。大家也可以去收集一些其他的面试题,可以通过面试题来看看自己有哪里不足。也可以了解自己想去的公司会问什么问题,进行有针对的复习。…

网站开发费用包括美工费吗巴彦淖尔 网站建设

Every day a Leetcode 题目来源:2786. 访问数组中的位置使分数最大 解法1:动态规划 状态数组: dp[i][0]: 访问下标范围 [0, i] 中的元素且最后访问的元素是偶数时的最大得分;dp[i][1]: 访问下标范围 [0, i] 中的元素且最后访问…

婚纱网站html模板微信怎么开通公众号

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 ......................................................................... N 10; %嵌入一…

网站效果图怎么做的如何制作自己的网站链接教程

安装交叉编译环境 需要一个 Ubunut18.04 的64位的主机 或者直接在树莓派系统上进行编译; apt-get update apt-get install -y bc build-essential gcc-aarch64-linux-gnu git unzip获取树莓派内核源码 # 下载成功后,在当前目录下有一个 linux 的文件夹 g…

安阳网站建设策划网站标题间隔符

👽发现宝藏 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 Flask vs. Django:选择适合你的Web开发框架 在选择一个适合你项目的Web开发框架…

手上有一个好网站怎么做赚钱西安微信网站开发

UniApp 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一次代码,可发布到iOS、Android、H5以及各种小程序。如果你想在 UniApp 中操作云数据库,你可能需要使用云开发的功能。 以下是在 UniApp 中操作云数据库的一般步骤: …

wamp在网站建设中的功能及协作关系站长工具排名查询

为什么产生? 经过大量增删改的表,都可能存在碎片 MySQL数据结构是B树, 删除某一记录,只会标记为删除,后续插入一条该区间的记录,就会复用这个位置。 删除整个数据页的记录,则整个页标记为“可…