Springboot应用的信创适配-补充

Springboot应用的信创适配-CSDN博客

        因为篇幅限制,这里补全Spring信创适配、数据库信创适配、Redis信创适配、消息队列信创适配等四个章节。


Springboot应用的信创适配


        Springboot应用的信创适配,如上图所示需要适配的很多,从硬件、操作系统、中间件(消息队列、缓存)、web服务器、数据库,jdk等方面整理如下。

Spring信创适配


        Spring 是一个开源应用框架,它本身不包含与信创有关的内容。信创是指使用自主可控的技术来替代原来依赖的技术。替换spring无异于替换java语言,在springboot应用中。

        各行业中,金融行业数字化水平较高,数字化转型与信创实践均起步较早,使用的是比较新的应用架构,比如微服务架构,需要通过分布式技术进行应用开发等。因此,金融信创迁移实践中,需要基础软件匹配新技术变革带来的架构冲击,来进行迁移改造。与时俱进的普元应用服务器PAS,支持标准JakartaEE应用架构,也支持SpringBoot微服务架构、云端容器架构使用,能够支撑不同架构开发的应用或业务运行。

        以微服务框架下的SpringBoot体系为例,微服务应用需要容器来支撑对外提供服务,但是SpringBoot内置的默认容器并不符合信创要求,需要把它替换成国产化的容器,进行迁移改造,实现项目验收达标与体系自主可控等。

        应对这种情况,我们会给客户提供两种解决方案。

  • 一种是使用普应用服务器嵌入式版本,替换微服务Jar包中不符合信创要求的容器,
  • 另一种是将SpringBoot微服务应用通过技术方式导出WAR包,部署到普元应用服务器企业版,支撑运行。使用普元应用服务器嵌入式版本,是更便捷的迁移改造方式,在行业信创中经常被推荐使用。

        替换spring的产品: JFinal、Solon;替换spring影响大,目前我们是没有替换它。它们两个的官方文档都比较全,目前我这边暂时没有看到那个项目中直接用它们替换spring。

1.替代产品Solon

官网:Solon | 官网

帮助文档:开始

关于 Solon
        Solon 是一个轻量级应用开发框架。支持 Web、Data、Job、Remoting、Cloud 等任何开发场景。短小而精悍!

  • 强调,克制 + 简洁 + 开放的原则
  • 力求,更小、更快、更自由的体验

        目前已有近130个生态插件,含盖了日常开发的各种需求。

关于 Solon Cloud
        Solon Cloud 定义了一系列分布式开发的接口标准和配置规范,相当于DDD模式里的防腐层概念。是 Solon 的微服务架构模式开发解决方案。

2.替代产品JFinal

官网帮助文档:JFinal 文档、资料、学习、API,jfinal-undertow 下开发

JFinal简介:

        JFinal 是基于Java语言的极速 WEB + ORM 开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有 Java 语言所有优势的同时 再拥有 ruby、python、php 等动态语言的开发效率!

JFinal特点:

  1. MVC 架构,设计精巧,使用简单
  2. 遵循 COC 原则,零配置,无 xml
  3. 独创 Db + Record 模式,灵活便利
  4. ActiveRecord 支持,使数据库开发极致快速
  5. 自动加载修改后的 java 文件,开发过程中无需重启 web server
  6. AOP 支持,拦截器配置灵活,功能强大
  7. Plugin 体系结构,扩展性强
  8. 多视图支持,支持 FreeMarker、JSP、Velocity
  9. 强大的 Validator 后端校验功能
  10. 功能齐全,拥有 struts2 绝大部分核心功能
  11. 体积小仅 303K,且无第三方依赖
     

数据库信创适配


        主要厂商有武汉达梦(中国软件-CEC)、人大金仓(太极股份-CETC)、神州通用(中国航天科技集团公司)、南大通用、万里开源(创意信息)、华为GaussDB、阿里Oceanbase、腾讯CynosDB等。

        国产数据库主要分为四大类: Oracle系(达梦) MySQL系(阿里、腾讯、巨杉) informix系(南大通用) PostgreSQL系(华为、人大金仓)

         具体有:

华为openGauss:开源关系型数据库(PostgreSQL系)

