Java Web Core Techniques
Contents
Java
- Java basic grammar.
- Object-oriented programming.
- Custom annotations.
@JsonIgnore
. - Select appropriate collection data types.
- Generic programming.
- Functional programming and stream.
- Concurrency programming and thread safety.
- Network programming. Socket, NIO.
- Internationalization.
- JVM tuning.
- Java Security. Encryption, SSL.
Java Data Access
- Data persistence with ORM.
- Database transaction. Transaction isolation level.
- Optimistic and pessimistic locking.
- User data permission.
- Page searching.
- Cascade delete.
Design Patterns
- Clean code.
- Design patterns (Singleton, proxy).
- IoC.
- AOP.
- Classes design principles (SOLID).
- Classes relationships (generalization, aggregation, association).
- Tests. Unit tests.
- Logging.
Java Web MVC
- Controller parameters to Java model.
- Controller data validation. (To prevent dirty data persistence)
- Controller exception handling.
- Encapsulation. (Return message, exception class)
- Filtering HTTP requests.
- User authentication and authorization.
- Web application server lifecycle event listeners.
- File upload and download.
- HTTP, HTTPS.
- Data Privilege. (Backend filter data)
- Operation Privilege. (Frontend hide buttons. Backend check privileges to allow operations.)
System Business Functions
- Sign up, sign in, sign out
- User, role, privilege
Web Frontend
- General
- Custom JSP form tags.
<form:select>
- Custom JavaScript functions.
proj.confirm()
,proj.loading()
,proj.getDictLabel()
,proj.success(message)
,proj.openDialog()
- Prevent form repeat submit.
- Custom JSP form tags.
- Management System
- List page
- Page table list.
- Tree menu and table list.
- Search.
- Delete and batch delete.
- Add/Edit page
- Form validation.
- File upload form.
- Form submit.
- Ajax and async request.
- Events. click(), change().
- Multiple form input elements related update.
- One to many add/edit.
- Form Elements
- Input text, hidden, password
- Radio
- Checkboxes
- Select
- File
- Input Submit, Reset
- Textarea
- Rich text editor
- Date Time picker
- Multiple Group Select Picker
- Select Picker with Search
- Input Tags
- List page
- UI Framework
- Layout
- Basic Widgets (Components)
- Button
- Form
- Navigation
- Tab
- Widgets (Components)
- Alert
- Date picker
- Table
- Tree
- Transfer
- Icons
- Themes
Database
- RDBMS database deisgn.
- RDBMS indexing.
References
- Form Elements
- UI Frameworks