본문 바로가기

Tech/Web21

IntelliJ에서 스프링 프로젝트 생성 및 설정하기(Gradle, Tomcat, MyBatis, Oracle, Java Configuration) 개발 도구 및 환경 Windows 10 OS IntelliJ 2019.2.3 JDK 1.8 Tomcat 9.0.19 Gradle Oracle RDBMS MyBatis Java Configuration References [도서] 코드로 배우는 스프링 웹 프로젝트(개정판) - 구멍가게 코딩단 Goal Spring 기본설정, MyBatis연동, JSP 화면 띄우기 시작에 앞서 gradle을 이용한 라이브러리 빌드시 라이브러리가 충돌하는 문제와 잦은 오류 탓에 인텔리제이가 제공하는 Framework Support를 이용하지 않고 직접 의존성을 추가하는 방법임을 알려드립니다. 1. 프로젝트 생성 Gradle 프로젝트를 생성해줍니다. Additional Libraries로 Java와 Web을 선택합니다. Grou.. 2020. 3. 23.
면접 준비하며 공부하는 Spring 스프링을 사용하고 있지만 누군가 '스프링이 뭐야?' 라고 물어본다면, 과연 난 대답 할 수 있을까? 대답은 역시 No였다. 스프링을 '사용하는 법'은 알아도 스프링을 이해하고 있는 것은 아니였던 것 같다. 면접을 준비하며 스프링에 대해 생각하며 백지에 써내려간 '내가 이해한 스프링'을 먼저 적어본다. 스프링이 뭘까? 스프링은 framework이고, framework은 개발자들이 좀 더 쉽고 편리하게 애플리케이션을 개발할 수 있도록 미리 갖춰진 구조를 말한다. framework이 없었다면 개발자들은 처음부터 끝까지 직접 모든 구조를 만들어 내야 할 것이다. 즉 만들어진 프로그램의 성능은 개발자의 역량에 따라 극명히 갈리게 된다. framework은 결국 그런 개발자들의 실력의 간극을 메꿔주는 장치라고도 볼.. 2020. 3. 11.
컨테이너가 Http Request를 다루는 방법. 동작 순서 컨테이너가 Http Request를 다루는 방법. 동작 순서 1. 사용자가 브라우저 주소창에 URL을 입력한다. (=HTTP request를 보낸다) 2. 컨테이너는 - 두개의 서블릿 객체를 만들고.(HttpServletRequest, HttpServletResponse) - URL을 분석하여 어떤 서블릿에 대한 요청인지 찾아낸다.(이때 web.xml를 참조한다.) - 해당 서블릿의 스레드를 생성하고 2.에서 생성한 두 객체를 매개변수로 넘긴다. - 해당 서블릿의 service() 메서드를 호출한다. 3. service()메서드는 request의 method(GET/POST...)에 따라 doGet(), doPost()의 호출을 결정한다. 4. 해당 메서드는 동적인 페이지를 생성한 후, 이를 HttpSe.. 2020. 3. 4.
Spring framework이 없었다면? https://ellune.tistory.com/30 Back-end & Framework... Back-end.. Server side... 나의 시작은 Front 개발자였고 엄밀히 말하면 안드로이드 개발자를 지향 하였다. 하지만 세상은 그렇게 녹녹치 않았다. 첫회사가 스타트업 이였고 서버 개발자가 필요 한 경우가 다 많.. ellune.tistory.com 2020. 1. 20.
JPQL과 QueryDSL https://noobnim.tistory.com/49 JPQL 이란? (querydsl) ■ JPQL 이란? JPQL에 대해 설명하기 전에 JPA는 기본적인 SQL을 처리해주기 때문에 SQL문을 직접 사용할 필요가 없었다. 하지만 JPA는 하나의 테이블을 대상으로 했을때만 가능한 이야기이며, 특정 데이터를 가져.. noobnim.tistory.com 2019. 12. 1.
ORM과 JPA domian 아래 dto,vo로 만들어줬던것들 -> Entity Class. repositories > 내부적으로 AOP동작 -> interface 하나만 선언해주면 crud, 페이징 모두 끝남 - ORM(Object Relational Mapping) : 객체와 DB테이블이 매핑을 이루는 것.(테이블을 객체로서 다룰 수 있게 함) 1) ORM을 이용하면 SQL Query가 아닌 메서드로 데이터를 조작할 수 있다.(ex. user테이블과 매핑된 객체를 user라고 할때, user.findAll()메서드로 select*from user를 동작시킬 수 있음) 2) 쿼리를 직접 작성하지 않고 메서드로 핸들하다보니 ORM을 사용하면 생산성이 높아지지만, 쿼리가 복잡해지만 ORM으로 표현하는데 한계가 있고 성능이.. 2019. 11. 25.