int number = 10;
String message = "Hello, World!";if (number > 5) {
System.out.println("Number is greater than 5");
} else {
System.out.println("Number is 5 or less");
}class Animal {
void sound() {
System.out.println("Animal makes a sound");
}
}
class Dog extends Animal {
void sound() {
System.out.println("Bark");
}
}@Service
public class MyService {
@Autowired
private MyRepository myRepository;
}# application.properties
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=pass@Profile("dev")
@Component
public class DevConfig {...}@RestController
@RequestMapping("/api")
public class MyController {
@GetMapping("/items/{id}")
public ResponseEntity<Item> getItem(@PathVariable Long id) {
return ResponseEntity.ok(itemService.findById(id));
}
@PostMapping("/items")
public ResponseEntity<Item> createItem(@RequestBody Item item) {
return ResponseEntity.created(...).body(itemService.save(item));
}
}@Entity
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String name;
@OneToMany(mappedBy = "user")
private List<Order> orders;
}@Repository
public interface UserRepository extends JpaRepository<User, Long> {
List<User> findByName(String name);
}public class UserDTO {
private Long id;
private String name;
}User user = userRepository.findById(id);
UserDTO userDTO = new UserDTO();
userDTO.setId(user.getId());
userDTO.setName(user.getName());@Mapper
public interface UserMapper {
UserMapper INSTANCE = Mappers.getMapper(UserMapper.class);
UserDTO userToUserDTO(User user);
}public class User {
@NotNull
private String name;
@Email
private String email;
}@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(CustomException.class)
public ResponseEntity<String> handleCustomException(CustomException ex) {
return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(ex.getMessage());
}
}List<String> names = Arrays.asList("Alice", "Bob", "Charlie");List<String> filtered = names.stream()
.filter(name -> name.startsWith("A"))
.collect(Collectors.toList());@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.anyRequest().authenticated()
.and().httpBasic();
}
}public class JwtTokenUtil {...}@SpringBootTest
public class MyServiceTests {...}@Mock
private MyRepository myRepository;class User {
private final String name;
private final int age;
public static class Builder {
private String name;
private int age;
public Builder name(String name) {
this.name = name;
return this;
}
public Builder age(int age) {
this.age = age;
return this;
}
public User build() {
return new User(this);
}
}
}private static final Logger logger = LoggerFactory.getLogger(MyClass.class);
logger.info("Log message");Pageable pageable = PageRequest.of(0, 10);
Page<User> users = userRepository.findAll(pageable);@Async
public CompletableFuture<String> asyncMethod() {...}@Cacheable("users")
public User getUser(Long id) {...}- Follow SOLID principles.
- Keep code clean and maintainable.
- Use meaningful variable names.
This cheatsheet provides a quick reference for essential Java backend engineering concepts and practices, ensuring developers can build robust applications with Spring Boot and related technologies effectively.
Some useful references https://introcs.cs.princeton.edu/java/11cheatsheet/?utm_source=chatgpt.com @blg-kadr/Java-Cheatsheet-fork https://cheatography.com/lucamazzza/cheat-sheets/java17/pdf/?last=1696235600 https://www.baeldung.com/java-collections?utm_source=chatgpt.com