华为GaussDB:AI-Native分布式数据库  (比较全面的商用版 ;GaussDB(for openGauss) GaussDB(for MySQL) GaussDB(for Cassandra) GaussDB(for Mongo) GaussDB(for Redis) GaussDB(for Influx))

腾讯云TDSQL:分布式数据库(TDSQL 可兼容 MySQL、MariaDB 协议,兼容 PostgreSQL 协议,高度兼容 Oracle 语法;可在一个物理集群中扩展支持集中式和分布式实例;并提供了高性能联机事务处理(OLTP)能力和海量的联机分析处理(OLAP) 同时处理能力,可降低业务架构复杂度和成本,并提供多种企业级特性,是去O的理想选择。)

阿里云AnalyticDB:分析型数据库 (可兼容 MySQL、兼容 PostgreSQL 协议)

阿里云PolarDB:关系型分布式云原生数据库 (可兼容 MySQL、兼容 PostgreSQL 协议)

京东云StarDB 5.0:基于Share Nothing架构构建的分布式数据库,原生分布式自治数据

蚂蚁集团Oceanbase:原生分布式关系数据库

达梦数据库DM8:通用关系型数据库 (oracle系)

人大金仓KingBaseES:关系型数据库

南大通用GBase:数据库系列产品 神舟通用数据库:

基于华为openGauss为基础的企业级关系型数据库

PingCAP TiDB:分布式关系型数据库

  • 国产数据库的应用占比分析

        调查报告数据显示,达梦数据库是企业使用率第一的中国数据库,占比达20.4%;华为云 GaussDB、阿里云 PolarDB 分别以17.8%、17.3%的占比紧随其后。其后分别是 OceanBase、openGauss、TiDB、腾讯云TDSQL、人大金仓、科蓝SUNDB、南大通用,这与墨天轮榜单前十大致保持着一致。

  • 不同规模企业当前使用国产数据库的情况

        根据调查数据,≤100人的企业中,21.1%的受访者表示,其企业正在使用openGauss 数据库,这说明openGauss 是微型企业使用率占比最高的中国数据库,openGauss作为一款开源关系型数据库管理系统,生态建设比较完善,能大大降低微型企业的使用成本。而在大于1000人的企业中,达梦、阿里云PolarDB的使用率更多,分别占比21.1%、20.7%,OceanBase、华为云GaussDB紧随其后。

  • 不同行业当前使用国产数据库的情况

        当前,在互联网企业中,阿里云PolarDB是使用率最高的中国数据库,占比为25.4%,其次是华为云GaussDB,占比为21.5%。此外,在被称为数据库国产化改造的深水区银行业中,OceanBase是使用率最高的数据库,其次是阿里云PolarDB、华为云GaussDB、腾讯云TDSQL。此外,达梦是被软件信息、技术服务行业使用最多的中国数据库

        未来计划使用的相关情况分析

  • 企业计划使用国产数据库的情况

        据调查数据,93.9%的企业计划使用中国数据库,其中达梦排名第一其次是OceanBase、openGauss、华为云GaussDB、TiDB、阿里云PolarDB、腾讯云TDSQL、科蓝SUNDB、人大金仓、恩墨MogDB,当前前十名占比差距不大。

数据库国产信创改造需求与难点分析

        数据库国产化改造,并不仅仅是替换软件,由于不同数据库具有不同的架构,适用的场景及客户群体存在很大差异。在改造前,数据库怎么选?改造时,数据怎么迁移?改造后,数据库怎么管理、怎么持续运维?这些都是现阶段大多行业面临的困难。

方案|美创科技数据库国产信创改造方案- DoNews

如何用中间件实现信创DB的适配?_信创中间件-CSDN博客

        常见以下问题::

1.国产化数据库选型困难

        数据库承载了业务系统最核心的部分,目前市面上国产数据库品牌超200家,如何从众多数据库中选择一款合适的数据库,并非通过一两个指标就可以完成,用户需要充分考虑当下自身业务需求及未来业务发展,并在技术上,结合市面上数据库产品特性进行匹配,选择最合适的数据库,确保选择的国产数据库能较好的替代现有的商用或者开源数据库,同时也能更好的支撑未来新上业务的需求。而大部分用户对于数据库市场和数据库技术并不了解,这无疑给用户带来极大的困难。

