전체 글 33

항해플러스 백엔드 코스 1주차 회고

1. 문제1. TDD 작성법2. 동시성 이슈 제어2. 시도1. TDD 학습 - 사전 스터디 때 활용한 도서와 노션에 올라온 기초 학습자료2. 단순 기능부터 쪼개서 구현하기. 작은 것부터 차근차근 구현하려고 했다. 3. 동시성 관련 아티클 훑어보기3. 해결멘토링 청강 및 공개 QnA, 아고라 등에서 많은 도움과 원하는 결과물을 찾을 때까지 구글링했다.4. 알게된 것테스트코드의 중요성, 동시성 제어5. 지난 목표 회고2주차가 끝나가는 시점에서 1주차 회고를 작성하는 게으름을 피웠다. 발제를 듣고 과제를 수행하고 모르는 부분은 따로 공부했던 과정이 설레기도 했지만 생각보다 고민해야할 부분이 많았고 연차에 비해 실력과 지식이 부족하다는것을 깨닫고 씁쓸했다.6. 다음 목표 설정단위 테스트 작성, 과제 진행을 위한..

0. 항해 플러스를 시작하는 마음

1. 지금까지의 회고개발자로 커리어를 전환한지 3년차가 되었다.처음 개발공부를 시작했을 때의 지식과 작성했던 코드를 지금과 비교하자면 분명한 성장이 있다.하지만 거기까지이다. 다음 단계로 올라가야 할 시점이라고 느꼈지만 어떻게 공부를 해야할지, 어떤걸 시작해야할지 도저히 감이 안왔다.기본기가 부족하고 코드만 작성하는 코더가 아닌 진짜 생각하고 고민하는 개발자가 되고싶다.2. 항해 플러스 참여 계기위와 같은 이유로 실력향상 및 이직을 목표로 계획을 짜던 도중 이건 나혼자 잘못된 공부를 하기보다는 같은 입장과 마음을 가진 사람들하고 같이 하면 어떨까 하고 생각하던 중 전에 광고로 보았던 항해플러스가 생각났다.처음 광고를 봣을 땐 4기 모집 광고였던것 같은데 '오 주니어 개발자를 위한 부트캠프?' 흥미로웠다...

[Java] no sapjco3 in java.library.path 이슈

자바에서 SAP에 연결하여 데이터를 조회하는 라이브러리인데, api 테스트 중 이러한 에러가 발생했다. no sapjco3 in java.library.path JVM이 해당하는 .so파일 경로를 찾지 못해서 발생하는 에러이다. 즉, 내가 추가하지 않은것. 우선 SAP Connector로 정보를 확인해보면 notfound로 찾을 수 없다. 해당 파일을 api/lib에 넣고 서버 재시작을 해보았다. 제대로 된다!

[Linux] CentOS 로그인 시 bash-4.2$ 해결하기

키보드 잘못 놀려서 홈 디렉토리 설정이 뭔가 잘못 됐다. 그 결과... 아니 이게 뭔데요ㅠㅠ 찾아보니 홈 디렉토리에 설정 파일이 잘못돼서 나오는 건데 해결 방법은 홈 디렉토리의 /etc/skel/ 에 있는 설정파일들을 복사해와서 권한설정 해주면 된다. cp -rp /etc/skel/.b* /home/[사용자계정] chown -R [사용자계정].[사용자계정] /home/[사용자계정] 명령어 입력하고 다시 접속해보면 오 다시 잘 나온다!😮😚

[SVN] 커밋 후 파일에 빨간색 화살표

며칠 회사에서 SVN으로 고생을 좀 하다가 이제 정상적인 파일 관리가 이뤄졌다. 그 중 처음 보는 이슈가 있어서 정리하려고 한다. 내가 겪은건 이클립스에서 commit을 하면 파일과 폴더에 빨간색 화살표가 잔뜩 표시됐다.. 이는 svn 캐시를 먹고 있어서 나타나는 현상이다. 이를 해결해주지 않으면 다음 커밋시 롤백이 일어나지 않는다. 간단하게 이클립스를 재 실행해서 캐시를 삭제해주는 방법도 있고, 또 다른 방법으로는 해당 파일(폴더) 마우스 우클릭 → Team → Clean up 이제 다시 원래 알던 노란 깡통으로 돌아왔다. 짠.

