首页 » 服务器/数据库 » Java Web开发中,业务逻辑写在SQL里好还是代码里好呢?有什么建议吗「web调用数据库」

Java Web开发中,业务逻辑写在SQL里好还是代码里好呢?有什么建议吗「web调用数据库」

访客 2025-02-14 0

扫一扫用手机浏览

文章目录 [+]

Java Web开发中,业务逻辑写在SQL里好还是代码里好呢?有什么建议吗

关于这个问题应该分场景,不能一概而论。中小项目推荐使用存储过程解决大部分业务,代码量少,方便维护。大型项目涉及到分布式,缓存等等,考虑到数据库的开销就不建议太过依托数据库处理了,因为大并发下数据库处理复杂业务根本处理不过来。

目前能想到的场景里 只有统计报表系统 部分报表聚合逻辑适合写在sql中 开发效率较写在中间层要高 大部分报表可以做到sql查询所见即所得。但是 要求研发有很强的集合概念 熟悉库表结构 sql语法 和 各种sql方言

Java Web开发中,业务逻辑写在SQL里好还是代码里好呢?有什么建议吗「web调用数据库」 服务器/数据库

其他场景 例如 各个业务线比入订单流程 等 数据库的作用还是回归存储 比较好 其他的逻辑控制等防在中间层比较好

谢邀~关注我,了解更多关于开发、架构的分享

个人建议,普通的业务逻辑尽量写在后台代码中,尽量避免写在SQL中,并且尽量避免使用存储过程。

不可否认将业务逻辑写在SQL或存储过程中,也是有这种做法的优点,比如:可以减少网络交互的成本,原本后台程序需要多次访问数据库,现在可以用复杂的SQL或者存储过程封装好,然后程序调用一次即可。

但是复杂SQL和存储过程也有很大的缺点:

  1. 不可移植性,每种数据库的语法多多少少都会有一些差异;如果SQL中使用到数据的一些函数、方法,而这些又是该数据独有的,那么很难做数据库的迁移。

  2. 业务逻辑会存在SQL和程序中,这种业务逻辑多处存在,会让后期的系统维护和调试都变得更加困难。

  3. 数据库中所支持的函数及语法不一定可以满足所有的需求,相比来说,编程语言中的功能更加的强大。

  4. 如果SQL、存储过程中有复杂的计算,也会增加数据库机器的压力;并且很难做到分布式部署。

  5. 相比编程语言,业务逻辑写在SQL、存储过程中,很难做到业务逻辑的抽象,所以从代码复用的角度来看,编程语言更胜一筹。

所以,普通业务逻辑尽量不要使用复杂SQL或存储过程,而如果是报表统计或者ETL抽取等功能,可以根据实际的情况,采用复杂SQL或者存储过程来处理。


我将持续分享Java开发、架构设计、程序员职业发展等方面的见解,希望能得到你的关注。

web前端怎么连接sql

前端技术是没法直接连接或者说用sql操作数据库的,这是出于安全的考虑。一般前端和数据库发生关系,要么通过服务端提供的api进行操作,要么就是自己写一个服务端程序,对于前端程序员而言,一般都是用nodejs写一套操作数据库的程序。

如何学习web安全,需不需要学sql数据库

先回答下数据库问题:数据库是一定要学的,很多时候你都会用的到!!!接下来分享来自一个安全界大佬的建议: 喜欢的请关注一下,非常感谢


1.web安全如果想要精通,一定要有编程基础,一定不要放弃编程,目前推荐python;

2.通过网上或者其他途径了解漏洞的利用以及原理;

3.漏洞的及时发现和处理,常看安全论坛,掌握最新安全>变乱/p>

4.学会漏洞修复

学习web安全肯定是要学习数据库的。

根据你所提的这个问题,觉得题主是刚刚接触web安全,有一定基础但没有深入了解。在这里提一些基础的建议。

1. 语言的学习,web安全会涉及到很多语言,你需要有一定的语言基础,才能更加深入的理解目标网站,以至找到它漏洞所在。Web安全所需要的语言:php(大部分网站开发所用的语言),python(flask、dinggo框架、编写web脚本),java(web开发语言),go(web开发语言)。

2. 基础的web安全知识。如计算机网络基础、http协议、php弱类型、sql注入漏洞、xss漏洞、文件包含漏洞等。其中sql注入漏洞,就需要结合数据库相关的知识进行攻击。

3. 更进一步的学习。关注一些web安全相关的公众号,获取最新的web安全信息。如最新的cve、最新的绕过方式等。

4. 推荐一个web安全学习的网址:https://github.com/CHYbeta/Web-Security-Learning。在这个网址你可以自主学习到web安全知识。另外你也可以通关打ctf比赛来提高自己web安全水平。

了解最新“智驭安全”产品、技术与解决方案,欢迎关注微信公众号:丁牛科技(Digapis_tech)

相关文章

分销系统源代码构建高效分销网络的关键

企业间的竞争日益激烈。为了拓展市场、提高销售额,越来越多的企业开始关注分销渠道的建设。分销系统作为企业分销网络的核心,其源代码的质...

服务器/数据库 2025-02-14 阅读0 评论0

创业板50中国创新企业发展的风向标

创业板50,作为我国资本市场的重要组成部分,自成立以来,一直备受投资者关注。本文将从创业板50的代码入手,探讨其在中国创新企业发展...

服务器/数据库 2025-02-14 阅读0 评论0