WEB

    페이지 로딩 순서

    HTML은 위에서부터 코드가 실행되기 때문에 head가 실행되고 body가 실행된다. js의 용량이 크면 클수록 body부분의 실행이 늦어지기 때문에 body하단에 두는게 좋다 css는 화면을 그리는 역할이므로 head에서 불러오는 것이 좋다 + 부트스트랩인 경우 제이쿼리에 의존 하고 있기 때문에 제이쿼리를 먼저 호출하는게 되도록 작성해야 한다. + Scriptlet,jstl,el은 서버단에서 실행 되며 브라우저에서 실행되는 Javascript에서는 변수를 직접 주고받을 수 없다. + JAVA>JSTL>HTML>Javscript + jsp외부로 js를 빼면 작동안할 겁니다. 서버는 jsp를 처리하지 외부에서 임포트되는 js를 처리하지는 않는다.

    실제로 실행된 쿼리의 형태

    JPA가 관계형데이터베이스에 맞게 SQL을 대신 생성하여 실행하기 때문에 실제로 실행된 쿼리의 형태가 궁금할 수 있다. application.properties를 만들어준 후 spring.jpa.show_sql = true 를 작성해준다. 짜란!

    Spring Data Jpa 적용하기 01.Entity클래스 , Repository

    bulid.gradle에 의존성 등록하기 Entity 클래스 Entity가 not null일 경우 Builder기반으로 생성되는 패턴으로 만들때 Assert.notNull(title, "title must not be null"); Assert를 이용해 객체를 안전하게 생성한다 Posts클래스로 Database를 접근하게 해줄 PostsRepository 인터페이스를 Entity클래스와 같은 위치에 만들어준다(*) JpaReopository 를 상속하면 기본적인 CRUD메소드가 자동으로 생성된다. 테스트 코드를 작성하여 확인하자!

    테스트 코드 작성하기

    @RunWith(SpringRunner.class) 테스트를 진행할 때 JUnit에 내장된 실행자 외 다른 실행자를 실행 스프링 부트 테스트 - JUnit사이에 연결자 역할을 함 @WebMvcTest Web에 집중할 수 있는 어노테이션, @Controller,@ControllerAdvice등 Controller에서 이용 가능한 어노테이션을 사용할 수 있다. @Autowired 빈을 주입 MockMvc HTTP의 GET,POST등에 대한 웹API를 테스트할 때 사용 외부의 결과에 크게 의존할때, 데이터베이스로부터 특정 값을 받을 때, 특정 시각에만 실행되는 경우 등 perform() HTTP GET,POST 요청, 체이닝 지원 andExpect() 을 이용해서 다양하게 검증할 수 있다. assertThat()

    스프링 부트 정리 (200405~)

    Controller @SpringBootApplication 스프링부트의 자동 설정, 스프링 Bean 읽기와 생성을 모두 자동으로 설정함 해당 class에 있는 위치부터 설정을 읽어 가기 때문에 항상 프로젝트의 최상단에 위치해야 함. SpringBootApplication.run() 스프링부트의 내장 was이다. 외장 was를 사용해도 되지만 내장 was 사용 권고 (언제 어디서나 같은 환경에서 스프링 부트를 배포) 성능상 이슈 : 톰캣 역시 서블릿으로 이루어진 자바 애플리케이션이다. 똑같은 코드를 사용하고 있으므로 크게 고려하지 않아도 된다. @RestController 컨트롤러를 JSON을 반환하는 컨트롤러로 만들어 줌 예전에는 @ResposeBody를 각 메소드마다 선언 했던것을 한번에 사용할 수 ..

    var, const, let

    JavaScript에서의 변수 선언 방식 중 var, const, let의 차이점 먼저 Hoisting과 Scope의 개념이 필요하다. Hoisting Hoist란 변수의 정의가 범위에 따라 선언, 초기화, 할당 분리되는 것을 의미 (전역변수와 지역변수) Scope - 전역 스코프, 지역 스코프 1. var 변수 선언의 경우 유동적으로 변경될 수 있다. function scope 2. const 변수에 재선언, 재할당 불가 block scope 지역 스코프 3. let 변수에 재할당 가능 block scope ES6에서는 var보다는 const와 let을 사용해서 정확한 변수 사용을 권한다.

    Spring scheduler(스프링 스케쥴러)

    메인페이지에 가입한 회원의 수를 표시해주고 싶은데 회원이 가입했을때 바로 표시되는게 아니라 매일 시간을 정해두고 자동으로 업데이트 하게 하고싶었다. servlet-context에 xmlns:task="http://www.springframework.org/schema/task" http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd 추가 해주었고 context:component-scan base-package 에는 적용하는 경로 적어주면 되는데 com.min.app 으로 시작하는 패키지 모두를 선택했다 그다음 스케쥴러 사용할 class를 만들어주었다. public static i..

    이클립스 마켓 실행 안될때

    이클립스 Help - Install new software... - Work with : http://download.eclipse.org/mpc/photon Eclipse software repository | The Eclipse Foundation The Eclipse Foundation - home to a global community, the Eclipse IDE, Jakarta EE and over 360 open source projects, including runtimes, tools and frameworks. download.eclipse.org