前端同学0基础上手后端项目:环境搭建、数据库连接、启动、打包、部署与重启完整指南

适合读者:平时主要写 Vue、React、uni-app 或小程序的前端同学,第一次接触 Java 后端项目,希望从零搭好环境,能连接数据库、启动服务、打包部署,并掌握常见重启方式。

一、先理解后端项目需要哪些东西

前端项目一般安装 Node.js 后执行 npm run dev 就能启动。后端项目多了几个基础依赖:

环境 / 工具作用类比前端
JDK运行 Java 程序Node.js 运行 JS
Maven下载依赖、编译、打包npm / pnpm
MySQL保存业务数据后端数据库
Redis缓存、验证码、登录状态等临时数据本地缓存服务
IntelliJ IDEAJava 开发 IDEVS Code
Docker快速启动 MySQL、Redis 等服务容器化环境
API 调试工具测试后端接口浏览器 DevTools / Postman

一个典型 Spring Boot 后端项目启动后,大致是这样:

浏览器 / 前端页面
        |
        v
Spring Boot 后端服务
        |
        +--> MySQL:存用户、配置、日志等持久化数据
        |
        +--> Redis:存验证码、缓存、临时 token 等数据

二、需要安装的软件清单

1. 必装软件

软件推荐版本下载地址
JDK17 或更高,推荐 17Eclipse Temurin JDK / GraalVM
Maven3.6+,推荐 3.9+Maven Download
Git最新稳定版Git for Windows
MySQL8.0 推荐MySQL Community Server
Redis最新稳定版Redis Docker 镜像
Node.jsLTS 版本Node.js Download

2. 推荐安装

软件用途下载地址
IntelliJ IDEA写 Java、启动后端、断点调试IntelliJ IDEA
VS Code写前端、看文档、改配置VS Code
Docker Desktop一键启动 MySQL、Redis,避免污染本机环境Docker Desktop
DBeaver可视化连接 MySQLDBeaver
Apifox / Postman调试接口Apifox / Postman
FinalShell / Xshell连接 Linux 服务器FinalShell

三、安装 JDK

1. 下载 JDK

推荐安装 JDK 17。下载 Windows x64 安装包后,按提示安装即可。

安装完成后,打开 PowerShell:

java -version

看到类似下面的内容,说明安装成功:

openjdk version "17.x.x"

2. 配置 JAVA_HOME

如果 java -version 无法识别,需要手动配置环境变量。

Windows 配置方式:

  1. 右键“此电脑”。

  2. 点击“属性”。

  3. 进入“高级系统设置”。

  4. 点击“环境变量”。

  5. 新增系统变量:

变量名:JAVA_HOME
变量值:你的 JDK 安装目录

例如:

C:\Program Files\Eclipse Adoptium\jdk-17.x.x
  1. Path 中新增:

%JAVA_HOME%\bin
  1. 重新打开 PowerShell,再执行:

java -version

四、安装 Maven

1. 下载并解压 Maven

到 Maven 官网下载 binary zip 包,解压到固定目录,例如:

D:\dev\apache-maven-3.9.9

2. 配置 Maven 环境变量

新增系统变量:

变量名:MAVEN_HOME
变量值:D:\dev\apache-maven-3.9.9

Path 中新增:

%MAVEN_HOME%\bin

重新打开 PowerShell:

mvn -v

能看到 Maven 版本和 Java 版本,说明配置成功。

3. 配置 Maven 国内镜像

找到 Maven 配置文件:

D:\dev\apache-maven-3.9.9\conf\settings.xml

<mirrors> 中加入阿里云镜像:

<mirror>
  <id>aliyunmaven</id>
  <mirrorOf>*</mirrorOf>
  <name>阿里云公共仓库</name>
  <url>https://maven.aliyun.com/repository/public</url>
</mirror>

这样下载依赖会快很多。


五、安装 Git

下载安装 Git for Windows 后,一路默认安装即可。

