1
2
3
4
5
title: ATOM 企业级研发框架使用指南
date: 2025 年 1 月 17 日 11:55:56
categories: service
tags:
- atom

ATOM 企业级研发框架使用指南

快速开始

后端

第一步:新建 idea 项目

  • 项目类型选择JAVA
  • 依赖管理选择 maven
  • JDK 版本选择 17,Mac 用户使用 Azul zulu 17

这一步没有截图,如果觉得这都有难度,请立刻关闭此文档回家找妈妈。

第二步:新建文件

主打一个抄抄抄,不要问为什么,先抄,以后慢慢学为什么。

新建 pom.xml 文件

请直接拷贝以下文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<!-- 使用必读 -->
<!-- 1、以下所有配置均为公司后端研发固定配置,在你不清楚修改了会产生什么后果之前请勿修改任何固定配置项 -->
<!-- 2、固定配置以及其组件、框架带来的任何问题,请先进行百度、检查配置信息、阅读公司文档,确认无法解决后请联系你的直属上级 -->

<!-- 业务项目使用 atom-company-parent 作为父依赖 -->
<parent>
<groupId>io.github.atom</groupId>
<artifactId>atom-business-parent</artifactId>
<version>2024.2.0-SNAPSHOT</version>
</parent>

<groupId>io.github.atom</groupId>
<artifactId>此处修改为你的项目包名 举例:atom-ssm-sample</artifactId>
<version>${revision}</version>

<properties>
<jvm.options>-Xms128M -Xmx256M</jvm.options>
<prod.jvm.options>-Xms256M -Xmx512M</prod.jvm.options>
<revision>1.0.0-SNAPSHOT</revision>
<checkstyle.include>com/zhxx\/**\/*.java</checkstyle.include>
<zh-project-autoconfigure.version>1.0.0-SNAPSHOT</zh-project-autoconfigure.version>
</properties>

<!-- 固定写法, 必须添加 atom-boot-dependencies -->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>io.github.atom</groupId>
<artifactId>atom-boot-dependencies</artifactId>
<version>${atom-boot-dependencies.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>

<dependencies>
<!--region 框架组件-->
<dependency>
<groupId>io.github.atom</groupId>
<artifactId>atom-ssm-spring-boot-starter</artifactId>
</dependency>
<!--nacos依赖-->
<dependency>
<groupId>io.github.atom</groupId>
<artifactId>atom-cloud-nacos-spring-boot-starter</artifactId>
</dependency>
<!--缓存redis依赖-->
<dependency>
<groupId>io.github.atom</groupId>
<artifactId>atom-cache-spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>io.github.atom</groupId>
<artifactId>atom-captcha-graph-spring-boot-starter</artifactId>
</dependency>
<!-- 必须添加 atom-kernel-test 单元测试组件 -->
<dependency>
<groupId>io.github.atom</groupId>
<artifactId>atom-kernel-test</artifactId>
<scope>test</scope>
</dependency>
<!-- 代码生成器 -->
<dependency>
<groupId>io.github.atom</groupId>
<artifactId>atom-kernel-generator</artifactId>
<scope>test</scope>
</dependency>
<!-- 日志自动记录 -->
<dependency>
<groupId>io.github.atom</groupId>
<artifactId>atom-logsystem-record-spring-boot-starter</artifactId>
</dependency>
<!-- 用户中心本地化 -->
<dependency>
<groupId>io.github.atom</groupId>
<artifactId>atom-auth-local-spring-boot-starter</artifactId>
</dependency>
<!-- 业务系统必备-->
<dependency>
<groupId>com.zhxx</groupId>
<artifactId>zh-project-autoconfigure</artifactId>
<version>${zh-project-autoconfigure.version}</version>
</dependency>
<!--endregion-->
</dependencies>
</project>
新建 application.yml 文件

请直接拷贝以下配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
server:
port: 18888

spring:
datasource:
name: zh_ssm_sample
profiles:
active: dev #默认使用 local
application:
name: zh_ssm_sample #应用名称

# 日志系统所有默认配置
atom:
logging:
level:
root: info

需要注意的是如果配置了数据库信息,请在配置前先建好对应的数据库,字符集与排序规则如下:

image-20250117112227010

1
CREATE DATABASE `temp` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci';
新建 bootstrap.yml 文件

请直接拷贝以下配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
spring:
application:
# 应用名称,直接获取pom中的包名
name: ${package.name}
cloud:
# nacos相关配置
nacos:
# 远端配置中心
config:
server-addr: ${NACOS_CONFIG_SERVERADDR:nacos.server:8848}
# 命名空间(开发:zh_dev,测试:zh_test,预演:zh_prev)
namespace: ${NACOS_CONFIG_NAMESPACE:k3s-dev}
# 服务发现配置
discovery:
server-addr: ${NACOS_DISCOVERY_SERVERADDR:nacos.server:8848}
# 命名空间(开发:zh_dev,测试:zh_test,预演:zh_prev)
namespace: ${NACOS_DISCOVERY_NAMESPACE:k3s-dev}

新建 docker-compose.yml 文件

请直接拷贝以下配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
services:
atom-ssm-sample:
image: harbor.zhxx.site:28888/app/atom-ssm-sample_${branch:-test}:${tag:-latest}
restart: on-failure:5
container_name: atom-ssm-sample
hostname: atom-ssm-sample
command: ["-s","${branch}","-t"]
network_mode: "host"
volumes:
- "/tmp:/mnt/tmp"
- "/etc/localtime:/etc/localtime"
- "./upload:/mnt/upload"
env_file:
- .env
- /app/backend/.env

新建 Dockerfile 文件

请直接拷贝以下配置:

1
2
3
4
5
6
7
8
9
10
FROM harbor.zhxx.site/base/jdk17
# 定义应用启动方式
ENV START_TYPE=docker
WORKDIR app
# 拷贝并解压部署包
ADD atom-ssm-sample.tar.gz /app/
# 进入部署目录
WORKDIR /app/atom-ssm-sample
# 启动 docker run 时还要加上 -s dev/test/prev/prod 和其他支持的命令和参数
ENTRYPOINT ["bin/server.sh"]

第三步:修改名称

  • 修改文件夹名称
  • 修改启动类名称

前端