Spring (57) 썸네일형 리스트형 AOP 핵심비즈니스에 붙일 어노테이션 사용해서 만들기 1. 컨트롤러에 있는 함수들에 @LogExecutionTime 어노테이션을 붙여준다. (핵심비지니스로직) 2. create annotation 해준다. 3.@LogExecutionTime 을 만들것이다. 4. 어노테이션 만들때 @Target 지정 , @Retention 붙이기 //어노테이션 정보 언제까지유지할것인가 5-1. 이제되는가? 아니다. 어노테이션은 주석이랑 같다 그냥 주석이다. 이제 이거를 읽어서 처리해줄 로직코드가 필요하다. 5-2 그것이 Aspect 이다. (porxy패턴기반으로 실행된다.) @Component //Bean으로 등록되어야 하기 떄문에. @Aspect //advice + pointcut이 있다. public class LogAspect{ /**Advice등록**/ Logger .. AOP란? (개념 + ProxyFactory 사용하여 설정) 스프링에서는 낮은 결합도, 높은 응집도가 필요하다. IOC는 낮은 결합도를 위한 것이라면, AOP는 높은 응집도를 위한 거이다. Spring 에는 triangle 이라는 3대 개념이 있다.IOC AOP PSA 세가지를 제공해주는 spring triangle이라는 개념이 있다. ====================================================================== WHAT? Aspect Oriented Programming //관점 지향 프로그래밍 공통된 기능과 공통되지않은 기능(비즈니스 로직) 을 구분하고, 공통된 기능은 비즈니스로직과 분리하여 밖에서 관리해준다. =========================================================.. httpclient cannot be resolved to a type _ httpclientbuilder cannot be.... 에러 sts에서 자동 import안될때 방법1 ) gradle 에 다음을 추가한다. dependencies { implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.springframework.boot:spring-boot-starter-actuator' implementation 'org.apache.httpcomponents:httpclient:4.5.7' implementation 'commons-collections:commons-collections' implementation 'org.springframework.boot:spring-boot-configuration-processor' providedRuntime 'org.sprin.. No converter for [class com.example.Model.ResponseNaverMovie] with preset Content-Type 'application/json;charset=UTF-8' 에러 No converter for [class com.example.Model.***model] with preset Content-Type 'application/json;charset=UTF-8' >[class com.example.Model.***model] 클래스에 @DATA 어노테이션붙여주기 // data어노테이션은 lombok검색 Spring Lazy Initialization >스프링은 애플리케이션이 실행될 때 모든 Bean들을 초기화한다. 애플리케이션 실행시 bean 초기화에 실패하는 경우는 바로 오류로 나오기에, 장애를 바로 캐치할 수 있다. >이런 장점이 있는 반면, 의존성이 많은 애플리케이션의 경우에는 ( Bean설정 등 할것이 많은 경우 ) 애플리케이션 실행시간이 늦어지게 될것이다. >이런 상황에, 애플리케이션에 필요한 Bean들을 미리 초기화하는것이 아닌, 필요로 할때 Bean객체를 생성하도록 하는것이 Lazy 이다. >빈을 만들때 @Bean @Lazy 를 붙여서 만들면 된다. >하지만 , @Lazy가 붙은 빈을 다른클래스에서 주입받는다면 , Lazy하지 않게 된다. 왜냐하면, 주입을 하는 시점에 @Lazy가 붙은 빈이 필요로 하게되고, lazy해야하는것이 이미 생.. jsp_ajax_json_practice (1) 1-1.Dynamic Web Project 로 프로젝트 생성 1-2. Bootstrap 을 다운받아 압축을 풀어 세개의 폴더를 WebContent폴더에 넣어준다. (JS, CSS, FONTS(얘는 없어서 일단 못넣음)) 1-3.Bootstrap 을 이용해서 viewport설정 container 에 검색,버튼 테이블 을 생성한다. 1-4.실행해본다. ======================= 2-1. mysql접속하여 데이터베이스 생성 2-2. 테이블 생성 2-3. 데이터 입력 ======================= 3-1 UserDAO 생성 (연결, 원하는 쿼리 만들기) - Connection - PreparedStatement - ResultSet 위의 세개를 만들어줘야 한다. 3-2 변수 만들기 .. Spring + Mybatis + MariaDB 연동하기 # pom.xml - 4가지에 대한 maven 등록 - mariaDB - JDBC - Jdcp (커넥션풀) - Mybatis / mybatis-spring commons-dbcp commons-dbcp 1.4 org.springframework spring-jdbc 4.1.4.RELEASE org.mybatis mybatis 3.2.8 org.mybatis mybatis-spring 1.2.2 org.mariadb.jdbc mariadb-java-client 2.3.0 cglib cglib 3.2.10 # mapper.xml - 함수이름과 sql쿼리문을 연동시켜준다. //아래 지정해줄 함수가 있는 인터페이스를 적용해준다. //나중에 selectOne("함수이름1")로 사용한다. SELECT FROM WE.. 싱글톤 패턴 What? 한개의 인스턴스만 생성되는 것이 좋을때 사용한다. -ex) 커넥션풀 ex) 요청이 하나 들어올때 하나의 객체가 생성되서 그 요청을 처리한다? => 100번이면 100개 생김 ==> 따라서 ===>요청한개할때 기존에 있던것 불러오는 방식을 만듬 ================================================================ ================================================================= How? - 생성자를 private으로 놓고, - 그객체의 인스턴스를 반환해주는 public getInstance 함수를 만든다. public class PrinterSingletone { private static Prin.. 이전 1 ··· 4 5 6 7 8 다음