GNU TeXmacs v1.99.17 发布,科学公式编辑软件
官方变更记录: 修缮远程编辑工具 新增comment样式,用于在文档中增加备注 新增管理自定义快捷键的小工具 增强无序列表和有序列表的可定制性 继续修复bug GNU TeXmacs 是一个所见即所得的科学公式编辑软件,提供一个独一无二、使用便利的框架用来编辑结构化文档。
项目名改动:
| 原开源项目 | 现开源项目 | 原会员项目 | 现会员项目 | 备注 |
|---|---|---|---|---|
| zuihou-admin-boot | lamp-boot | zuihou-boot-plus | lamp-boot-plus | 单体版 |
| zuihou-commons | lamp-util | zuihou-commons-plus | lamp-util-plus | 业务无关的工具集 |
| zuihou-generator | lamp-generator | zuihou-generator-plus | lamp-generator-plus | 代码生成器 |
| zuihou-ui | lamp-web | zuihou-ui | lamp-web-plus | 租户管理后台 |
| zuihou-admin-ui | lamp-web | zuihou-admin-ui | lamp-web-plus | 运营管理后台(3.0以后:zuihou-ui和zuihou-admin-ui合并为lamp-web) |
配置文件中配置的登录账号和密码修改为:lamp/lamp
zuihou-ui 和 zuihou-admin-ui 的功能合并到 lamp-web
废弃 lamp-j2cache-starter, 全面使用 lamp-cache-stater;
lamp-util(原zuihou-commons) 项目新增 lamp-annotation 模块, 将系统中常用的注解、model、枚举等抽离出来,降低多模块业务系统依赖耦合性
废弃jobs服务,3.0.1版本独立定时服务为单独的项目。为什么废弃?
spring.boot.version > 2.3.6.RELEASE
spring-boot-admin.version > 2.3.1
knife4j.version -> 2.0.8
springfox.swagger.version -> 2.10.5
swagger-models.version -> 1.5.22
druid.version -> 1.2.3
mysql.version -> 8.0.22
mybatis.version -> 3.5.6
mybatis-spring.version -> 2.0.6
mybatisplus.version -> 3.4.1
transmittable-thread-local.version -> 2.12.0
fastjson.version > 1.2.75
transmittable-thread-local.version > 2.11.5
commons-io.version > 2.8.0
lombok.version > 1.18.16
hutool.version > 5.5.2
antisamy.version > 1.5.10
caffeine.version > 2.8.6
maven-source-plugin.version > 3.2.1
maven-javadoc-plugin.version > 3.2.0
;号配置多个包<relativePath>../</relativePath> 调整为 <relativePath>../pom.xml</relativePath>Msgs的全部替换成Msg:*,;等通配符。 冒号作为权限分隔符,星号匹配任意字符串,逗号指定多个权限,分号支持配置多个编码。/dictionary/codes),方便前端获取字典数据时可以控制多个属性在一个夜黑风高的晚上,小孩吵着要出去玩,于是和程序员老婆一起带小孩出去放风,路上顺便讨论起项目要换个什么名字,在各自想出的名字都被对方一一否决后,大家陷入了沉思。 走着走着,在一盏路灯下,孩砸盯着路灯打破宁静,喊出:灯灯~ 我和媳妇愣了一下,然后对视着一起说:哈哈,这个名字好~
灯灯: 是我小孩学说话时会说的第一个词,也是我在想了很多项目名后,小孩一语点破的一个名字,灯灯象征着光明,给困境的我们带来希望,给加班夜归的程序员们指引前方~
灯灯(简称灯, 英文名:lamp),他是一个项目的统称,包含以下几个子项目
| 项目 | gitee | github | 备注 |
|---|---|---|---|
| 工具集 | https://gitee.com/zuihou111/lamp-util | https://github.com/zuihou/lamp-util | 业务无关的工具集,cloud和boot 项目都依赖它 |
| 微服务版 | https://gitee.com/zuihou111/lamp-cloud | https://github.com/zuihou/lamp-cloud | SpringCloud 版 |
| 单体版 | https://gitee.com/zuihou111/lamp-boot | https://github.com/zuihou/lamp-boot | SpringBoot 版(和lamp-cloud功能基本一致) |
| 租户后台 | https://gitee.com/zuihou111/lamp-web | https://github.com/zuihou/lamp-web | PC端管理系统 |
| 代码生成器 | https://gitee.com/zuihou111/lamp-generator | https://github.com/zuihou/lamp-generator | 给开发人员使用 |
| 定时调度器 | https://gitee.com/zuihou111/lamp-job | https://github.com/zuihou/lamp-job | 尚未开发 |
lamp-boot的前身是zuihou-admin-boot,从3.0.0版本开始,改名为lamp-boot,它是lamp项目的其中一员。
lamp-cloud 基于 SpringBoot(2.3.6.RELEASE) 的单体快速开发平台,其中的可配置的SaaS功能尤其闪耀, 具备RBAC功能、网关统一鉴权、Xss防跨站攻击、自动代码生成、多种存储系统、分布式事务、分布式定时任务等多个模块,支持多业务系统并行开发, 支持多服务并行开发,可以作为后端服务的开发脚手架。代码简洁,注释齐全,架构清晰,非常适合学习和企业作为基础框架使用。
核心技术采用SpringBoot、Mybatis、RabbitMQ、FastDFS/MinIO等主要框架和中间件。 希望能努力打造一套从 JavaWeb基础框架 - 单体架构 - 持续集成 - 系统监测 的解决方案。本项目旨在实现基础能力,不涉及具体业务。
本项目可以通过配置,轻松切换项目的 租户模式。
| 租户模式 | 描述 | 优点 | 缺点 |
|---|---|---|---|
| NONE(非租户模式) | 没有租户 | 简单、适合独立系统 | 缺少租户系统的优点 |
| COLUMN(字段模式) | 租户共用一个数据库,在业务表中增加字段来区分 | 简单、不复杂、开发无感知 | 数据隔离性差、安全性差、数据备份和恢复困难、 |
| SCHEMA(独立schema) | 每个租户独立一个 数据库(schema),执行sql时,动态在表名前增加schema | 简单、开发无感知、数据隔离性好 | 配置文件中必须配置数据库的root账号、不支持复杂sql和 sql嵌套自定义函数 |
| DATASOURCE(独立数据源) | 每个租户独立一个 数据库(数据源),执行代码时,动态切换数据源 | 可独立部署数据库,数据隔离性好、扩展性高、故障影响小 | 相对复杂、开发需要注意切换数据源时的事务问题、需要较多的数据库 |
ps: 演示环境中内置租户没有写入权限,若要在演示环境测试增删改,请使用lamp_pt账号查询租户管理员账号后,登录新租户测试
服务鉴权: 通过JWT的方式来加强服务之间调度的权限验证,保证内部服务的安全性。
监控:
利用Spring Boot Admin 来监控各个独立Service的运行状态;利用turbine来实时查看接口的运行状态和调用频率;通过Zipkin来查看各个服务之间的调用链等。
数据权限
利用基于Mybatis的DataScopeInnerInterceptor拦截器实现了数据权限功能
SaaS(多租户)的无感解决方案
本项目支持3种常见的租户解决方案和无租户方案,同一套代码,修改一个配置即可实现租户模式只有切换。
缓存抽象
采用CacheOps操作缓存,内置2种实现:Caffeine、 Redis,可以让项目应急时在无Redis环境正常运行
优雅的Bean转换
采用Dozer、BeanUtil等组件来对 DTO、DO、PO等对象的优化转换
前后端统一表单验证
严谨的表单验证通常需要 前端+后端同时验证, 但传统的项目,均只能前后端各做一次检验, 后期规则变更,又得前后端同时修改。 故在hibernate-validator的基础上封装了lamp-validator-starter起步依赖,提供一个通用接口,可以获取需要校验表单的规则,然后前端使用后端返回的规则, 以后若规则改变,只需要后端修改即可。
防跨站脚本攻击(XSS)
当前登录用户信息注入器
在线API
由于原生swagger-ui某些功能支持不够友好,故采用了国内开源的knife4j,并制作了stater,方便springboot用户使用。
代码生成器
基于Mybatis-plus-generator自定义了一套代码生成器, 通过配置数据库字段的注释,自动生成枚举类、数据字典注解、SaveDTO、UpdateDTO、表单验证规则注解、Swagger注解等。
定时任务调度器
大文件/断点/分片续传
前端采用webupload.js、后端采用NIO实现了大文件断点分片续传,启动Eureka、Zuul、File服务后,直接打开docs/chunkUploadDemo/demo.html即可进行测试。 经测试,本地限制堆栈最大内存128M启动File服务,5分钟内能成功上传4.6G+的大文件,正式服耗时则会受到用户带宽和服务器带宽的影响,时间比较长。
跨表、跨库、跨服务的关联数据自动注入器
用于解决跨表、跨库、跨服务分页数据的属性或单个对象的属性 回显关联数据之痛, 支持对静态数据属性(数据字典)、动态主键数据进行自动注入。
| 预览 | 预览 |
|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
微信关注我们
转载内容版权归作者及来源网站所有!
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。
马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。
为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。
Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。