> For the complete documentation index, see [llms.txt](https://codewithmeiy.gitbook.io/core-java/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://codewithmeiy.gitbook.io/core-java/test-your-knowledge/packages.md).

# Packages

Create below project structure

```java
com
└── example
    ├── core
    │   ├── models
    │   │   ├── User.java
    │   │   └── Product.java
    │   ├── services
    │   │   ├── UserService.java
    │   │   └── ProductService.java
    │   └── utils
    │       └── StringUtils.java
    ├── web
    │   ├── controllers
    │   │   ├── UserController.java
    │   │   └── ProductController.java
    │   ├── filters
    │   │   └── AuthFilter.java
    │   ├── validators
    │   │   ├── UserValidator.java
    │   │   └── ProductValidator.java
    │   └── views
    │       ├── user
    │       │   ├── UserProfileView.java
    │       │   └── UserListView.java
    │       └── product
    │           ├── ProductDetailsView.java
    │           └── ProductListView.java
    ├── data
    │   ├── repositories
    │   │   ├── UserRepository.java
    │   │   └── ProductRepository.java
    │   └── database
    │       ├── DatabaseConnection.java
    │       └── DatabaseInitializer.java
    ├── exceptions
    │   ├── ServiceException.java
    │   └── ValidationException.java
    ├── security
    │   ├── authentication
    │   │   ├── AuthenticationService.java
    │   │   └── TokenAuthenticationProvider.java
    │   └── authorization
    │       ├── AuthorizationService.java
    │       └── Role.java
    ├── logging
    │   ├── LogService.java
    │   └── LogLevel.java
    └── config
        ├── AppConfig.java
        ├── WebConfig.java
        └── DatabaseConfig.java

```
