首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Java Web 开发环境搭建全栈指南:JDK/Eclipse/MySQL/Tomcat 标准化配置

     編輯:程式設計綜合問答

标准化环境清单

组件推荐版本下载源核心配置
JDK17/21 LTSOracle / AdoptiumJAVA_HOME, PATH 添加 %JAVA_HOME%\bin
IDEIntelliJ IDEA 2023+ / Eclipse 2023-09官网Maven/Gradle 集成, 编码 UTF-8
构建工具Maven 3.9+ / Gradle 8+官网settings.xml 镜像源 (阿里云), 本地仓库路径
数据库MySQL 8.0 / PostgreSQL 15官网 / Docker字符集 utf8mb4, 时区 Asia/Shanghai
数据库工具Navicat / DBeaver / DataGrip官网连接池配置, ER 图生成
Web 容器Tomcat 10.1 (Servlet 6) / Jetty 12官网端口 8080, 编码 UTF-8, JNDI 数据源
调试代理Fiddler / Charles / Proxyman官网HTTPS 解密证书安装
版本控制Git 2.40+官网user.name/email, SSH Key, .gitignore

JDK 环境变量标准配置

# Windows (系统变量)
JAVA_HOME = C:\Program Files\Java\jdk-21
PATH += %JAVA_HOME%\bin

# Linux/macOS (~/.bashrc / ~/.zshrc)
export JAVA_HOME=/usr/lib/jvm/java-21-openjdk
export PATH=$JAVA_HOME/bin:$PATH

# 验证
java -version
javac -version

Maven 核心配置 (settings.xml)

<mirrors>
  <mirror>
    <id>aliyun</id>
    <mirrorOf>central</mirrorOf>
    <name>Aliyun Maven</name>
    <url>https://maven.aliyun.com/repository/public</url>
  </mirror>
</mirrors>

<profiles>
  <profile>
    <id>jdk-21</id>
    <activation><activeByDefault>true</activeByDefault></activation>
    <properties>
      <maven.compiler.source>21</maven.compiler.source>
      <maven.compiler.target>21</maven.compiler.target>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
  </profile>
</profiles>

MySQL 8.0 必调参数

[mysqld]
# 字符集
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

# 连接数
max_connections = 1000

# 时区
default-time-zone = '+08:00'

# 仅本地访问 (生产环境)
# bind-address = 127.0.0.1

# SQL 模式 (兼容性)
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

Tomcat 生产就绪配置

<!-- server.xml -->
<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="200" minSpareThreads="20"
           connectionTimeout="20000"
           redirectPort="8443"
           URIEncoding="UTF-8"
           compression="on"
           compressableMimeType="text/html,text/xml,text/plain,text/css,application/json,application/javascript" />

<!-- context.xml 数据源 -->
<Resource name="jdbc/MyDB" auth="Container" type="javax.sql.DataSource"
          maxTotal="100" maxIdle="30" maxWaitMillis="10000"
          username="app" password="secret"
          driverClassName="com.mysql.cj.jdbc.Driver"
          url="jdbc:mysql://localhost:3306/mydb?useSSL=false&serverTimezone=Asia/Shanghai" />

IDE 统一编码设置

  • IntelliJ: Settings → Editor → File Encodings → Global/Project/Properties 全部 UTF-8
  • Eclipse: Window → Preferences → General → Workspace → Text file encoding → UTF-8

Docker 一键启动核心中间件 (推荐)

# MySQL
docker run -d --name mysql -p 3306:3306 \
  -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=mydb \
  -v mysql_data:/var/lib/mysql mysql:8.0

# Redis
docker run -d --name redis -p 6379:6379 redis:7-alpine

# Nginx
docker run -d --name nginx -p 80:80 -v $(pwd)/nginx.conf:/etc/nginx/nginx.conf nginx:alpine

新手避坑清单

  1. JDK 版本与项目编译版本一致 (maven.compiler.source/target)
  2. 数据库驱动版本匹配 (MySQL 8 必用 mysql-connector-java 8.x)
  3. Tomcat Servlet 版本匹配 (Tomcat 10+ 对应 Servlet 6+, 包名 jakarta.*)
  4. 端口冲突检查 (8080, 3306, 6379, 80)
  5. 中文乱码三件套: 数据库/表/连接 URL 全链路 utf8mb4
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved