전체 글
-
인생 첫 밀양 여행기타/여행 2020. 10. 31. 20:10
안녕하세요. 평생을 대구와 경산에 거주를 하면서, 기차 타고 30분 거리의 밀양을 처음 가본 여행기입니다. 사실 밀양을 가고 싶지는 않았습니다. 그냥 어디론가 떠나서 조용한 곳에서 산책도 하고, 햇빛도 쬐며 혼란스러운 마음을 잡고 싶은 생각뿐이었습니다. 주변에서 순천을 많이 추천했고, 어떻게 갈 것인지 검색을 해봤습니다. 저같은 뚜벅이게 교통편은 매우 중요합니다. '경산역 - 삼랑진역(환승) - 순천역' 이렇게 나옵니다. "아니 삼랑진이라는 곳은 어디야? 이런 곳이 있어?" 궁시렁대며 검색을 해보니 밀양이라는 지역의 한 기차역이었습니다. 이렇게 가까이 있는 지역였지만, 왠지 생경한 느낌이 들었습니다. 예전에 외할머니께서 간혹 가시고는 말씀해주시던 것만 기억에 남는, 어떤 전설 속의 도시 같은 느낌이었습니..
-
(Java)아주 간단한 스마트홈 시스템 구현개발 완료 2020. 10. 24. 16:39
1. 서론 컴퓨터공학과 복수전공 두 번째 학기입니다. 첫 학기에는 운영체제, 컴퓨터 구조와 같은 이론 중심의 과목을 듣느라 기대했던 실제 코드를 작성해보는 프로젝트를 해보지 못했습니다. 이번 학기에 자바 프로그래밍 수업을 통해서 처음으로 웹이 아닌 다른 것을 만들어 봤습니다. 또한 제가 만든 기준, 일정으로 편하게 개발하는 것이 아닌, 누군가 조건을 주고 그에 맞게 개발하는 것을 처음으로 해봤습니다. 물론 학점이라는 점수의 압박도 있었지만, 타인이 요구하는 결과물을 만든다는 것이 혼자서 개발을 하는 것과는 많은 차이가 있었습니다. 2. 사용된 기술 java 11 3. 코드 github.com/YeonCheolGit/SimpleSmartHome YeonCheolGit/SimpleSmartHome Contr..
-
서블릿이란?Spring Framework 2020. 9. 15. 17:49
1. 서론 안녕하세요. 오늘은 서블릿에 대해서 작성해보려고 합니다. 처음 JSP, 서블릿으로 간단한 웹 구성을 공부할 때는 서블릿에 대해서 깊게 공부하지 않았습니다. 하지만 이 서블릿이라는 것은 스프링 프레임워크를 사용해서 MVC 모델을 구성할 때도 나오게 되면서, 계속 괴롭히는데요. 즉 웹 백엔드 개발자로서 반드시 알아야 하는 것이라고 생각합니다. 그래서 오늘은 서블릿에 대해서 작성하려고 합니다. 하지만 이 글은 웹 서버가 어떻게 동작하는지, 서블릿 컨테이너가 무엇인지 설명하는 글은 아닙니다. 서블릿이라는 기술 자체에 대해서 집중해보려고 합니다. 웹 서버의 동작, 서블릿 컨테이너에 대해서 궁금하신 분은 아래의 글을 참고해주세요. [Java/Java 이론] - 웹 서버란? 2. Servlet? 일단 먼저..
-
[Java]2차원 배열이란?Java & Kotlin 2020. 9. 2. 20:39
1. 2차원 배열 int[] array = new int[2]; 위에서 보는 코드는 그냥 배열입니다. 2개의 값이 들어갈 수 있는 평범한 배열을 만들었는데요. int[][] array2 = new int[2][3]; 위의 코드를 봅니다. 뭔가 이상합니다. 괄호가 하나가 더 생겼습니다. 대체 어떻게 된 일일까요? 위의 그림을 봅니다. 총 6개의 값을 넣을 수 있는 공간이 생겼습니다. 2차원 배열입니다. 배열의 배열입니다. 즉 배열이 합쳐져서, 다시 배열을 이루는 것입니다. 정확히는 int 정수 3개를 넣을 수 있는, 배열 2개를 만드는 것 입니다. 즉 가로 1 = 배열 1개라고 생각하시면 됩니다. 좀 더 쉽게 생각을 해보자면, 엑셀처럼 순서대로 [2][3]을 가로축, 세로축이라고 생각하시면 됩니다. 가로(..
-
(Spring, MyBatis)첫 CRUD 게시판 만들어 본 개발 후기개발 완료 2020. 8. 29. 17:11
해당글은 첫 CRUD 게시판을 만들었었던 후기이며, 2021년 현재 기준으로 매우 허접합니다. REST API를 적용한 좀 더 세련된(?) 코드는 아래 깃허브 저장소를 참고해주세요. https://github.com/YeonCheolGit/springboot-restful-api-board 1. 서론 그동안 무식하게 이론만 공부하는 방법으로 공부를 했었습니다. 그러던 어느 날 경험 삼아 카카오 인턴을 지원이라도 해보자는 생각으로 지원서를 작성하던 중 "그동안 개발 혹은 프로젝트를 하던 중 어려웠던 점과 해결했다면 어떻게 해결했는지 작성하시오"라는 질문을 작성해야 했습니다. 저는 4학년이지만, 컴퓨터공학과 복수전공으로서 고작 1학기밖에 되지 않아 프로젝트나 스스로 개발을 해본 적이 없습니다. 학교에서는 운..
-
[Spring Framework] IoC container / ScopeSpring Framework 2020. 7. 27. 15:43
오늘은 스프링 프레임워크의 핵심인 IoC container에 대해서 공부하려고 합니다. 1. IoC container IoC container는 IoC, 즉 Inversion of Control(제어의 역전)을 가능하게 해주는 컨테이너 입니다. 이 컨테이너는 빈이 생성될 때 의존성을 주입하고, 빈들의 인스턴스화를 해주는 빈을 관리하는 컨테이너 입니다. 하지만 스프링 API를 보시면 IoC Container가 어떤 클래스나 인터페이스로 존재하는 것이 아닙니다. 즉 IoC를 가능하게 해주는 컨테이너라는 패턴 혹은 프로그래밍 기법이라고 생각하시면 됩니다. 그렇다면 실질적으로 스프링 프레임워크는 어떤 인터페이스나 클래스를 정의해서 빈들을 관리하고 있을까요? 2. BeanFactory interface 스프링 프..
-
웹 서버란?Spring Framework 2020. 7. 4. 17:50
1. 웹이 동작하는 방법 굉장히 귀여운 그림이 위에 있죠? 왠 졸라맨 같은 사람이 클릭을 하니, 사용하는 브라우저에서 Web Server로 HTTP Request(요청) 전송을 합니다. 이때 Web Server는 해당하는 HTTP Response(응답)를 다시 보내주는데요. 쉽게 이야기해서 브라우저와 대화를 하는 것입니다. 브라우저가 뭔가 요청했으니, Web Server는 대답을 하는 것입니다. 여기서 HTTP는 인터넷 환경에서 데이터를 주고받을 수 있는 통신 규약인데요. 이러한 통신 규약을 바탕으로 요청(Request), 응답(Response)을 통일된 형식으로 보내게 됩니다. 즉 여러분들이 인터넷에서 클릭을 하고 어떠한 동작을 한다는 것은, 서버에 정보를 요청하는 행위입니다. 그리고 서버는 여러분들이..