检查:

git --version

建议配置用户名和邮箱:

git config --global user.name "your-name"
git config --global user.email "your-email@example.com"

拉取项目:

git clone 项目仓库地址

进入项目:

cd 后端项目目录

六、准备 MySQL

后端项目通常会在配置文件中写数据库连接信息。常见配置文件路径:

src/main/resources/application.yml
src/main/resources/application-dev.yml
src/main/resources/application-local.yml
src/main/resources/application-prod.yml

本地开发一般使用 localdev 配置。

方式一:本机安装 MySQL

安装 MySQL 8 后,记住 root 密码。

打开 DBeaver 或 MySQL 命令行,创建数据库:

CREATE DATABASE demo_db
  DEFAULT CHARACTER SET utf8mb4
  COLLATE utf8mb4_unicode_ci;

方式二:用 Docker 启动 MySQL

如果安装了 Docker Desktop,可以创建一个 docker-compose.yml

version: "3.9"
​
services:
  mysql:
    image: mysql:8.0
    container_name: demo-mysql
    environment:
      MYSQL_ROOT_PASSWORD: "123456"
      MYSQL_DATABASE: "demo_db"
    ports:
      - "3306:3306"
    volumes:
      - mysql-data:/var/lib/mysql
    command:
      --default-authentication-plugin=mysql_native_password
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_unicode_ci
​
volumes:
  mysql-data:

启动:

docker compose up -d mysql

查看状态:

docker compose ps

查看日志:

docker compose logs -f mysql

停止:

docker compose down

七、准备 Redis

方式一:用 Docker 启动 Redis

继续在 docker-compose.yml 中加入:

services:
  redis:
    image: redis:latest
    container_name: demo-redis
    ports:
      - "6379:6379"
    volumes:
      - redis-data:/data
​
volumes:
  redis-data:

完整示例:

version: "3.9"
​
services:
  mysql:
    image: mysql:8.0
    container_name: demo-mysql
    environment:
      MYSQL_ROOT_PASSWORD: "123456"
      MYSQL_DATABASE: "demo_db"
    ports:
      - "3306:3306"
    volumes:
      - mysql-data:/var/lib/mysql
    command:
      --default-authentication-plugin=mysql_native_password
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_unicode_ci
​
  redis:
    image: redis:latest
    container_name: demo-redis
    ports:
      - "6379:6379"
    volumes:
      - redis-data:/data
​
volumes:
  mysql-data:
  redis-data:

启动:

docker compose up -d

方式二:Redis 设置密码

如果你的项目要求 Redis 密码,可以这样写:

redis:
  image: redis:latest
  container_name: demo-redis
  command: redis-server --requirepass 123456
  ports:
    - "6379:6379"

后端配置里也要填同样的密码。


八、连接数据库

1. 使用 DBeaver 连接 MySQL

打开 DBeaver:

  1. 点击“新建连接”。

  2. 选择 MySQL。

  3. 填写连接信息:

Host:127.0.0.1
Port:3306
Database:demo_db
Username:root
Password:123456
  1. 点击“测试连接”。

  2. 成功后点击“完成”。

2. 常见连接失败原因

报错原因解决方式
Access denied用户名或密码错误检查 MySQL 密码
Unknown database数据库不存在先创建数据库
Connection refusedMySQL 没启动启动 MySQL 或 Docker 容器
Public Key Retrieval is not allowedMySQL 8 认证问题JDBC URL 加 allowPublicKeyRetrieval=true
Communications link failure网络或端口问题检查 host、port、防火墙

九、修改后端配置文件

找到本地配置文件,例如:

src/main/resources/application-local.yml

常见配置如下:

server:
  port: 8080
​
spring:
  datasource:
    url: jdbc:mysql://127.0.0.1:3306/demo_db?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&useSSL=false
    username: root
    password: 123456
    driver-class-name: com.mysql.cj.jdbc.Driver
