본문 바로가기

전체 글45

1년차 웹 개발자 이제 막 1년을 넘긴 1년차 웹 개발자입니다. 지금까지를 뒤돌아보며, 생각을 정리하기 위하여 글을 작성합니다.웹 개발자가 되기까지웹 개발을 시작한기 전에 반년 정도 반도체 분야에서 소프트웨어 개발을 했습니다.왜? 핑계아닌 핑계를 대보자면.. 보안 분야에 올인한 친구들이랑 함께하다보니 4학기 동안 모든 프로젝트의 9할을 개발했고, 웹 개발 쿼리큘럼에 벗어난 수업에서도 다수 개발 했고, 하다보니 일단 개발은 많이 한 것 같은데 내가 무슨 개발을 하는지 모르는 개발자가 되어있었습니다. 후회가 많이 남는 시기이기도 합니다. 조금 더 빨리 내가 하고 싶은 개발이 뭔지 알았으면 좋았을껄이라고 가끔 생각합니다. 아무튼 결국 내가 무슨 개발을 하는지도 모르는 개발자로 반년을 개발하다가 깨달음을 얻고, 운좋게 알고리즘을.. 2016. 11. 17.
Spring Boot로 TEAMUP BOT 만들기 - (2) Spring Boot로 TEAMUP BOT 만들기 - (2) 이전 포스팅에서 기본적인 봇의 뼈대를 완성했다면, 이번 포스팅에서는 보다 체계적인 구조와 기능을 완성하기 위해 스프링에서 제공해주는 아래 기능들을 활용해보려고 합니다!ReflectionMVC의 Controller와 같이 봇에서 구현한 명령어의 Controller를 만들어 봅니다.AOP구현된 명령어에 권한 설정을 해봅니다.Scheduling스케줄링을 활용하여 기능을 구현합니다.ReflectionReflection이란 객체를 통해 클래스의 정보를 분석해 내는 프로그램 기법을 말합니다. 스프링이 아닌 자바의 특징으로 실행중인 자바프로그램 내부를 검사하고 내부의 속성을 수정할 수 있습니다. Spring Container의 BeanFactory가 어플리.. 2016. 10. 17.
Spring Boot로 TEAMUP BOT 만들기 - (1) Spring Boot로 TEAMUP BOT 만들기 - (1) 2016년 연초 줌인터넷에서는 2016년 전략이 발표되었습니다. 그 중 눈을 의심하게 만드는 목표가 있었으니, 그것이 바로 잉여력 확보!? 이런 의미는 아니고, 더 높은 도약을 위해 개개인의 잉여 시간을 확보하여 업무를 더 효율적으로 하자는 의도! 그렇게 확보된 잉여력으로 무엇을 할까 고민하여 사내에서 사용하는 메신저 팀업의 봇을 만들게 되었습니다.팀업이란?이스트소프트의 기업용 메신저 팀업(TeamUP)은사내 메신저프로젝트별 그룹피드(게시판)문서 등 자료 중앙관리대용량 파일 전송등 다양한 업무 도구를 제공해 빠른 커뮤니케이션(소통)을 통한 업무 효율을 향상시켜주는 기업용 통합 커뮤니케이션 플랫폼입니다.자세한 내용은 팀업 소개 페이지로!활용 예시.. 2016. 10. 17.
Hibernate - setResultTransformer 주의 (조인 테이블 row count 구하기) 주어진 상황은 1:N(nullable) 관계의 A와 B란 두 테이블을 조인하여 특정 조건을 만족하는 A의 row의 수를 구하는 것 입니다. 특정 조건은 A의 조건일 수도 있고 B의 조건일 수도 있습니다. 이런 경우 A 주체의 왼쪽 외부 조인을 사용하게 됩니다. B 테이블과 관계를 맺지 않은 A의 레코드에서도 조건을 만족할 수 있기 때문입니다. 이 쿼리는 중복된 A의 레코드를 생기게 합니다. 그래서 중복을 제거하여야 합니다! 중복을 제거하는 방법으로 많이 사용되는 Hiberante 코드는 setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY)입니다. Projection으로 인한 요소버림없이 전체 데이터를 쉽게 가지고 올 수 있기 때문입니다. 그러.. 2016. 10. 5.