Tomcat Resources and Book Recommendations
Introduction
After installing Tomcat, deploying WARs, and fronting with Nginx, the best progress comes from shipping one real app and using official docs when behavior differs from tutorials. This chapter curates Apache references, books, and how the Tomcat track connects to Spring Boot, Maven, Nginx, and Linux on Hello Code.
Prerequisites
- Chapters through projects (recommended)
- At least one successful WAR deploy
How to Keep Learning
- Deploy a Maven or Spring Boot WAR to Tomcat on a VPS
- Put Nginx + HTTPS in front
- Break something (wrong context path, stop Tomcat) and fix with logs +
curl - Compare the same app as executable JAR vs external WAR
Reading without deploying leaves gaps in context paths, provided scope, and proxy headers.
Official and Primary References
| Resource | Best for |
|---|---|
| Apache Tomcat 10.1 Documentation | Source of truth — Connectors, valves, deploy |
| Tomcat Security How-To | Hardening checklist |
| Jakarta Servlet specification | API boundaries vs container |
| Maven WAR Plugin | Packaging web apps |
| Spring Boot deployment | WAR deploy, external containers |
Recommended Books
Apache Tomcat 10 Essentials (Packt-style titles)
- Hands-on admin and deploy focus
- Good after this track for valve and realm details
How Tomcat Works (Budi Kurniawan et al.)
- Internal architecture (older editions pre-Jakarta but concepts remain)
- Read after you can deploy WARs—not as first book
Spring Boot in Action / Spring in Action (Manning)
- Application layer on top of Tomcat—pair with Spring Boot track
Hello Code Related Tracks
| Track | Relationship |
|---|---|
| Spring Boot 3 | Embedded Tomcat default; WAR path in chapter 14 |
| Maven | war packaging, provided scope |
| Nginx | Reverse proxy, TLS, static + API split |
| Linux | systemd, firewall, SSH, Docker |
| JDBC | DataSource in apps vs Tomcat JNDI |
| MySQL | Backend DB for WAR apps |
gen_article_plan
Chinese outline for authors: frontend/gen_article_plan/tomcat.md.
When to Use Standalone Tomcat vs Embedded JAR
| Choose standalone Tomcat | Choose Spring Boot JAR |
|---|---|
| Ops team manages shared Tomcat | Team owns full JVM process |
| Multiple WARs one server | One service per artifact |
| Legacy deploy pipeline (WAR copy) | Docker/K8s java -jar |
| Need Servlet container learning | Fastest path for new REST APIs |
Many organizations use both.
Community and Support
- Tomcat users mailing list — searchable archives
- Stack Overflow tags
apache-tomcat,spring-boot,jakarta-servlet - CVE advisories: watch Apache Tomcat security page when running public servers
Next Steps After This Track
- Complete all four projects
- Deploy Spring Boot WAR with MySQL — Spring Boot JDBC
- Add HTTPS — Nginx Let's Encrypt
- Optional: read How Tomcat Works for connector and pipeline internals
FAQ
Tomcat certification?
No mainstream cert—demonstrate deploy skills via projects and ops runbooks.
Jetty or Undertow docs instead?
Same Servlet spec; Tomcat docs transfer conceptually.
Where is Tomcat source?
Apache Tomcat GitHub — for deep debugging only.
Update frequency?
Check Tomcat downloads for 10.1.x patches; apply security minors on production.