​
  data:
    redis:
      host: 127.0.0.1
      port: 6379
      database: 0
      password: ""

如果 Redis 有密码:

spring:
  data:
    redis:
      password: "123456"

注意三点:

  1. 数据库名要和你创建的数据库一致。

  2. MySQL 密码要和本机或 Docker 中的密码一致。

  3. Redis 如果没有密码,配置里就留空字符串。


十、用 IDEA 启动后端项目

1. 打开项目

打开 IntelliJ IDEA:

File -> Open -> 选择后端项目根目录

如果项目根目录下有 pom.xml,IDEA 会自动识别为 Maven 项目。

2. 等待 Maven 下载依赖

第一次打开项目会下载依赖,时间可能较长。建议确认 Maven 使用了国内镜像。

如果没有自动加载:

右侧 Maven 面板 -> Reload All Maven Projects

3. 设置 JDK

进入:

File -> Project Structure -> Project

设置:

SDK:JDK 17
Language level:17

4. 找到启动类

Spring Boot 启动类一般长这样:

@SpringBootApplication
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

右键启动类,点击:

Run 'DemoApplication'

5. 指定运行环境

如果项目区分 devlocalprod 环境,需要指定 profile。

进入:

Run -> Edit Configurations

在 VM options 中加入:

-Dspring.profiles.active=local

或者在 Environment variables 中加入:

SPRING_PROFILES_ACTIVE=local

启动成功时,控制台一般会出现:

Tomcat started on port 8080
Started DemoApplication

十一、用命令行启动后端项目

进入项目根目录:

cd D:\project\demo-backend

编译:

mvn clean compile

启动:

mvn spring-boot:run "-Dspring-boot.run.arguments=--spring.profiles.active=local"

如果你的 Maven 命令不识别引号,可以换成:

mvn spring-boot:run -Dspring-boot.run.arguments="--spring.profiles.active=local"

浏览器访问:

http://127.0.0.1:8080

十二、启动前端项目

如果项目包含前端,例如 admin-web,一般步骤如下:

cd D:\project\demo-admin-web

安装依赖:

npm install

或:

pnpm install

或:

yarn install

启动:

npm run dev

前端项目一般需要配置后端代理,常见文件:

vite.config.ts
src/config/proxy.ts
.env.development

示例:

server: {
  port: 9000,
  proxy: {
    "/api": {
      target: "http://127.0.0.1:8080",
      changeOrigin: true,
      rewrite: (path) => path.replace(/^\/api/, "")
    }
  }
}

然后前端请求写:

/api/xxx

Vite 会转发到:

http://127.0.0.1:8080/xxx

十三、后端打包

进入后端项目根目录:

cd D:\project\demo-backend

普通打包:

mvn clean package

跳过测试打包:

mvn clean package -DskipTests

打包成功后,一般会在 target 目录生成 jar:

target/demo-backend-1.0.0.jar

本地运行 jar:

java -jar target/demo-backend-1.0.0.jar

指定环境:

java -Dspring.profiles.active=prod -jar target/demo-backend-1.0.0.jar

指定端口:

java -Dserver.port=8080 -Dspring.profiles.active=prod -jar target/demo-backend-1.0.0.jar

十四、前端打包

进入前端项目根目录:

cd D:\project\demo-admin-web

打包:

npm run build

或:

pnpm build

打包成功后,一般会生成:

dist

部署前端时,通常把 dist 上传到服务器的 Nginx 静态目录。


十五、部署后端到 Linux 服务器

假设服务器目录是:

/opt/demo/backend

1. 上传 jar

本地打包后,把 jar 上传到服务器:

/opt/demo/backend/demo-backend.jar

可以用 FinalShell、Xftp、scp 上传。

scp 示例:

scp target/demo-backend-1.0.0.jar root@服务器IP:/opt/demo/backend/demo-backend.jar

2. 准备生产配置

生产环境建议不要把数据库密码硬编码在 jar 里,可以放在外部配置文件:

