positional arguments (위치 인자)함수를 호출할 때 인자의 위치에 따라 값을 전달하는 방식이다. 함수 정의에서 인자의 순서대로 값을 전달해야 하며, 함수 호출 시 가장 일반적인 방법이다.def greet(name, greeting): print(f"{greeting}, {name}!")greet("Alice", "Hello") keyword arguments (키워드 인자)함수를 호출할 때 인자 이름을 명시하여 값을 전달하는 방식으로 name=value 형태로 사용한다.인자 순서를 바꾸더라도 문제가 발생하지 않는다.def greet(name, greeting="hello"): print(f"{greeting}, {name}!")greet(name="Alice", greeting="Hi")..
파이썬은 4가지의 built-in 데이터 구조를 가진다.자세한 내용은 Data Structures에서 확인할 수 있다.dictionary키와 값 쌍으로 구성된 가변(mutable) 데이터들의 집합이다.중괄호 { }를 사용해서 정의한다.키는 유일해야하며 키를 통해 값에 접근할 수 있다.mutable 하기 때문에 키와 값을 추가, 변경, 삭제할 수 있다.3.7부터 순서가 보장된다. my_dic = {'name': 'Alice', 'age':30}my_dic['age'] = 28 # 값을 수정한다.my_dic['job'] = 'Engineer' # 요소 추가한다.my_dic.pop('name') # 요소 삭제del my_dic['age'] # 요소 삭제list순서가 있는 가변(mutable) 데이터들의 집합..
환경 Ubuntu 20.04.5 LTS 작성 기준 최신 릴리즈 버전은 5.5이며 Java 버전 8 이상을 요구한다. wget https://dlcdn.apache.org//jmeter/binaries/apache-jmeter-5.5.tgz tar -xzf apache-jmeter-5.5.tgz GUI 사용하기 //압축 푼 jmeter 디렉토리 기준으로 작성 cd bin ./jmeter //gui 실행 ./jmeter 로 gui 띄울 때 발생하는 로그 root@DESKTOP-RDMKSUN:~/apache-jmeter-5.5/bin# ./jmeter ================================================================================ Don't us..
[ Spring Study ] 스프링에 대해 전반적인 구조 및 흐름에 대해서 몰랐던 부분이 너무나 많다는 걸 깨닫게 되는 순간.. 한번쯤 어디선가 읽어봤던 내용들에 대해 개념을 제대로 알고자 스프링에 대해 처음부터 공부하게 되었다. 경보 속도로 공부해 보자!!! 서블릿과 서블릿 컨테이너에 대해 알아보기 이전에, 간단하게 웹서버와 웹애플리케이션 서버를 짚고 넘어가자. Web Server는 HTTP 기반으로 동작하는 서버로, 정적 리소스를 제공하며 대표적으로 Apache, Nginx 가 있다. Web Application Server는 HTTP 기반으로 동작하는 서버로, 정적 리소스를 포함하여 동적 리소스를 제공하며 대표적으로 Tomcat, Jetty 가 있다. 왜 서버에 대해서 이야기를 했냐면, 웹 애플리..
[ Spring Study ] 스프링에 대해 전반적인 구조 및 흐름에 대해서 몰랐던 부분이 너무나 많다는 걸 깨닫게 되는 순간.. 한번 쯤 어디선가 읽어봤던 내용들에 대해 개념을 제대로 알고자 스프링에 대해 처음부터 공부한다. 경보 속도로 공부해보자 ! ! ! . . 한번 쯤 DispatcherServlet 에 대해 들어 본 적이 있으며, 유명한 Spring Request 처리 방식에 대한 그림도 본 적이 있다. 하지만 여러 번 보고 듣는다 한들 전부 뇌리에 스쳐 지나갔다. 지금이라도 Spring 에서 사용자의 요청을 어떻게 처리하는지에 대해서 자세히 알아봐야 하지 않을까 ? . . DispatcherServlet 은 spring 기반 웹 애플리케이션의 Front Controller 역할을 한다. 🤚 F..
순환참조(Circular dependencis)는 객체 A가 객체 B를 의존하고 있을 때 객체 B가 객체 A를 의존하고 있을 때 발생한다. 즉, 객체끼리 서로 의존하고 있을 때 발생하는 것이다. 예로 A, B, C 객체가 있고 A 객체는 B를, B 객체는 C를 의존하고 있다고 가정해보자. * A -> B -> C 스프링 컨테이너는 A객체를 생성하려고 보니 B객체를 의존하고 있어 B객체를 생성하려고 하는데 B객체는 C객체를 의존하고 있어서 결국엔 C를 먼저 생성하고, B를 생성하고 A를 생성할 것이다. * C -> B -> A 하지만, 위 객체들이 서로 의존하고 있다고 하면 스프링은 어느 객체를 먼저 생성해야 하는지 결정하지 못한다! A 객체를 만들려고 보니까 B 객체를 의존하고 있네 ? 근데 B 객체가 ..
N + 1 문제에 대해서 알아보기 이전에 JPQL 부터 간단하게 알아보자JPQL(Java Persistence Query Language) 는 엔티티의 객체를 대상으로 검색하는 객체 지향 쿼리이다.EntityManager.find() 메소드를 사용하면 식별자로 엔티티 하나를 조회하여 객체 그래프 탐색을 사용하면서 연관된 엔티티를 찾을 수 있다.하지만 이것만으로는 복잡하거나 어려운 쿼리문을 사용하기에 힘들어진다.이를 해결하고자 만들어진 것이 바로 JPQL이다. (☞゚ヮ゚)☞ JPA 과 JPQL 관계JPQL을 사용하면 JPA는 해당 JPQL을 분석한 다음 적절한 SQL을 만들어서 데이터를 조회한다.조회된 결과값을 엔티티 객체를 생성해서 반환한다.예시)@Repositorypublic interface User..
컬렉션이란 오라클에서 다음과 같이 정의해 놓았다. A collection is an object that represents a group of objects 즉, 객체들의 집단을 대표하는 객체라고 한다. (객체를 모아둔 자료구조라고 생각하자) . 그럼 컬렉션 프레임워크란 무엇일까? 컬렉션을 표현하고 조작하기 위한 통합 아키텍쳐로, 다양한 데이터 구조 및 알고리즘을 구현하기 위한 인터페이스 및 클래스를 제공한다. 장점 Reduces programming effort 우리는 컬렉션의 디자인에 대해 걱정하기보다 프로그램에서 컬렉션을 잘 사용하는 방법에 대해 집중할 수 있다. Increases program speed and quality 데이터 구조 및 알고리즘의 고성능 구현을 제공한다. 더 많은 장점은 o..
과연 나는 Restful 한 API를 개발하고 있을까? 라는 생각으로부터 시작한다. 그래서 REST 에 대해 알아보기로 한다. . . . REST(Representational State Transfer) 월드 와이드 웹과 같은 분산 하이퍼미디어 시스템을 위한 소프트웨어 아키텍처의 한 형식이다. 자원을 정의하고 자원에 대한 주소를 지정하는 방법을 의미한다. URI 로 자원을 명시하고 HTTP Method 를 통해 자원에 대한 CRUD 기능을 적용한다. 구성 요소 Resource (자원) 표현 방법 : HTTP URI 서버에 있는 데이터로 예를 들어 데이터베이스에 user 라는 테이블이 있다고 해보자. 클라이언트가 사용자의 데이터를 가져오려면 URI 에 domain/user 와 같은 형태로 요청한다. Ve..
앞서 프록시에 대해서 알아보았다.프록시 객체는 지연로딩 시 사용한다고 했는데 지연 로딩은 무엇이고 또 다른 전략인 즉시 로딩이 무엇인지 한번 알아보자.member1이 team1에 소속해 있다고 가정해보자.Member member = em.find(Member.class, "member1");Team team = member.getTeam(); //객체 그래프 탐색System.out.println(team.getName()); //팀 엔티티 사용회원 엔티티를 조회할 때 연관된 팀 엔티티도 함께 데이터베이스에서 조회하는 것이 좋을까?아니면 회원 엔티티만 조회해 두고 팀 엔티티는 실제 사용하는 시점에 데이터베이스에서 조회하는 것이 좋을가?JPA는 개발자가 연관된 엔티티의 조회 시점을 선택할 수 있도록 다음 두..
- Total
- Today
- Yesterday
- Load Balancer
- 티스토리챌린지
- object
- Red-Black Tree
- Caching
- 다중화
- 추상클래스
- nginx
- 로드 밸런서
- HashSet
- 정적변수
- fail-safe
- nosql
- @conditional
- Spring
- syncronized
- 인스턴스변수
- fail-fast
- java
- Security
- Sticky Session
- 오블완
- AutoConfiguration
- HashMap
- spring boot
- 인터페이스
- 자동구성
- JPA
- Hash
- 고정 세션
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |