YourNote 201: Java EE - zhamri/CSC584-Enterprise_Programming GitHub Wiki
1. What is Java EE (Jakarta EE)?
- Java EE is a platform for building large-scale, enterprise web applications.
- Today, it is known as
Jakarta EE
Built on top of Java SE, it provides:
- Web development tools
- Database integration
- Security
- Scalability features
2. Core Idea
Java EE is about:
Multi-user + Scalable + Secure + Distributed applications
Examples:
- banking systems
- university systems
- e-commerce platforms
3. Main Components
a) Servlets
- Handle HTTP requests
- Backend logic
b) JSP (JavaServer Pages)
- UI layer
- Display data
c) EJB (Enterprise JavaBeans)
- Business logic (advanced / enterprise level)
Note:
EJB is less popular now, but still an important concept.
d) JPA (Java Persistence API)
- Database interaction
- Replace raw JDBC
Example:
@Entity
public class Student {
@Id
private Long id;
}
e) REST APIs (JAX-RS)
- Build web services
- Used in modern apps
4. Architecture (VERY IMPORTANT FOR EXAM)
Typical 3-tier architecture:
- Presentation Layer → JSP
- Business Layer → Servlet / EJB
- Data Layer → Database (JPA/JDBC)
This is the foundation of enterprise systems
5. Application Server
Java EE apps run on servers like:
- Apache Tomcat (Servlet container)
- GlassFish
- WildFly
Students must know:
difference between web server vs application server
6. Packaging & Deployment
Applications are packaged as:
- WAR (Web Archive) → Servlet/JSP apps
- EAR (Enterprise Archive) → large enterprise systems
7. Security Concepts
Java EE provides:
- authentication (login)
- authorization (roles)
Example:
- Admin vs User access
- Transactions Used in:
- banking
- payment systems
Ensures:
- data consistency
- rollback if error
9. Dependency Injection (DI)
Java EE supports DI:
@Inject
StudentService service;
Makes code cleaner and modular