码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Spring优点大白话


    转自:

    Spring优点大白话

    下文笔者讲述Spring的优点大全,如下所示

    Spring优点总览

    spring是java开发中必不可少的一种框架
    使用spring可使java开发变的非常简单
    那么Spring框架到底有哪些好处及优点呢?
    下文笔者将一一道来,如下所示
    

    Spring优点总览

       
    1.可降低组件之间的耦合度,实现软件各层之间的解耦 
    
    2.可使用容器提供的很多服务
       如:
        事务管理服务、消息服务等等
       当我们使用容器管理事务时,开发人员就不再需要手工控制事务
       也不需处理复杂的事务传播 
    
    3.Spring容器提供单例模式支持,开发人员不再需要自己编写实现代码。
    
    4.Spring容器提供AOP技术,利用它很容易实现如权限拦截、运行期监控等功能。
    
    5.Spring容器提供的众多辅作类,使用这些类能够加快应用的开发
       如:JdbcTemplate,HibernateTemplate 
    
    6.Spring对于主流的应用框架提供了集成支持,如:集成Hibernate、JPA、Struts等
        这样更便于应用的开发 
    

    例:

    Spring控制事务的写法非常简洁

    @Transactional
    Public void save(){
    	sessionFactory.getCurrentSession().save(info);
    }
    

    使用spring无需处理复杂的事务传播行为

    public void payment(){
    	Bean1.update();//更新金额
    	Bean2.save();//记录操作日志
    }
    

    例:
    使用Spring
    只需要通过声明式的事务属性配置
    即可轻松地实现这两种业务需求

    1.要求Bean1.update()和Bean2.save()的在同一个事务中执行
    2.要求不管Bean1.update() 的事务是否成功,都需要记录日志。
    @Transactional(propagation=Propagation.Required)
    public void payment(){
    	Bean1.update();//更新金额
    	Bean2.save();//记录日志
    }
    
    public class Bean1 {
    @Transactional(propagation=Propagation.Required)
    public void update(){
    	executeUpdate("update account set amount=? where id=?");
    }
    
    }
    
    public class Bean2 {
    @Transactional(propagation=Propagation.RequiresNew)
    public void save(){
    	executeUpdate("insert into Log (content) values (?)");
    }
    

    相关阅读:
    Spring优点简介说明

  • 相关阅读:
    Java架构师之路五、微服务:微服务架构、服务注册与发现、服务治理、服务监控、容器化等。
    非零基础自学Java (老师:韩顺平) 第8章 面向对象编程(中级部分) 8.9 super关键字
    c++ reference_wrapper源码注释
    net-java-php-python-学生入学信息管理系统计算机毕业设计程序
    10.12hw
    HTML5网页设计成品:汽车介绍特斯拉 (dreamweaver作业静态HTML网页设计模板)
    排列数字(深度优先搜索) C++实现
    Linux基本命令总结练习(过命令关)
    動態PPTP代理IP是什麼?
    Excel多条件计数——COUNTIFS【获奖情况统计】
  • 原文地址:https://blog.csdn.net/qq_25073223/article/details/127545485
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号