/opt/demo/backend/application-prod.yml

示例:

server:
  port: 8080
​
spring:
  datasource:
    url: jdbc:mysql://127.0.0.1:3306/demo_db?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&useSSL=false
    username: demo_user
    password: 请替换为生产密码
  data:
    redis:
      host: 127.0.0.1
      port: 6379
      password: 请替换为生产密码

启动时指定外部配置:

java -jar demo-backend.jar \
  --spring.profiles.active=prod \
  --spring.config.additional-location=file:/opt/demo/backend/application-prod.yml

十六、Linux 后台启动

1. nohup 方式

进入目录:

cd /opt/demo/backend

启动:

nohup java -Xms512m -Xmx1024m \
  -Dspring.profiles.active=prod \
  -jar demo-backend.jar \
  > app.log 2>&1 &

查看进程:

ps -ef | grep demo-backend.jar

查看日志:

tail -f app.log

停止:

ps -ef | grep demo-backend.jar
kill -15 进程ID

如果正常停止失败,再使用:

kill -9 进程ID

2. 编写启动脚本

创建 start.sh

#!/bin/bash
​
APP_NAME=demo-backend.jar
APP_DIR=/opt/demo/backend
LOG_FILE=$APP_DIR/app.log
​
cd $APP_DIR
​
nohup java -Xms512m -Xmx1024m \
  -Dspring.profiles.active=prod \
  -jar $APP_NAME \
  > $LOG_FILE 2>&1 &
​
echo "应用已启动"

授权:

chmod +x start.sh

启动:

./start.sh

3. 编写停止脚本

创建 stop.sh

#!/bin/bash
​
APP_NAME=demo-backend.jar
PID=$(ps -ef | grep $APP_NAME | grep -v grep | awk '{print $2}')
​
if [ -z "$PID" ]; then
  echo "应用未运行"
else
  kill -15 $PID
  echo "已停止应用,PID=$PID"
fi

授权:

chmod +x stop.sh

停止:

./stop.sh

4. 编写重启脚本

创建 restart.sh

#!/bin/bash
​
APP_NAME=demo-backend.jar
APP_DIR=/opt/demo/backend
LOG_FILE=$APP_DIR/app.log
​
PID=$(ps -ef | grep $APP_NAME | grep -v grep | awk '{print $2}')
​
if [ -n "$PID" ]; then
  echo "停止应用,PID=$PID"
  kill -15 $PID
  sleep 5
fi
​
cd $APP_DIR
​
nohup java -Xms512m -Xmx1024m \
  -Dspring.profiles.active=prod \
  -jar $APP_NAME \
  > $LOG_FILE 2>&1 &
​
echo "应用已重启"

授权并执行:

chmod +x restart.sh
./restart.sh

十七、使用 systemd 管理后端服务

生产环境更推荐用 systemd 管理服务。

创建服务文件:

sudo vim /etc/systemd/system/demo-backend.service

写入:

[Unit]
Description=Demo Backend Service
After=network.target
​
[Service]
Type=simple
WorkingDirectory=/opt/demo/backend
ExecStart=/usr/bin/java -Xms512m -Xmx1024m -Dspring.profiles.active=prod -jar /opt/demo/backend/demo-backend.jar
Restart=always
RestartSec=5
User=root
​
[Install]
WantedBy=multi-user.target

重新加载:

sudo systemctl daemon-reload

启动:

sudo systemctl start demo-backend

停止:

sudo systemctl stop demo-backend

重启:

sudo systemctl restart demo-backend

查看状态:

sudo systemctl status demo-backend

查看日志:

journalctl -u demo-backend -f

设置开机自启:

sudo systemctl enable demo-backend

十八、部署前端到 Nginx

假设前端打包后生成 dist,服务器目录:

/opt/demo/admin-web

上传 dist 内容到:

/opt/demo/admin-web/dist

Nginx 配置示例:

