목록분류 전체보기 (97)
wintertreey 님의 블로그
spring mvc 아키택쳐 ① 웹브라우저에게 정보요청을 받은 디스패쳐서블릿은 어느 컨트롤러에 해당 요청을 전송할지 결정 ② 디스패쳐 서블릿은 핸들러 매핑에 어느 컨트롤러를 사용할건지 물어봄. (URL로 링크)③ 결정된 컨트롤러는 해당요청을 수행하게 됨④ 해당요청을 처리한 컨트롤러는 디스패쳐서블릿에 결과를 보냄. 이 과정에서 ModelandView 가 생성된다. ⑤ ModelAndView는 실제 JSP정보를 갖고 있지 않기 때문에 ViewResolver가 실제 JSP이름으로 변환하여 해당 view를 검색함.⑥ 검색한 결과를 View에 전송⑦ View는 모든 과정에서 처리된 결과를 화면으로 표현함 ⑧ 마지막으로 디스패쳐서블릿이 웹브라우저에 최종결과를 출력. ++ 동료 HS님께서 의문을 가지셨던 Mode..
++ 환경설정 파일application.yml vs application.properties properties와 yml의 대표적인 차이는 내부 구조가 있다. properties의 경우엔 각 줄마다 key=value의 형태로 이루어져 있지만, yml의 경우엔 들여쓰기로 구분되는 계층 구조 및 key: value의 형태로 이루어져 있다. 스프링 부트가 돌아가는걸 이렇게도 확인해볼수 있다. 흐름파악하기. @어노테이션의 흐름을 파악하기 위한 실습이었다. 해당 소소파일은 sprweb5를 참고하면 된다. https://github.com/yoonah0327/spring_source GitHub - yoonah0327/spring_sourceContribute to yoonah0327/spring_sourc..
차례로 DB연동을 시도해보자. 우선 가장 전통적인 방법. 문제직급입력시, 직원목록과 인원수가 출력되게 하시오. 값을 입력받을 수 있도록 칸 생성및 get방식으로 넘겨준다. index.html 직급입력 : ListController.javapackage pack.controller;import java.util.ArrayList;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.GetMapping;impo..
Thymeleaf Layout Dialect를 이용하면 하나의 레이아웃을 여러 페이지에 똑같이 적용할 수 있다. 공통적으로 적용되는 레이아웃을 미리 만들어놓고 현재 작성 중인 페이지만 레이아웃을 끼워넣으면 된다.대표예시가 머릿글 바닥글이 있다. 파일의 흐름은 다음과 같다.index.html 타임리프연습. test5 하이퍼링크 >>> testcontroller.java로 이동@getmapping 작업. >>>show5.html로 이동.layout 링크 호출. header, footer.html을 다음의 위치에 만들어준다. layout1.html 머릿글 바닥글은 으로 처리해주었고, 본문은 로 설정해두었다. 머릿글, 바닥글용도. 고정. 정적. th:block은 타임리프에서 템플릿 ..
DB 연동방법 4 1. 클래스내에서 직접 sql문 기술2. 스프링이 지원하는 jdbcdao support 사용3. mybatis 프레임워크사용4. jpa 사용 요즘은 jpa를 가장 많이 사용하고, 가장 권장하는 추세라고 한다. 왜일까? 백엔드에서 데이터를 저장하고 조회하려면 데이터베이스를 활용해야 하는데, 백엔드에서 데이터베이스를 사용하는 프레임워크로 가장 많이 쓰이는 기술이 ‘Mybatis’와 ‘JPA' .Java 기반의 Spring 또는 Springboot에서 데이터베이스를 사용하려면 두 가지 기술 중 하나를 사용해야 하기 때문에 Java 백엔드 개발자는 ‘Mybatis’와 ‘JPA’를 반드시 알아야 합니다. 데이터베이스 접속을 편하게 사용하기 위해 SQL Mapper 기술과, ORM(Object ..
DB 연동방법 4가지1. 클래스내에서 직접 sql문 기술2. 스프링이 지원하는 jdbcdao support 사용3. mybatis 프레임워크사용4. jpa 사용 MyBatis란? MyBatis 프레임워크는 반복적인 JDBC 프로그래밍을 단순화하여, 불필요한 Boilerplate 코드를 제거하고, Java 소스코드에서 SQL 문을 분리하여 별도의 XML 파일로 저장하고, 이 둘을 서로 연결시켜주는 기능을 제공해준다. MyBatis의 특징Java 코드와 SQL 매핑MyBatis를 사용하면, MyBatis 내부에서 그러한 Boilerplate 코드가 구현되어 있고, MyBatis에서 Java 메소드와 SQL 간에 매핑을 시켜서 개발자는 Java 메소드 선언과 SQL 문만 만들면 MyBatis가 자동으로 그..
db연동방법41. 클래스내에서 직접 sql문 기술2. 스프링이 지원하는 jdbcdao support 사용3. mybatis 프레임워크사용4. jpa 사용앞에서 살펴본 DataBase 연동방법1은 Spring을 공부하기 전에도 시도했던 방법과 유사했다. 이번에는 Spring에서 제공하는 클래스를 사용하여 db연동을 해보고자한다. jdbcdaosupport란? JdbcDaoSupport 클래스는 Spring 프레임워크에서 제공하는 추상 클래스.데이터베이스와 상호 작용하는 DAO를 개발할 때 편리한 기능을 제공해준다.이 클래스는 JdbcTemplate을 사용하여 데이터베이스 작업을 처리하고, 템플릿 메소드 패턴을 활용하여 일반적인 데이터 액세스 작업을 구현해준다. JdbcDaoSupport 의 멤버메소드..
Spring에서 잘 쓰이는 db 연동방법은 하단처럼 4개. 차례로 하나씩 살펴보려 한다. db 연동방법41. 클래스내에서 직접 sql문 기술2. 스프링이 지원하는 jdbcdao support 사용3. mybatis 프레임워크사용4. jpa 사용 다이어그램 DB연동을 위해 pom.xml에 추가적으로 db관련 dependency들을 기입해줌. SangpumImpl.java에서 디비연동을 위해 클래스에서 디비연동을 해준다. 어노테이션부분을 보면 repository. db연동목적의 클래스임을 확인할 수 있다. @Repositorypublic class SangpumImpl implements SangpumInter { private Connection conn; private PreparedStatem..