일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 안드로이드
- 스프링 부트
- 웹
- BCI
- Spring Boot
- 파이썬3
- 웹 개발
- db
- bytecode
- 디자인 패턴
- 자바
- 스프링
- ORM
- HTTP
- mysql
- java
- 데이터베이스
- django
- Python
- node.js
- Spring
- 자료구조
- JPA
- python3
- 개발
- rabbitmq
- 스프링부트
- 장고
- 보안
- 파이썬
- Today
- Total
목록개발 (99)
semtax의 개발 일지
스터디때 발표한 내용입니다. 공유합니다.
개인 프로젝트를 수행하면서, 위치정보(위도, 경도) 가 포함된 데이터를 빠르게 검색해야 할 일이 있어서 정리한 내용을 올려봅니다. 참고바랍니다.
예전에 회사 솔루션 성능개선 위해 리서치 했던 내용을 발표했던 PPT입니다. 도움이 될것 같아서 공유합니다.
Hexagonal Architecture 개요 이번 포스팅 에서는, 육각형 아키텍처(Hexagonal Architecture) 에 대해서 알아보고 간단한 예제를 통해 실제로 어떻게 육각형 아키텍처를 적용 하는지에 대해서도 알아보도록 하겠습니다. 계층화 없는 코드 = 스파게티 먼저 육각형 아키텍처를 설명하기 전에, 제가 첫 프로젝트를 진행했을때의 이야기를 해보겠습니다. 제가 모 기관에서 안드로이드 APK 보안취약점 분석을 수행해주는 서비스를 진행했을때, 저는 모듈화나 아키텍처에 대한 개념이 거의 없었습니다. 그래서 저는 입력값 검증 로직, 실제 비즈니스 로직, 데이터베이스 저장 로직 들을 전부 컨트롤러에 해당하는 메소드에 몰아넣어서 작성 하였습니다. 사실 맨 처음에 개발을 할때는 코드가 몇 줄 되지 않아서..
개요 이번 포스팅에서는 Amazon RDS 에서 발생했던 문제상황 및 주의점 대해서 포스팅을 하려고 한다. 문제 상황 먼저 대규모의 임시 데이터가 들어있는 xxxx_yyyy_table을 mysql client로 접속해서 DROP 명령어로 삭제하였습니다. DROP TABLE xxxx_yyyy_table; 하지만 삭제하던 도중에 에러가 나서 세션이 끊어졌습니다. 일단, 다시 접속해서 보니 테이블이 삭제된거 같아서 해당 테이블을 다시 생성을 하려고 했으나 아래와 같은 에러가 나면서 테이블 생성이 실패하였습니다. tablespace name `xxxx_yyyy_table` is exists. 시도한 삽질들 먼저 아래와 같이 단순하게 테이블스페이스(Tablespace)를 삭제 하려고 시도하였습니다. D..
개요 이번 포스팅에서는 JPA에서 @GeneratedValue 를 사용할때 주의할 점에 대해서 설명하도록 하겠다. 특히, 이번시간에는 주의할 점 중에서도 Batch Insert와 관련된 내용을 다루려고 한다. @GeneratedValue 값 생성 전략 @GenerateValue 는 일반적으로, PRIMARY 키의 기본값을 자동으로 생성할때 사용한다. 대략적으로, 아래와 같은 생성전략이 존재한다. 생성 전략 설명 GenerationType.IDENTITY 데이터베이스에 키 생성방법을 위임 GenerationType.AUTO 각 데이터베이스 방언에 따라 자동으로 지정(기본 값) GenerationType.TABLE GenerationType.SEQUENCE 데이터베이스의 시퀸스를 이..
개요 이번 포스팅에서는 특정 데이터베이스에서 작성한 DDL(CREATE TABLE 이나 ADD INDEX) 문 들을 다른 데이터베이스의 DDL로 자동으로 변환해주는 사이트에 대해서 다루려고 한다. 사이트 사용법 먼저 아래 사이트에 방문을 해주자 http://www.sqlines.com/online 그리고 왼쪽에 DDL 문들을 입력하고, 사이트에 있는 Source 와 Target을 지정해주면 자동으로 변환이 된다. 지원 DB 종류도 PostgreSQL, MySQL, MSSQL, Oracle 등등 다양하다.
개요 이번 포스팅에서는 톰캣 에서 JSESSIONID를 어떤 방식으로 만드는지에 대해서 포스팅 해보겠습니다. 왜 하필 톰캣인가? 사실 자바 서블릿은 완전한 구현체가 아닌 일종의 표준 내지 가이드 라인입니다. 즉, 껍데기만 존재하고 실제로는 서블릿 컨테이너를 구현하는 각 컨테이너 구현체 마다 실제적인 구현 방법은 전부 다릅니다. 따라서, JSESSIONID 를 만드는 방식도 각 서블릿 컨테이너 구현체 마다 다릅니다. 그리고, 다른 서블릿 컨테이너 구현체도 많지만.. 그래도 가장 유명(?) 하고 가장 오래된 서블릿 컨테이너 구현체가 톰캣이라, 톰캣을 고르게 되었습니다. 그럼 JSESSIONID는 뭐하는데 쓰는 것일까? 먼저, JSESSIONID가 무엇인지 알..