본문 바로가기

Development/JAVA & Spring25

[Spring] [퍼옴] 스프링과 스프링 부트란 무엇인가? 개념 정리 https://melonicedlatte.com/2021/07/11/174700.html 스프링(Spring), 스프링 부트(Spring Boot)란? 개념 정리 - Easy is Perfect melonicedlatte.com 2023. 11. 8.
객체지향 프로그래밍 OOP란? 들어가며, 객체지향 프로그래밍이 무엇인지 왜 객체지향 프로그래밍이 좋은지 궁금해서 알아보게되었다. OOP의 특징 1. 캡슐화 (Encapsulation) 캡슐화란 하나의 객체에 대해 그 객체가 특정한 목적을 위한 필요한 변수나 메소드를 하나로 묶는 것을 의미한다. 따라서 클래스를 우리가 만들 떄 훗날 이 클래스에서 만들어진 객체가 특정한 목적을 잘 수행할 수 있도록 사용해야할 변수와 그 변수를 가지고 특정한 액션 즉 메서드를 관련성 있게 클래스에 구성해야한다. 정보은닉 그리고 캡슐화를 하는 중요한 목적은 바로 정보은닉이다. 유저 정보를 가지고 있는 User라는 객체에서 유저의 정보가 public으로 선언되어 있다면, 누구든 접근해서 유저 정보를 변경할 수 있다. 그렇기 때문에 private로 해서 데이터.. 2023. 11. 8.
[Spring] Spring boot를 사용한 REST API 들어가며, @RequestMapping을 사용하여 모든 HTTP 메소드를 처리하던 이전 방식과는 다르게, 최신 방식은 @GetMapping, @PostMapping, @PutMapping, @DeleteMapping, @PatchMapping 등을 사용한다. URI 엔드포인트는 동일하게 사용하되, 어노테이션만 다르게 설정하여 REST API를 처리한다. 또한 메소드 이름 또한 readPerson, deletePerson 과 같이 명확하게 사용하면 REST 스타일에 가깝게 코딩할 수 있다. @RestController // Rest API를 처리하는 Controller 임을 의미 @RequiredArgsConstructor @RequestMapping("/api") public class PersonCon.. 2023. 11. 5.
[Spring] CRUD 란 무엇인가 들어가며, 맨 처음 시작하는 Todo, 게시판 프로젝트를 할 때 가장 기본적으로 사용되는 기능인 CRUD를 초보자도 쉽게 이해할 수 있도록 설명해보자. CRUD란? : 대부분의 컴퓨터 소프트웨어가 가지는 기본적인 데이터 처리 기능 SQL의 기본 4대 요소 REST API에서는 CRUD 이런 작업들을 method 라고 부름 REST API는 웹의 통신 규약인 http를 이용하기 때문에 http가 가지고 있는 메소드를 이용 Create 생성 실제 웹 애플리케이션은 폼을 이용해서 데이터를 전송할 때 수정 생성 삭제를 할 때 모두 post를 사용하지만 본래 post는 생성을 위해 준비된 기능이였다. http에서 create를 위해 준비된 메소드는 post (메소드) Read 읽기 get (메소드) http에서 .. 2023. 11. 5.
[Java] split() 함수로 문자열 자르기 들어가며, 이번에는 Java에서 String을 다룰 때 유용하게 사용할 수 있는 split 함수를 알아보도록 하겠습니다. 참고로 split의 뜻은 분열, 나뉘다 입니다. Split의 사용방법에는 두 가지가 있습니다. 1. split(String regex); 구분자를 바탕으로 배열 형식으로 문자열을 잘라줍니다. String str = "Hello World"; String[] ArraysStr = str.split(" "); 2. split(String regex, int limit); 구분자를 바탕으로 배열 형식으로 문자열을 자르지만, limit 수만큼 잘라줍니다. String str = "가나다라,마바사아,자차카타"; String[] ArraysStr = str.split(","); 자 그렇다면, 1.. 2023. 11. 3.
[Spring] JPA란 ? 들어가며, 스프링 공부를 하다가 JPA라는 큰 개념이 나왔다. 따라서 개념을 알고 가기 위해 JPA를 정리해보고자 한다. JPA (Java Persistence API) 란? 자바 ORM 표준 자바 애플리케이션에서 데이터베이스와 상호작용하는 데 사용되는 자바 프로그래밍 인터페이스 자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스 인터페이스 이기 때문에 Hibernate, OpenJPA 등이 JPA를 구현함 왜 JPA를 사용해야 할까? 현대의 어플리케이션 개발 시 대부분은 OOP(객체지향 프로그래밍) 언어를 사용한다. 데이터를 저장하기 위해 관계형 데이터베이스(이하 RDB)를 사용한다. (DB는 거의 99% RDB를 사용한다고 보면 된다.) 언어는 OOP를 쓰고 DB는 RDB를 .. 2023. 10. 29.
[Java] String =" " 와 new String(" ")의 차이 이번 글은 헷갈리기 쉬운 String =" " 와 new String(" ")의 차이에 대해 얘기해보려한다. 바로 시작해보겠다. 아래는 String =" " 와 new String(" ")를 사용한 코드이다. 이를 분석해보자 public class StringExample { public static void main(String [] args) { String a = new String("Hello"); String b = "Hello"; String c = "Hello"; } } a 는 heap 메모리에 개별 객체가 만들어지고, b 와 c 는String Constant Pool에 만들어진 하나의 객체를 참조한다. 따라서 총 2개의 String 객체가 생성된다. 두 가지 방식 모두 String 객체를 .. 2023. 10. 27.
[JAVA] 오버로딩 vs 오버라이딩 https://velog.io/@psj0810/오버로딩과-오버라이딩 참고자료 오버로딩과 오버라이딩 오버로딩한 클래스 안ㅇ에 같은 이름의 메서드를 여러개 정의하는것오버로딩이 성립하기 위한 조건1\. 메서드 이름이 같아야한다.2\. 메개변수의 개수 또는 타입이 달라야한다.3\. 반환타입은 영 velog.io 2023. 10. 15.
[Spring] 게시판 만들기 참고자료 https://ttl-blog.tistory.com/category/%F0%9F%8F%9D%EF%B8%8F%20Spring/%EA%B2%8C%EC%8B%9C%ED%8C%90%20%EB%A7%8C%EB%93%A4%EA%B8%B0 2023. 10. 9.
[인프런 Spring] Spring 입문 강의 Spring 공부를 하다가 알게된 IT 교육 플랫폼인 인프런. 인프런에서 인기가 많은 김영한 님의 Spring 로드맵 중 첫 번째인 'Spring 입문' 강의를 들어보았다. 2023. 10. 9.