zoukankan      html  css  js  c++  java
  • 为什么使用三层,自己的思考

    为什么分层?代码复用,维护方便(不用牵一发而动全身)
    在BLL层传调用存储过程(传存储过程名),还是在BLL中写sql代码?

           1)更好的维护和可读性。
    它集中在一个地方,能够使三层架构的实现更加简单(存储过程将组成数据层)
    部署到客户时,要修改逻辑只需修改存储过程,无需重新编译BLL组件。除非增加存储过程应用到程序中
    更改数据库时,比如换成oracle,mysql。只需重建所有存储过程,无需重新编译BLL组件。
    可读性:如果生写sql代码在BLL中,那么c#代码与sql代码混杂在一起,修改起来很难定位,容易出错
           2)更好的性能。因为sqlserver在它第一次执行时就生成并缓存了存储过程的执行计划
           3)安全。sqlserver可以为每一个存储过程设置不同的安全许可;而在c#代码中创建的sql查询,更容易受到sql注入攻击


    不使用三层,在表现层中直接嵌入sql代码?
    根本没有代码复用,修改起来牵一发而动全身,重复n次一样的sql语句

    而三层:重用,可维护,移植,架构清晰,方便了分工合作
    所以,应该严格的使用三层,并在BLL全部调用存储过程,而不是生写sql代码
  • 相关阅读:
    js 图表处理之Echar
    web.py url传参及获取
    算法理论基础
    Django------model基础
    python 数据分析----matplotlib
    python 数据分析----pandas
    python 数据分析----numpy
    ipythons 使用攻略
    Django----Request对象&Response对象
    Django---ModelForm详解
  • 原文地址:https://www.cnblogs.com/eversteins/p/2214418.html
Copyright © 2011-2022 走看看