전체 글 83

윈도우10 스카이프(Skype) 삭제하기

별도로 설치한 스카이프는 프로그램 추가/삭제에서 삭제할 수 있지만 윈도우10 기본앱인 스카이프는 해당 방법으로는 삭제할 수 없습니다. 1. 작업표시줄 좌측 하단의 [시작버튼(윈도우로고)]를 누릅니다. 2. Windows PowerShell을 입력하여 검색한 후 우클릭하여 [관리자권한으로 실행]으로 실행합니다. 3. Windows PowerShell이 실행됩니다. 4. 창에 아래의 명령어를 입력하고 엔터를 누릅니다. 복사가 되지 않을 경우 다음 파일을 받아서 복사-붙여넣기 해주세요. Get-AppxPackage *skypeapp* | Remove-AppxPackage 5. 초기화됨 메세지가 출력되면 완료된겁니다.

IT Tip 2020.09.25

Spring Jpa - Query DSL + Gradle 6 설정

최근 Spring boot + jpa 로 프로젝트 진행하다 jpa 인터페이스 네이밍 방식의 단점을 느끼고 Query DSL을 도입하면서 정리한 글 기본 제공 @Query와 인터페이스 메서드 네이밍 방식은 한계가 있고 가독성도 안좋음 // 쿼리가 길어질수록 더러워짐 @Query(value="UPDATE Work W SET W.workGroup = :workGroup WHERE W.workSeq = :workSeq", nativeQuery = false) // 네이밍이 길어질수록 더러워짐 Page findByWorkGroup_WorkGroupNmContainingAndWorkNmContaining(String workGroupNm, String workNm, Pageable pageable); 1. Grad..

Spring 2020.09.21

Spring Jpa - Paging api 처리하기

JPA를 이용해서 Paging API를 처리해보자. JpaRepository는 PagingAndSortingRepository를 상속받고 있으므로 CurdRepository보다 하위 클래스인 JpaRepository를 상속받아 구현하자. public interface WorkGroupRepository extends JpaRepository { Page findByWorkGroupNmContaining(String workGroupNm, Pageable pageable); } 예제 @RestController @RequestMapping("/workgroup") @RequiredArgsConstructor public class WorkGroupController { @GetMapping public P..

Spring 2020.09.18

Amazon AWS Cloud Computing

클라우드 컴퓨팅 서비스 이용방식 IaaS(Infrastructure as a service) : 물리적 서버, 네트워크, 스토리지를 가상화하여 다수의 고객을 대상으로 유연하게 제공하는 인프라 서비스 PaaS(Platform as a service) : Web 기반의 서비스 또는 애플리케이션 등의 개발 및 실행을 위한 표준 플랫폼 환경을 서비스 형태로 제공하는 서비스 SaaS(Software as a service) : Microsoft Office 365, Googld Gsuite와 같이 응용프로그램을 인터넷 및 웹 브라우저를 통해 제공하는 서비스 AWS 주요 서비스 설명 리전(Region) : AWS 서비스가 위치한 물리적 장소, 네트워크 속도와 재해에 대비하기 위해 여러곳 존재 가용영역(AZ, Ava..

Infrastructure 2020.08.03

Spring Data Jpa Auditing

Spring Data Jpa Auditing Audit: 회계 감사, 감사하다 테이블 설계시 항상 공통적으로 들어가는 생성일자, 수정일자 등의 컬럼에 대해 자동으로 값을 넣어주는 기능을 Spring-Data-Jpa에서 제공한다. @EnableJpaAuditing 활성화 @EnableJpaAuditing @Configuration public class DatabaseConfig { @Bean public DataSource dataSource() { ... @EnableJpaAuditing 어노테이션을 활성화 시켜줘야 한다. 위치는 Config 클래스나 Application.class와 같은 root 클래스에 추가한다. Entity 설정 @Entity @Table(name = "BOARD") @IdCla..

Spring 2020.07.29

ApplicationContext와 Singleton

스프링은 객체 컨테이너 스프링의 핵심 기능은 객체를 생성하고 초기화 하는 것이다. BeanFactory 인터페이스: 객체 생성과 검색에 대한 기능을 정의한다. ApplicationContext 인터페이스: 메시지, 프로필/환경 변수 등을 처리할 수 있는 기능을 추가로 정의한다. AnnotationConfigApplicationContext: ApplicationContext의 구현체, 자바 어노테이션을 이용하여 클래스로부터 객체 설정 정보를 가져온다. GenericXmlApplicationContext: ApplicationContext의 구현체,XML로부터 객체 설정 정보를 가져온다. GenericGroovyApplicationContext: ApplicationContext의 구현체,그루비 코드를 이..

Spring 2020.07.29

한정적 와일드카드 (Bounded Wildcard Type)

한정적 와일드카드를 사용해 API 유연성을 높이라 매개변수화 타입은 불공변(invariant)이다. 즉, 서로 다른 타입 type1과 type2가 있을 때 List은 List의 하위 타입도 상위 타입도 아니다. List은 List의 하위 타입이 아니라는 뜻인데, List에는 어떤 객체든 넣을 수 있지만, List에는 문자열만 넣을 수 있다. 즉, List은 List가 하는 일을 제대로 수행하지 못하니 하위 타입이 될수 없다.(리스코프 치환 원칙 위배) 불공변 방식보다 유연한 무언가 필요 할때가 있다. public class Stack { public Stack(); public void push(E e); public E pop(); public boolean isEmpty(); } 여기에 일련의 원소를..

Java 2020.07.16

제네릭 메서드

제네릭 메서드의 작성법은 제네릭 타입 작성법과 비슷하다. 아래는 두 집합(Set)의 합 집합을 반환하는 문제가 있는 메서드다. public static Set union(Set s1, Set s2) { Set result = new HashSet(s1); // Type safety : unchecked call... 경고 result.addAll(s2); // Type Safety.. return result; } 컴파일은 되지만 경고가 발생한다. 메서드를 타입 안전하게 만들어야 경고가 사라진다. 메서드 선언에서의 세 집합(입력 2개, 반환 1개)의 원소 타입을 타입 매개변수로 명시하고, 메서드 안에서도 이 타입 매개변수만 사용하게 수정하면 된다.타입 매개변수의 목록은 메서드의 제한자와 반환 타입에서 온..

Java 2020.07.14