목록전체 글 (214)
열심히 끝까지

[ JPA(Java Persistence API) ] DAO가 변환되는 과정 1. JDBCUtil - connection 확보하고 close하는 것 다 진행 2. Mybatis 결합도가 낮고 응집도가 높아야 유지보수 용이 자바 객체 테이블 : 자동 매핑 : 자바 객체의 정보를 멤버변수의 형태로 저장 - 정보를 Row 형태로 저장 >> Row 정보를 멤버변수로 자동 매핑하는 것 ORM(Object Relation Mapping)들의 집합, 구현체 : 객체 관계 매핑하는 실구현체 : sql문을 자동 생성 >> sql 만들 필요 없음 : Mybatis는 DBMS 변경 시 XML을 따로 만들어야하는데, JPA는 DBMS에 맞게 SQL문을 자동 생성 자바객체 VO(DTO)를 엔티티, 영속성객체라고 부름 JPA E..
스프링 웹 MVC 프론트 컨트롤러(디스페쳐 서블릿) >> 쓰다보면 디스페쳐 서블릿에 대한 호출을 진행 중인 것을 확인 가능 > 프론트 컨트롤러 자동 지원 > MODEL -> VIEW > 서비스단에 대해 띄어볼 것 - 서비스단 : 하나의 서비스는 여러개의 DAO를 가질 수 있고 이렇게 여러 개의 DAO는 한 요청에 전부 수행되어야할 때가 있음 > N개의 수행되는 요청이 한꺼번에 처리되어야 함 >> 트랜젝션이랑도 엮어서 사용 가능 Service로 변환 작업 BoardService.java--------------- package com.ryo.springboot; import java.util.List; import org.springframework.beans.factory.annotation.Autowi..

- JDBCUtil : JDBC를 도와주는 클래스, 모듈 - JDBC : 드라이버 적재 : 연결 : sql문 쿼리 실행 : 연결 해제 => 반복적인 작업 ->> Spring에서 모듈화하여 제공 NewSpringStarter > jdbc 검색 api + driver 하나씩 선택해야하는데 > Oracle Driver는 현재 선택 하지 않음(오류 발생) JSP 이용 준비 끝!!! + JavaBuildPath에 ojdbc6.jar 추가 = new
- 포켓몬 빵 프로젝트 : Java : https://github.com/Rhoyoorim/PokemonGacha.git - 이마트 프로젝트 : Java : https://github.com/Rhoyoorim/EmartCrawling.git - 펫키지 프로젝트 : Jsp : https://github.com/Rhoyoorim/-JSP.git - 펫키지 프로젝트 : Spring : https://github.com/Rhoyoorim/SpringProject.git - 노션 주소(아인 유키) : https://www.notion.so/77820ab7315345619174ccbb32755b08
> 면접 때 답해볼 수 있는 사항 [Spring Boot] 기법 [Validator] >> 유효성 검사 : 사용자가 보낸 데이터(form)에 대한 유효성 검사 ex ) 로그인, 회원가입(form), url, 등... : 이 유효성 검사는 "두 단계"로 진행하는 것이 보편적임 1. 클라이언트(브라우저, 사용자) 측에서 검사 : JS로 검사 2. 서버 : 파라미터 값을 검증 => 회사마다 많이 다름 => 유지보수에 불리함 -> 스프링 부트에서는 Validator 인터페이스를 구현해 놓음 -> 개발자들이 보다 일관된 코드를 작성할 수 있게 됨 @Override public void validate(Object target, Errors errors) { // 유효성 검사 객체 } > 상대가 쓴 코드중에 인자로..

If, src 혹은 src/main/resources내부에 html 혹은 jsp를 생성할 수 없다면(생성파일이 없다면) >> Java and Web Developer Tool 설치 1. Help -> Eclipse Marketplace 2. Search 'Java and Web' 3. 다음 tool 설치 [boot 설정] - static : 정적 html 파일 생성 - src : 동적 jsp 파일 생성 ★ 포트넘버가 동일하기 때문에 한 프로젝트할 때마다 중단하고 새로 킬 것 ★ 패키징을 JAR로 하게 되면 별도의 컴파일을 필요로 하는 파일이 동작하지 않게 됨 >> 그래서 WAR로 바꿔서 진행 : 내장 톰캣을 진행시켜야 하기 때문에 WAR로 해야 함 >> Spring Web을 선택하게 되면 build.gr..

[의존 주입] > 어떤 객체 A가 뭔가 메서드를 수행할 때, b.hello() c.hello() 만들어야 함 1) new를 직접 수행해서 바로 사용(== 개발자가 신경써야 함) >> "강한 결합"이 되어 있다 라고 표현 2) 미리 만들어진 객체를 할당받아서 사용 가능 => DI : 객체를 생성해주고 라이프사이클(scope)를 관리하고 필요로 하는 곳에 의존을 주입해주는 친구를 == 컨테이너 : IoC(Inversion Of Container) : IoC를 제공하는 것이 Spring >> "약한 결합"이 되어 있다 라고 표현 >>> 유지보수가 용이하려면? == 낮은 결합도, 높은 응집도 >> 예시 package test; class Member{ String name; public Member() { //..

[스프링 부트] SpringBoot >> 스프링 구조를 모르더라도 SpringBoot만 알면 취업이 되는 경우도 있음 빈(Bean) 설정 XML, @(부트 방식인 어노테이션 사용) >> XML의 경우 Spring 에서 >> @은 SpringBoot에서 사용 >> @을 사용하는 이유는? : 빈 등록을 위한 설정파일(.xml)이 불필요해지므로 자바 코드만 보고서도 전체 내용 파악 가능 > xml대신 @을 사용하면 자바코드만 분석해도 사용 가능하기 때문입니다. - '라이브러리 관리' > pom.xml xxx -> 그레이들(Gradle) O > maven 쓸 수도 있는데 Gradle로 사용할 예정 >> Gradle 사용 시 xml 대신 간단한 설정파일을 사용할 수 있게 됨 - 외부 WAS(웹 서버) 없이 내장된..