Backend
Overview
The backend is a Spring Boot application using Java 25 and Maven. It provides REST APIs for tax return management and filing orchestration.
Project Layout
backend/
src/
main/
java/com/example/taxfiling/
controller/ # REST controllers
service/ # Business logic
repository/ # Spring Data JPA repositories
model/ # Entity classes
dto/ # Data transfer objects
config/ # Spring configuration
exception/ # Custom exceptions and error handling
resources/
application.yml # Application configuration
pom.xml # Maven build file
Key Dependencies
spring-boot-starter-web- REST APIspring-boot-starter-data-jpa- Database accessspring-boot-starter-data-redis- Redis cachingspring-boot-starter-validation- Input validationspring-boot-starter-test- Testingpostgresql- PostgreSQL JDBC driverlombok- Boilerplate reduction
Configuration
Application configuration is in application.yml:
spring:
datasource:
url: jdbc:postgresql://localhost:5432/intuit_crash_course
username: ${DB_USERNAME}
password: ${DB_PASSWORD}
jpa:
hibernate:
ddl-auto: update
show-sql: true
data:
redis:
host: localhost
port: 6379
server:
port: 8080
Testing
# Run all tests
mvn test
# Run with coverage
mvn test jacoco:report