2.数据迁移难度大

        技术层面,数据迁移难点聚焦于迁移过程中的兼容性、数据安全、停机时间、数据校验和性能保证等方面,任意一项的技术失误或偏差,都又可能造成很大的损失;成本层面,缺乏专业技术和高效团队的情况下,一家企业完成数据库的国产替代需要花上2~3年的时间,在这过程中既要面临人力和时间成本,还要面临评估费用、业务影响等额外的成本负担。

3.数据库管理与运维复杂度高

        数据库管理对开发、业务、运维等角色的技能和经验要求较高,对于大多数用户来说,缺乏一站式的管理工具和相关经验,可能导致管理效率低下、错误频发、数据安全风险等问题。此外,由于国产和开源数据库的服务生态尚不完善,缺乏专业技术人才和专业的运维工具,用户的系统可能面临更大的风险。

4.数据库国产信创改造方案介绍

        基于信创大背景,美创科技针对用户目前的数据库建设及网络架构现状,结合其业务情况以及国产化改造的具体诉求,提供数据库国产信创改造方案,涵盖:国产数据库选型指导,帮助用户制定国产数据库迁移方案,进行迁移实施,并且后续可持续提供国产数据库运维服务。

5.国产数据库选型指导

        从功能、性能、应用兼容性、运行优化等各维度提供信创数据库替换建议,通过专业综合评估,经过初步筛选、细项测试后,最终协助用户确认一款最适合的国产数据库,帮助用户解决国产化数据选型困难。

6.国产数据库迁移实施

        面对异构场景,美创提供数据库迁移测试、数据库迁移实施等不同阶段的数据转换、迁移以及维护工作。

        在数据迁移测试阶段,协助用户搭建国产数据库准生产环境,提供全业务功能和性能测试、数据一致性校验、高可用测试以及测试过程中出现的问题的改造和优化。

        数据库迁移实施阶段,基于测试结果,开展生产环境准备、割接迁移演练、正式割接实施,并进行数据库性能监控、故障处理、性能优化等,协调并保障人员集中办公,确保问题能快速响应,快速沟通处理,保障数据库平稳,高效运行。

7.国产数据库运维服务

        数据库运维经验和完备的数据库技术支持能力。具体包括:国产数据库咨询、健康检查、版本管理、基线管理、故障处理、性能监控、性能优化、补丁分析、安全加固、关键时间窗口保障、数据安全控制保障、培训等“一站式”服务能力。

信创数据库厂商列表

        这里收集了200多家国产数据库厂商信息。

Redis信创适配

1、宝兰德CacheServer

        分布式缓存CacheServer是一款分布式高性能 KV 存储数据库,完全兼容Redis协议标准,主要解决高并发、大数据量场景下的数据访问性能问题。
产品链接:https://www.bessystem.com/product/bfd40242989048ffa024a663ebecbcf7/info?p=101

2、东方通TongRDS

        分布式数据缓存中间件TongRDS是一款高性能多并发分布式数据缓存中间件,为企业信息化系统提供数据信息的缓存、分享与同步功能。通过先进的内存分配算法,产品实现了基于内存方式的数据高性能读写、实时稳定数据同步、分布式部署等功能,满足企业分布式与高可用使用场景。TongRDS提供了高度兼容Redis的数据访问接口,并保持优于Redis的读写性能。

        产品设计采用分层架构模式,包含接口层、核心层、数据层,外围提供监控与辅助功能,实现数据缓存的全面、高效管控。
产品链接:https://www.tongtech.com/dft/pctype/37.html


3、金蝶天燕AMDC

​         金蝶Apusic分布式缓存软件(简称“AMDC”)是金蝶天燕完全自主研发、高性能、高稳定性、安全可控的分布式缓存软件,为大规模、高并发、高可用的关键应用提供安全可靠的缓存支撑能力。产品兼容Redis协议,支持多数据类型存储,发布/订阅模式、Lua脚本,数据持久化、国密传输等多种功能,支持主从、哨兵、集群三种高可用模式,适用于高频、低时延的数据存取等业务场景。 ​
        产品链接:https://www.apusic.com/list-338.html#menudiv

  • 缓存热点数据

        拥有高性能的数据缓存能力,为大规模、高并发、高可用的关键应用提供安全可靠的缓存支撑能力,保障系统的正常、高效运行。

  • 缓存热点数据

        拥有高性能的数据缓存能力,为大规模、高并发、高可用的关键应用提供安全可靠的缓存支撑能力,保障系统的正常、高效运行。

  • 缓存热点数据

        拥有高性能的数据缓存能力,为大规模、高并发、高可用的关键应用提供安全可靠的缓存支撑能力,保障系统的正常、高效运行。

  • 分布式锁

        为分布式系统提供加锁操作,防止出现多个节点同时对数据做出操作而导致数据错误的问题。

消息队列信创适配
 

1、宝兰德BES MQ


        消息中间件 BES MQ是一款提供系统间消息快速、高效、可靠传递的消息中间件产品,帮助应用实现系统解耦及异步调用。
        产品地址:https://www.bessystem.com/product/521516fc2463423b8eafb311893e4a65/info?p=101

2、东方通TongLINK/Q


        东方通消息中间件TongLINK/Q是致力于解决多方应用系统之间信息互通、信息孤岛、应用数据丢失、网络环境差导致的数据传输不稳定、应用资源隔离、应用系统可扩展性等一系列问题的专业数据可靠通信产品。
        应用系统可以借助于TongLINK/Q,能够轻松地交换和处理消息,而无需考虑消息传递的具体细节,能够大大降低开发难度,缩短开发周期,节约开发成本。
● 可为用户提供全方位、无死角的可靠传输
        包括节点间传输、客户端—服务器数据传输,都能够做到完全可靠,并且支持断点续传。
● 横向扩展而性能无损
        通过多核心机制,高效发挥软硬件资源性能;支持集群,并提供多种负载均衡算法,包括线路备份、动态和静态负载、基于内容的路由、客户端连接池集群等。
● 应用层资源隔离
        通过队列分组机制,使得业务间互不影响。数据处理应用程序智能调度完美契合系统资源的整体特性。
● 业务级流量保护
        支持业务级数据传输流量保护,保证业务系统之间和谐并行。
● 全方位安全保障
        远程应用非法接入控制、传输层SSL(含国密算法)、应用层数据加密、节点间传输流量控制、消息跟踪日志、集中的传输监控、配置加密、业务授权、安全出口(支持第三方加密算法)、管理中心权限控制、用户审计等安全保障机制。
        产品链接:https://www.tongtech.com/dft/pctype/26.html
        TongLINK/Q产品由运行节点、监控管理中心、开发接口三部分组成。
        运行节点是TongLINK/Q在一台物理机器上的一套运行环境,主要由相关的配置文件、核心进程、队列、代理进程组成,提供基于队列的消息传输服务。
        监控管理中心用来对TongLINK/Q运行环境进行配置和监控管理,对所有TongLINK/Q节点进行集中式的监控和管理,极大方便系统的维护和管理。
        开发接口是TongLINK/Q提供的一组强大的API包,开发人员使用它能够轻松完成消息的传递和系统的维护管理。


3、金蝶天燕ADMQ


        金蝶Apusic分布式消息中间件(简称“ADMQ”)是一款金融级分布式消息中间件,具有多租户、跨集群数据复制、强一致性、高可靠、高并发等特性。ADMQ支持原生Java、C++、Python、GO多种API,支持以Kafka、RocketMQ、RabbitMQ客户端和MQTT、JMS等协议接入,从而简化不同业务系统的接入难度。
        产品链接:https://www.apusic.com/list-290.html

  • 系统解耦

        各个业务系统仅需要处理自己的业务逻辑,发送事件消息到消息队列。下游业务系统直接订阅消息队列的队列或主题获取事件。消息队列可用于单体应用被拆解为微服务后不同微服务间的通信。系统解耦的好处是不同系统的迭代不再相互依赖,能有效缩短数据链路长度,提高数据处理效率。

  • 消峰填谷

        诸如秒杀、抢红包、企业开门红等大型活动时皆会带来较高的流量脉冲,或因没做相应的保护而导致系统超负荷甚至崩溃,或因限制太过导致请求大量失败而影响用户体验,削峰填谷是解决该问题的有效方式。

  • 物联网

        诸如秒杀、抢红包、企业开门红等大型活动时皆会带来较高的流量脉冲,或因没做相应的保护而导致系统超负荷甚至崩溃,或因限制太过导致请求大量失败而影响用户体验,削峰填谷是解决该问题的有效方式。