server {
    listen 80;
    server_name example.com;
​
    root /opt/demo/admin-web/dist;
    index index.html;
​
    location / {
        try_files $uri $uri/ /index.html;
    }
​
    location /api/ {
        proxy_pass http://127.0.0.1:8080/;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

检查 Nginx 配置:

nginx -t

重载 Nginx:

nginx -s reload

如果使用 systemd:

sudo systemctl reload nginx

十九、Docker 部署后端

如果想把后端也做成 Docker 镜像,可以写 Dockerfile

FROM eclipse-temurin:17-jre
​
WORKDIR /app
​
COPY target/demo-backend-1.0.0.jar app.jar
​
EXPOSE 8080
​
ENTRYPOINT ["java", "-Dspring.profiles.active=prod", "-jar", "app.jar"]

构建镜像:

docker build -t demo-backend:1.0.0 .

运行容器:

docker run -d \
  --name demo-backend \
  -p 8080:8080 \
  demo-backend:1.0.0

查看日志:

docker logs -f demo-backend

重启:

docker restart demo-backend

停止:

docker stop demo-backend

删除:

docker rm demo-backend

二十、常见问题排查

1. java 命令找不到

说明 JDK 环境变量没配好。

检查:

java -version
echo $env:JAVA_HOME

2. mvn 命令找不到

说明 Maven 没加入 Path

检查:

mvn -v
echo $env:MAVEN_HOME

3. Maven 下载依赖很慢

配置国内镜像,或者检查网络代理。

4. 数据库连接失败

重点检查:

  • MySQL 是否启动。

  • 数据库名是否存在。

  • 用户名密码是否正确。

  • 端口是否为 3306

  • JDBC URL 是否写错。

5. Redis 连接失败

重点检查:

  • Redis 是否启动。

  • 端口是否为 6379

  • 是否设置了密码。

  • 配置文件密码是否一致。

6. 端口被占用

Windows 查看端口:

netstat -ano | findstr ":8080"

Linux 查看端口:

lsof -i:8080

或者:

netstat -tunlp | grep 8080

7. 打包失败

常见原因:

  • JDK 版本不对。

  • Maven 依赖没下载完整。

  • 测试用例失败。

  • 配置文件格式错误。

可以先跳过测试:

mvn clean package -DskipTests

8. 服务器启动后访问不到

检查:

  • 后端进程是否存在。

  • 服务器防火墙是否放行端口。

  • 云服务器安全组是否放行端口。

  • Nginx 代理是否正确。

  • 后端是否绑定到 127.0.0.1 导致外部无法访问。


二十一、推荐的新手启动顺序

第一次不要同时做太多事,按这个顺序来:

  1. 安装 JDK。

  2. 安装 Maven。

  3. 安装 Git。

  4. 安装 Docker Desktop。

  5. 用 Docker 启动 MySQL 和 Redis。

  6. 用 DBeaver 连接 MySQL。

  7. 创建本地数据库。

  8. 修改后端 application-local.yml

  9. IDEA 打开后端项目。

  10. 设置 JDK 17。

  11. 启动后端。

  12. 浏览器访问后端首页或健康检查地址。

  13. 启动前端项目。

  14. 确认前端代理到本地后端。

  15. 完成本地联调。

  16. Maven 打 jar 包。

  17. 上传 jar 到服务器。

  18. nohupsystemd 启动。

  19. 配置 Nginx。

  20. 测试线上访问。


二十二、最后总结

前端同学刚接触后端时,不需要一开始就理解所有 Java 语法和框架细节。先掌握这条主线就够了:

安装 JDK 和 Maven
        |
启动 MySQL 和 Redis
        |
修改 application 配置
        |
启动 Spring Boot
        |
打包 jar
        |
上传服务器
        |
用 nohup / systemd 启动
        |
用 Nginx 代理访问

只要这条链路跑通,你就已经具备了后端项目本地开发、联调、打包和部署的基础能力。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BUG_Jia

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值