[Javascript] 웹 페이지 새로고침, 뒤로가기 및 더블 클릭 막기

회사 일로 간단한 웹 설문조사 폼을 개발한적 있다. 이 때 난감했던게 버튼을 연속클릭하거나 페이지를 뒤로 이동했을 시 기존 전송 데이터가 남아있어 DB에 중복으로 쌓였다. 이를 해결하기 위해 이전 페이지로 이동 및 버튼 더블 클릭을 막는 코드를 작성했다. 새로 고침 막기 // Ctrl + Key 형태의 조합키를 사용할 수 있는 코드 function doNotReload(){ // keyCode = 78 : n, 82 : r, 116 : f5, if( (event.ctrlKey == true && (event.keyCode == 78 || event.keyCode == 82)) || (event.keyCode == 116) ) { event.keyCode = 0; event.cancelBubble = tr..

[JAVA] AES128로 암복호화 코드 작성하기

개발을 할 때보면 파라미터를 숨겨야 할 때가 있다. 이때 유용하게 사용한 Base64와 AES128가 있다. AES128 암복호화 코드 public class Aes128 { private static final Charset ENCODING_TYPE = StandardCharsets.UTF_8; private static final String INSTANCE_TYPE = "AES/ECB/PKCS5Padding"; private SecretKeySpec secretKeySpec; private Cipher cipher; public Aes128(final String key) { try { byte[] keyBytes = key.getBytes(ENCODING_TYPE); secretKeySpec = ..

[Tomcat] 이클립스 비정상 종료 후 톰캣 서버 충돌 해결하기

개발 도중 넘어오는 데이터를 무심코 콘솔로 출력하려다가 이클립스가 먹통이됐다. 생각없이 로그찍어본 결과^^.. 응답없는 이클립스를 강제 종료 후 다시 시작해 서버를 돌리는데 역시나 충돌했다. 음... 8005 포트랑 8080 포트가 충돌해서 실행할 수 없다고? 알겠어. 2년 전이었다면 해결할 줄 몰라서 윈도우를 재부팅했겠지만, 취업하고 1년이 지난 오늘 제법 컴퓨터 좀 쓸 즐 알게 됐다 이말이다. 명령프롬프트. cmd 창을 열어서 아래와 같이 명령어를 입력한다. netstat -ao 이렇게 하면 굉장히 뭔가 많은 라인들이 줄줄이 뜨는데 내가 확인하고 싶은건 현재 내가 사용하고 있는 로컬서버 주소! 서버 포트는 아까 에러창에서도 보여줬지만, 이클립스 Servers에서 톰캣 서버 더블클릭 후 확인 할 수 있..

[SpringBoot] Annotation

Spring Boot의 여러가지 Annotations Annotation 의미 @SpringBootApplication Spring boot application으로 설정 @Controller View를 제공하는 controller로 설정 @RestController REST API를 제공하는 controller로 설정 @RequestMapping URL 주소를 매핑 @GetMapping Http Get Method URL 주소 매핑 @PostMapping Http Post Method URL 주소 매핑 @PutMapping Http Put Method URL 주소 매핑 @DeleteMapping Http Delete Method URL 주소 매핑 @RequestParam URL Query Paramet..

[Spring] Annotation

Spring Annotation 어노테이션은 자바 1.5버전 부터 지원. 스프링은 어노테이션을 이용한 빈과 관련된 정보를 설정할 수 있다. Spring Framework에서 annotation 사용하기. Spring Bean 등록 과정 CommonAnnotationBeanPostProcessor 클래스를 설정파일에 bean 객체로 등록한다. annotation 태그를 이용한다. @Autowired, @Required, @Resource, @PostConstructor, @PreDestroy 등의 annotation을 자동 처리해주는 bean post processor component Scan 태그를 이용한다. @Componenet, @Controller, @Service, @Repository 등의 a..