4、普元信息Primeton MQ

        Primeton MQ是一款高性能、高可靠、高扩展、 可管理的分布式消息中间件产品,采用高可用集群技术, 支撑高并发及海量消息传输,不但可以处理传统异构系统 间消息传输与业务整合问题,同时为大数据、物联网、云计算、微服务等环境下的应用系统提供安全、可靠、高性 能的消息传输保障。
        产品链接:https://www.primeton.com/products/mes/

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Linux基础IO】深入理解缓冲区

缓冲区在文件操作的过程中是比较重要的,理解缓冲区向文件刷新内容的原理可以更好的帮助我们更深层的理解操作系统内核对文件的操作。 FILE 因为IO相关函数与系统调用接口对应,并且库函数封装系统调用,所以本质上,访问文件都是通过…

国内外大模型生态发展报告!

很多同学只知类似Check GPT或者说对国内的一些比较了解,对国外的不太了解,所以在这总结。 1 大模型的发展 左表 名称参数特点发布时间GPT-215亿英文底模,开源2019年Google T5110亿多任务微调, 开源2019年GPT-3.51750亿人工反馈微调2022年M…

Django 循环模板标签

1&#xff0c;循环模板标签 Django 模板系统中提供了多种循环模板标签来迭代数据并显示列表、字典或其他可迭代对象。 1.2 {% for %} 标签 用于迭代列表或可迭代对象&#xff0c;并为每个元素提供上下文变量。 {% for item in items %}{{ item }} <!-- 渲染当前迭代项 -…

第二次IAG

IAG in NanJing City 我与南京奥体的初次相遇&#xff0c;也可能是最后一次&#xff01; 对我来说,IAG 演唱会圆满结束啦! 做了两场充满爱[em]e400624[/em]的美梦 3.30号合肥站&#xff0c;6.21号南京站[em]e400947[/em] 其实&#xff0c;没想到昨天回去看呀!(lack of money […

docker简单快速使用上手

1.Docker是什么&#xff1f; Docker 是一个开源的容器化平台&#xff0c;主要用于开发、运输和运行应用程序。它通过提供轻量级的虚拟化机制&#xff0c;使得开发者可以在一个隔离的环境中运行和管理应用程序及其依赖项。Docker 的核心组件包括镜像&#xff08;Image&#xff…

数据库浅识及MySQL的二进制安装

数据库基础概念与MySQL二进制安装与初始化 使用数据库的必要性 数据库可以结构化储存大量数据信息&#xff0c;方便用户进行有效的检索访问 有效的保持数据信息的一致性&#xff0c;完整性&#xff0c;降低数据冗余 可以满足应用的共享和安全方面的要求 数据库基本概念 数据…

Redis学习|Redis 是什么、Redis 能干嘛、Window安装Redis、Linux下安装Redis、Redis测试性能

Redis 是什么? Redis(Remote Dictionary Server)&#xff0c;即远程字典服务! 是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库&#xff0c;并提供多种语言的API. redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记…

C++:STL容器-map

C:STL容器-map 1. map构造和赋值2. map大小和交换3. map插入和删除4. map查找和统计5. map容器排序 map中所有元素都是pair&#xff08;对组&#xff09; pair中第一个元素为key&#xff08;键&#xff09;&#xff0c;起到索引作用&#xff0c;第二个元素为value&#xff08;实…

揭秘古代手术工具与技术:从中国起源的医疗奇迹

在人类历史的长河中&#xff0c;医学的发展一直是推动社会进步的重要力量。而手术作为医学的一个重要分支&#xff0c;其发展历程同样充满了传奇色彩。今天&#xff0c;我们将带您走进古代手术的世界&#xff0c;揭秘那些令人惊叹的手术工具和技术。 这把手术刀出土于河北西村遗…

红队内网攻防渗透:内网渗透之内网对抗:横向移动篇入口切换SMB共享WMI管道DCOM组件Impacket套件CS插件

红队内网攻防渗透 1. 内网横向移动1.1 WMI进行横向移动1.1.1 利用条件:1.1.1 利用详情1.1.1.1 wmic1.1.1.1.1 正向shell上线1.1.1.1.2 反向shell上线1.1.1.2 cscript(不建议使用)1.1.1.3 wmiexec-impacket1.1.1.4 cs插件1.2 SMB横向移动1.2.1 利用条件:1.2.2 利用详情1.2.2…

java中Object和json相互转换的方式

1.org中jackson转换json,springboot中内置jackson ObjectMapper onew ObjectMapper(); List<>listnew ArrayList(); String jonso.writeAsValueString(list); 2.alibaba中fastjson转换成json GetMapping("/test")public TbUser testHttpClient(){String url…

BFS:解决最短路问题

文章目录 什么是最短路问题&#xff1f;1.迷宫中离入口最近的出口2.最小基因变化3.单词接龙4.为高尔夫比赛砍树总结 什么是最短路问题&#xff1f; 最短路问题是图论中的经典问题&#xff0c;旨在寻找图中两个节点之间的最短路径。常见的最短路算法有多种&#xff0c;这次我们…

计算机组成原理 | 硬件电路整理

计算机组成原理 | 硬件电路整理 桶形移位器原理图 全加器逻辑框图 多位可控加减法电路逻辑框图 可级联的4位先行进位电路 4位快速加法器 16位组内并行、组间并行加法器 实现原码一位乘法的逻辑框图 补码一位乘法的逻辑框图 无符号数阵列乘法器 原码不恢复余数法硬件逻辑框图 基…

代码随想录第31天|贪心算法

134. 加油站 参考 思路: 以每个油站相差作为判断, 比如: gas [5 8 2 8]cost [6 5 6 6] [-1 3 -4 2]错误 : 把相差最大点当作起点判断能否绕一圈 : 相加数组是否小于0局部最优: 当前累加rest[i]的和curSum一旦小于0&#xff0c;起始位置至少要是i1&#xff0c;因为从i…

中国信通院专访镜舟科技:开源商业化走了多远?

据《2023 中国开源发展蓝皮书》显示&#xff0c;随着数字化转型的深入&#xff0c;开源生态在去年快速发展&#xff0c;开源商业化的模式也逐渐成型。镜舟科技作为开源商业化的先行者&#xff0c;也在技术创新和商业拓展中稳步增长。 日前&#xff0c;中国信息通信研究院&…

【Gradio】如何设置 Gradio 数据框的样式

简介 数据可视化是数据分析和机器学习的关键方面。Gradio DataFrame 组件是一种流行的方式&#xff0c;在网络应用程序中显示表格数据&#xff08;特别是以 pandas DataFrame 对象的形式&#xff09;。 本文将探讨 Gradio 的最新增强功能&#xff0c;这些功能允许用户整合 pand…

21.智能指针(上)

目录 一、概念二、Box\<T\>2.1 概念与应用场景2.2 简单应用2.3 递归类型的创建 三、通过Deref trait将智能指针当作常规引用处理3.1 常规引用3.2 像引用一样使用Box\<T\>3.3 自定义智能指针3.4 函数和方法的隐式解引用强制转换3.5 解引用强制转换与可变性交互 四、…

WPF文本绑定显示格式StringFormat设置-数值类型处理

绑定显示格式设置 在Textblock等文本控件中&#xff0c;我们经常要绑定一些数据类型&#xff0c;但是我们希望显示的时候能够按照我们想要的格式去显示&#xff0c;比如增加文本前缀&#xff0c;后面加单位&#xff0c;显示百分号等等&#xff0c;这种就需要对绑定格式进行处理…

SpringBoot 搭建sftp服务 实现远程上传和下载文件

maven依赖&#xff1a; <dependency><groupId>com.jcraft</groupId><artifactId>jsch</artifactId><version>0.1.55</version> </dependency>application.yml sftp:protocol: sftphost: port: 22username: rootpassword: sp…

【CSS in Depth2精译】1.4 简写属性

文章目录 1.4 简写属性1.4.1 当心简写属性悄悄覆盖其他样式1.4.2 记住简写值的顺序1 上、右、下、左顺序2 先水平、再垂直的顺序 1.4 简写属性 简写属性&#xff08;Shorthand properties&#xff09; 是可以一次性设置多个属性值的样式属性。例如&#xff0c; font 就是一个简…