

guns-admin是Guns管理系统
guns-core是其他模块提炼出来的公共的代码
guns-parent是maven的的父模块,父模块的作用就是管理其它的子模块,可以把我们依赖都提到parent,并且对我们依赖的版本做一个统一的维护。
当我们的其他模块引用pom.xml的时候,是不带版本号的

这就是parent模块的作用,他可以统一维护依赖的版本,

gun-rest本意是些一个app 服务端,提供rest API服务,权限和md5加密,
包结构的介绍
common包 包含其他包所公用的一些东西,比如annotation,constant(cache,dictmap,factory常量的生产工厂,state状态的一些枚举,还有常量类),exception,persistence(mapping,model实体类)

config包里面都是admin这个项目的配置,我们的配置都是基于java bean 的方式,大家可以看到,我们里面是没有spring的xml的配置的,我们都是@bean这样的注解写到这个java类里面了,所以说这个是配置文件

上图等同于<bean><bean>方式的配置
properties都是对应application.yml, 对应的属性映射到我们的java类里面,通过注解这样的方式,java类里面有个核心的注解@ConfigurationProperties

他读取了BEETLCONF_PREFIX为前缀的一些配置,并且spring加载,项目启动的时候,会读取这些配置并且注入到他相应的变量里面,举个例子,比如说 项目启动的时候会读取delimiterStatementStart这个变量,从哪儿读取的呢?从配置文件里面以beetl开头的page

从start这儿读取出来,并且放到这个变量delimiterStatementStart里面。
其他的变量也是一样的,这样呢我们在其他的配置里面或者其他的代码里面,调用application.yml里面的配置的时候就可
Guns项目详解:核心模块与配置

Guns是一个管理系统,包含guns-admin、guns-core和guns-parent三个主要模块。guns-admin是管理系统,guns-core是公共代码,guns-parent是Maven父模块,用于统一管理依赖。项目采用Java Bean配置,避免XML配置。核心功能包括异常拦截、日志记录、权限管理、数据范围控制等。业务代码主要在modular包下,使用Beetl模板引擎和MyBatis Plus。项目还提供了代码生成器、缓存配置和日志配置。
最低0.47元/天 解锁文章
6836





