여기서 설명은 spring framework에서 maven archeytype 프로젝트를 만들었을 때 property를 읽는 방법에 대해 설명한다. 1 resource 폴더가 없어서 추가 해야한다. maven 프로젝틀 만들면 resource 폴더가 없다. 그래서 src/main/ 에 resource 폴더를 만들어야 한다. 만들고 나면 ide에서 Java build path에 등록하면 컴파일러가 알 수 있게 된다. . *.java 파일처럼 컴파일 대상이 되는 소스파일이 아닌 파일들을 리소스 디렉토리에 저장하여 관리 2. @Configuration 설정 클래스에서 propertiesFactoryBean 등록 설정에서 @bean 메소드로 등록하여 property 파일에 접근할 수 있다. 3. @Value 어노..
회사 코드를 봤을 때 'static final' 형태로 한쌍으로 자주 사용되고 있는 경우가 많았다. 특히 상수들을 정의해둔 클래스에서 많이 보였다. 있는 그대로 보자면 인스턴스 생성 전에 immutable 상수를 할당하여 다른 객체가 만들어질 때 사용되었다. 이 참에 전체적으로 정리를 하고자 한다. static(정적)이란 static이란 고정된 의미로 static이 붙은 클래스 멤버는 해당 class에 고정됨을 의미 class에 고정된다는 것은 프로그램이 실행되고 메모리에 적재될 때 class와 같이 메모리에 적재된다. 따라서 class로 인스턴스를 생성하기 전부터 static 멤버는 사용가능하다. static 멤버가 할당되는 메모리는 static area 다. 모든 객체가 공유할 수 있다. 로딩되면서부..
개발한 것을 테스트 중 다음과 같은 에러가 떴다. Caused by: java.lang.IllegalStateException: Ambiguous mapping 빌드 중 에러가 나고 mapping 시 문제가 있다고 한 것을 보니 Handler Mapping 에 등록 중 문제가 생긴 것 같다. 그래서 controller를 다시 보니 중복된 api가 있었다. Spring이 구동시 등록할 때 똑같은 url api가 있으니 애매했나보다
1. 이클립스를 실행하고, 이클립스의 메뉴 중 File - New - Project를 선택합니다. Maven프로젝트가 기존 워크스페이스 경로에 생성되도록 합니다. Maven에 대해 더 알아보기 위해 웹 어플리케이션 프로젝트를 생성하고, 실행해보도록 하겠습니다. 2. 아키타입(Archetype)을 선택합니다. 아키타입이란 일종의 프로젝트 템플릿(Template)이라고 말할 수 있습니다. 어떤 아키타입을 선택했느냐에 따라서 자동으로, 여러 가지 파일들을 생성하거나 라이브러리를 셋팅해주거나 등의 일을 해줍니다. Maven을 이용하여 웹 어플리케이션을 개발하기 위해서 apache의 maven-archetype-webapp를 선택한 후 Next 버튼을 클릭합니다. 3. package 이름 설정 package이름은..
필요하지 않은 디비 값까지 조회되는 운영이슈가 있었다. db 쿼리문 조회 시 검색조건에서 예외케이스 있음을 알게된 경험이 있다. 로그부터해서 api 까지 거꾸로 따라가다가 like 절에서 escape 처리가 필요했던 부분이다. 언더바( _ )가 포함된 이름을 조회 시 엉뚱한 결과가 조회될 수 있다. WITH temp AS ( SELECT 'STEVEN_KING' AS ename FROM dual UNION ALL SELECT 'StevenMarkle' AS ename FROM dual ) SELECT * FROM temp WHERE ename LIKE '%_%' 언더바(_)는 LIKE에서 사용하는 패턴 문자이기 때문에 해당 문자를 직접 조회할 수가 없다. 언더바(_)가 존재하는 이름만 검색하였지만 결과는..
맥에서는 homebrew를 이용하면 mysql 설치는 간단하다. homebrew를 설치해두면 다른 프로그램을 설치할 때도 편리하게 설치하고 삭제할 수 있어서 좋다. 1. mysql 설치 $brew install mysql 2. 보안 설정 root 사용자 비번, 원격접속, test 데이터베이스 등 보안관련 설정한다. $mysql_secure_installation 3. mysql 기동 $brew services start mysql 4. mysql 접속 root 권한자로 접속하고 password는 위 2번에서 설정한 값으로 엔터치면 된다. $mysql -u root -p 5. mysql 종료 $brew services stop mysql * mysql 삭제 방법 brew services stop mysql..
path란 운영체제가 사용하는 환경변수 (environment variable) 실행 가능한 파일 또는 자바 바이트 클래스 경로 리눅스, 맥 등 터미널에서 set CLASS_PATH=... 로 설정 가능 echo $'환경변수 이름' 으로 설정된 환경변수 값 확인 가능 echo $CLASS_PATH classpath란 classpath 또한 환경변수로 java compiler가 사용 runtime시 compiler가 클래스파일을 찾는 경로 (정확히는 class loader) JVM이 프로그램을 실행할 때 class를 찾기 위해 사용 terminal에서 javac로 실행 시 디폴트는 현재 경로 참고 OS의 환경변수로 설정한 CLASS_PATH를 참고할 수 있다. (bash_profile, profile,,)..
- Total
- Today
- Yesterday
- 라면공장
- 17825
- 카카오2020 공채
- 정수 내림차순으로 배치하기
- 괄호 변환
- DP
- 후보키
- 투포인터
- 티스토리챌린지
- 17779
- 124 나라의 숫자
- 오블완
- 백준
- programmers
- 2018 카카오 공채
- 자바
- 짝지어 제거하기
- 단체사진 찍기
- 큰 수 만들기
- java
- 찾아라 프로그래밍 마에스터
- 카카오 2020 공채
- 주사위 윷놀이
- 문자열을 정수로 바꾸기
- 가장 큰 정사각형 찾기
- 게리맨더링 2
- 3954
- Brainf**k 인터프리터
- 2019 카카오 공채
- 프로그래머스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |