# JAVA Awesome List - [Annotation](#annotation) - [Documentation](#documentation) - [SpringBoot](#springboot) - [SpringBoot-specific annotations](#springboot-specific-annotations) - [Examples](#examples) - [API](#api) - [Multipart and files](#multipart-and-files) - [Routing](#routing) - [CORS](#cors) - [Exceptions](#exceptions) - [OpenAPI 3](#openapi-3) - [Settings](#settings) - [Errors](#errors) - [Security](#security) - [IntelliJ Idea](#intellij-idea) - [Plugins](#plugins) ## Annotation - [Javax Annotation API](https://mvnrepository.com/artifact/javax.annotation/javax.annotation-api) - SO [Can't find @Nullable inside javax.annotation.*](https://stackoverflow.com/a/71911066/515948) ## Documentation - [Javadoc link to method in other class](https://stackoverflow.com/q/17496038/515948) ## SpringBoot ### SpringBoot-specific annotations - [Spring @Configuration annotation example](https://howtodoinjava.com/spring-core/spring-configuration-annotation/) - [Spring @RequestParam Annotation](https://www.baeldung.com/spring-request-param) ### Examples - [Spring Boot + Angular 13: CRUD example (full stack)](https://www.bezkoder.com/spring-boot-angular-13-crud/) ### API #### Multipart and files - [Spring Component Scanning](https://www.baeldung.com/spring-component-scanning) - [Using Multipart Form Data with Spring Boot](https://blog.classkick.com/using-multipart-form-data-with-spring-boot-3216d67ae2b9) - [How to upload multiple files in Java Spring Boot](https://www.bezkoder.com/spring-boot-upload-multiple-files/), also [here](https://www.bezkoder.com/spring-boot-file-upload/) and [angular side](https://www.bezkoder.com/angular-12-spring-boot-file-upload/). Source code [here](https://github.com/bezkoder/spring-boot-upload-multipart-files) - SO [Spring Boot: How to include a configuration class that is not in my base package?](https://stackoverflow.com/q/60097674/515948) - SO [only one MultipartFile object populated when using an java.util.Optional MutipartFile array or list @RequestParam [SPR-15919]](https://github.com/spring-projects/spring-framework/issues/20473) - SO [REST multipart mixed request (file+json) with Spring](https://stackoverflow.com/q/38207049/515948) #### Routing - [Spring RequestMapping](https://www.baeldung.com/spring-requestmapping) - [Spring Boot @RestController](https://zetcode.com/springboot/restcontroller/) - SO [Best practice to send response in spring boot](https://stackoverflow.com/q/55789337/515948) - SO [How to show all available routes in Spring?](https://stackoverflow.com/q/3686196/515948) - SO [Spring - When use DELETE with json returns Bad Request](https://stackoverflow.com/q/65554372/515948) - SO [Spring: How to get parameters from POST body?](https://stackoverflow.com/q/22163397/515948) ##### CORS - [Class CorsConfiguration](https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/cors/CorsConfiguration.html) - [Annotation Type PropertySource](https://docs.spring.io/spring-framework/docs/3.1.x/javadoc-api/org/springframework/context/annotation/PropertySource.html) #### Exceptions - [Problem Details for HTTP APIs](https://www.rfc-editor.org/rfc/rfc7807) - [Structured error messages for HTTP APIs](https://blog.frankel.ch/structured-errors-http-apis/) - [Spring Boot – Exception Handling](https://www.geeksforgeeks.org/spring-boot-exception-handling/) - [Spring Boot - Exception Handling](https://www.tutorialspoint.com/spring_boot/spring_boot_exception_handling.htm) ### OpenAPI 3 - [Spring Boot + Swagger 3 (OpenAPI 3) Hello World Example](https://www.javainuse.com/spring/boot_swagger3) - [Generate Spring Boot REST API using Swagger/OpenAPI](https://www.north-47.com/knowledge-base/generate-spring-boot-rest-api-using-swagger-openapi/) - [Generate Spring Boot Project with Swagger](https://baeldung-cn.com/spring-boot-rest-client-swagger-codegen#solutions) - [swagger-codegen-maven-plugin](https://github.com/swagger-api/swagger-codegen/blob/master/modules/swagger-codegen-maven-plugin/README.md) - [openapi-generator-maven-plugin](https://github.com/OpenAPITools/openapi-generator/tree/master/modules/openapi-generator-maven-plugin) - [Migrating from SpringFox](https://springdoc.org/migrating-from-springfox.html) - [Maven groupId and package name in java source](https://stackoverflow.com/a/30197922/515948) - [Generating Clients/Models for RESTful services from OpenAPI Specification](https://medium.com/codex/generating-clients-models-for-restful-services-from-openapi-specification-edf211e5d761) ### Settings - [The settings.xml File in Maven](https://www.baeldung.com/maven-settings-xml) - [Spring – Read file from resources folder](https://mkyong.com/spring/spring-read-file-from-resources-folder/) ### Errors - SO [Spring Boot - Illegal reflective access by org.springframework.cglib.core.ReflectUtils$1](https://stackoverflow.com/q/52512580/515948) - GH [Java 9: Avoid illegal reflective access warning for SpEL method reference](https://github.com/spring-projects/spring-framework/issues/21385) - [ErrorMvsAutoConfiguration](https://github.com/spring-projects/spring-boot/blob/main/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/servlet/error/ErrorMvcAutoConfiguration.java) ### Security - [Spring Security for Spring Boot Integration Tests](https://www.baeldung.com/spring-security-integration-tests?__s=t36toizdg1w2mu6z4394) - GH [Spring Security and Angular](https://github.com/spring-guides/tut-spring-security-and-angular-js/tree/master) ## IntelliJ Idea ### Plugins - [Conventional Commit](https://plugins.jetbrains.com/plugin/13389-conventional-commit)