Engineering WIKI/Docs
-
Path Parameter 와 Query Parameter 구분Engineering WIKI/Docs 2022. 9. 17. 06:45
언제 사용하는게 좋을까? Path Parameter(한가지 정보만) - 예를 들어 리스트에서 상세페이지 이동할때, Resource를 가져오는 Get 메소드는 PathVariable을 사용하고, path parameter는 리소스의 위치를 정의한다. /users/123 # 아이디가 123인 사용자를 가져온다. 이 경우에, 123 을 서버단에 전달한다. 경로를 변수로서 사용하는 것이다. Query Parameter(정보가 많을때) - 페이지네이션, 정렬(sort)이나 필터링을 하는 경우 QueryParam을 사용하는 것이 옳은 방법이었다. /users?id=123 # 아이디가 123인 사용자를 가져온다. 그럼 서버로 부터 id 변수를 얻을 수 있다. 이것이 Query String이 동작하는 방식이다. Pat..
-
파이썬 최대공약수와 최소공배수 알고리즘Engineering WIKI/Docs 2022. 5. 26. 14:47
최대공약수란 ? GCD (Greatest Common Divisor) Common Divisor → 라는 이름에서 알 수 있듯이 두 수 혹은 그 이상의 여러 수의 공통인 약수 중, 최대인 것. 즉, 수들의 각각의 약수 중 공통이며 가장 큰 수를 최대공약수라고 한다. 8 의 약수 - 1,2,4,8 10 의 약수 - 1,2,5,10 8과 10의 공통 약수 : 1,2 중 가장 큰 수 : 2 8과 10의 최대공약수 : 2 최소공배수란? LCM (Least Common Multiple) 두 수, 혹은 그 이상의 수들의 공통인 배수 중 최소, 가장 작은 수. 즉, 수 들의 각각의 배수 중 공통이며 가장 작은 수를 최소공배수라고 한다. 10의 배수 : 10,20,30,40,50,60,70,80,90,100,110,1..
-
소수 (Prime Number) 판별Engineering WIKI/Docs 2022. 5. 26. 14:35
소수란 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 자연수로는 나누어떨어지지 않는 자연수이다 6은 1, 2, 3, 6으로 나누어떨어지므로 소수가 아니다 7은 1과 7을 제외하고는 나누어떨어지지 않으므로 소수이다 코딩 테스트에서는 어떠한 자연수가 소수인지 아닌지 판별해야 하는 문제가 자주 출제된다 소수의 판별: 기본적인 알고리즘 (Python) # 소수 판별 함수(2이상의 자연수에 대하여) def is_prime_number(x): # 2부터 (x - 1)까지의 모든 수를 확인하며 for i in range(2, x): # x가 해당 수로 나누어떨어진다면 if x % i == 0: return False # 소수가 아님 return True # 소수임 print(is_prime_number(4)) #..
-
알고리즘 기본정렬Engineering WIKI/Docs 2022. 4. 7. 12:40
Sorting (Bubble, Selection, Insertion, Merge, Quick, Counting, Radix) - VisuAlgo VisuAlgo is free of charge for Computer Science community on earth. If you like VisuAlgo, the only "payment" that we ask of you is for you to tell the existence of VisuAlgo to other Computer Science students/instructors that you know =) via Facebook/Twitte visualgo.net 버블 정렬 두 인접한 데이터를 비교해서, 앞에 있는 데이터가 뒤에 있는 데이터보다 크..
-
orphanRemoval 이란?Engineering WIKI/Docs 2022. 4. 2. 01:41
부모 엔티티와 연관관계가 끊어진 자식 엔티티를 자동으로 삭제해주는 기능이다. @Entity public class Parent { @Id @GeneratedValue private Long id; private String username; @OneToMany(mappedBy = "parent", cascade = CascadeType.ALL, orphanRemoval = true) private List childList = new ArrayList(); } orphanRemoval을 true로 하면 , Parent parent1 = em.find(Parent.class, parent.getId()); parent1.getChildList().remove(0); // delete 쿼리나간다. 자동으로 ..
-
Spring JPA CascadeType 종류Engineering WIKI/Docs 2022. 4. 2. 01:35
Spring JPA CascadeType 종류 javax.persistence.CascadeType JPA Cascade Type ALL PERSIST MERGE REMOVE REFRESH DETACH CascadeType.ALL 상위 엔터티에서 하위 엔터티로 모든 작업을 전파 @Entity public class Person { @Id @GeneratedValue(strategy = GenerationType.AUTO) private int id; private String name; @OneToMany(mappedBy = "person", cascade = CascadeType.ALL) private List addresses; } @Entity public class Address { @Id @Ge..
-
API의 개념 뿌수기! (필수 API 개념 기술)Engineering WIKI/Docs 2021. 1. 17. 21:25
API = 키보드 프로그램들 간의 소통 방법 API 역할 API는 서버와 DB의 출입구 역할 데이터베이스에는 소중한 정보들이 저장되고, 누구나 DB에 속하는것을 막아야 함. API는 이를 방지하기 위해 서버와 데이터베이스에 대한 출입구 역할을 하며, 허용된 사람들에게만 접근성을 부여해줍니다. API는 애플리케이션과 기기가 원할하게 통신할 수 있게 해 준다. 여기서 애플리케이션이란 우리가 흔히 알고 있는 스마트폰 어플이나 프로그램을 말합니다. API는 애플리케이션과 기기가 데이터를 원활히 주고받을 수 있도록 돕는 역할을 합니다. API는 모든 접속을 표준화한다. API는 모든 접속을 표준화하기 때문에 기계/ 운영체제 등과 상관없이 누구나 동일한 액세스를 얻을 수 있습니다. 쉽게 말해, API는 범용 플러그..