웹(Web) 69

Vue.js 기본 정리(v-for,데이터바인딩,EventHandler,v-if)

이 글은 Vue.js 사용에 앞서 가벼운 사용 방법을 적어 둔 글이다. 참고 자료 : 유튜브 코딩애플(https://youtu.be/-tVaahsXpwk?si=z0Ki1RrHcGBks7qD) 프로젝트 생성 vue create 프로젝트명 미리보기 띄우고 싶으면 터미널에 npm run serve 위와 같이 입력하면 된다. Vue는 index.html이라는 메인페이지 않에 App.vue코드를 박아넣는 것 디렉토리/파일 설명 node_modules :프로젝트에 쓰는 라이브러리들 src : 소스코드 다 담는곳 public : html파일, 기타팡리 보관 package.json : 라이브러리 버전, 프로젝트 설정 기록 Vue 특징(with 코드) {{데이터 바인딩}} = JS 데이터를 HTML에 꽂아 넣는 문법 d..

[SpringBoot] java record와 DTO에 관하여...

SpringBoot에서 Input, Output처리에 대해 정의하는 글이다. VO(Value Object) : 불변값 -> 따라서 return값으로 사용(수정X) DTO(Data Transfer Object): Getter/Setter 자유롭게 사용(수정O) (암기는 DTO가 T가 들어있으니 geTTer/seTTer 를 사용한다고 생각하면 된다.) Client한테 받을때(수신정보) : BO(Business Object) Server에서 보낼때(송신정보) : VO(Value Object) 흔히 위 객체를 InputVO, OutputVO로 혼동해서 쓰는데, 사실 여기서는 Ouput일때는 BO로 쓰는것이 조금 더 명확한 표현이라 할 수 있다. *BO(Business Object) : 비즈니스 로직을 포함하는 ..

2023 Go-lang(Go 언어) 장단점/추이

개요 지난 2~3년간 Go언어에 대해 집중적으로 관심이 좁혀졌던 것에 비해, 최근(2023)에는 Go-lang에 대한 관심이 식은것같아 시장 상황이 궁금하여 다음과 같은 글을 작성하게 되었다. 선요약 대한민국에서 Go언어로 주력으로 나가기는 어렵다. Go를 첫언어로 선택하기보다는 Java, Python 등이 많음. Go는 Type강제가 심한 언어이므로, OOP를 추구하는 다른언어들과 특징이 다르므로 선뜻 선택하기는 어려운편. C언어를 대체로 리팩토링하기에는 이르다고 생각. Go언어 특징 • 편의성 :동시성 기능 중 일부는 언어 자체에 내장. 'http 패키지'와 같은 고 표준 라이브러리 패키지로 제공된다. 자동 메모리 관리 기능을 지원. 파이썬 등의 스크립팅 언어와 달리 고 코드는 빠르게 실행되는 네이티..

Spring Data JPA 페이징

Spring Data JPA 에서 페이징 및 슬라이스에 대해 알아보겠다. Paging(페이징) 페이징을 하기 위한 메소드는 아래와 같이 구성한다. public interface MemberRepository extends Repository { Page findByAge(int age, Pageable pageable); } data : 5, offset : 3 으로 나누는것을 아래처럼 보여준다. @Test public void page() throws Exception { //5개의 데이터 given memberRepository.save(new Member("member1", 10)); memberRepository.save(new Member("member2", 10)); memberReposito..

Spring Data JPA @Query 활용법(JPQL, DTO)

이 글에서는 SpringBoot 환경에서 JpaRepository를 인터페이스에서 활용하는 방식과 일반 JPA 방식을 비교하는 내용을 다룬다. @Query 메서드에 JPQL 작성하는 방식 public interface MemberRepository extends JpaRepository { @Query("select m from Member m where m.username= :username and m.age = :age") List findUser(@Param("username") String username, @Param("age") int age); } @Query, 값, DTO 조회하는법 1. 단순 엔티티 호출은 아래와 같다. public interface MemberRepository exte..

Java로 배우는 디자인패턴

디자인패턴 별로 사용하는 이유에 대해서 알아보았다. 1. 반복패턴(Iterator) : for문이 아니라 Iterator를 사용하는 이유는 구현에 의존하지 않기 때문! ex) class Book{List list 선언} => class Book{Vector 선언} 으로 바꾸는 경우 for문의 구현부분도 다시 변경해야하는데, Iterator를 사용하면 이러한 구현의 변경점에 의존하지 않고 반복문을 실행 할 수 있다. 2. 어댑터패턴(Adapter) - 바꿔서 재이용하기 : 기존의 클래스를 개조해서 필요한 클래스를 만든다. 이 패턴으로 필요한 메소드를 발빠르게 만들 수 있다. 만약 버그가 발생해도 기존의 클래스에는 버그가 없으므로 Adapter역할의 클래스를 중점적으로 조사하면 되고, 프로그램 검사도 상당히..

HTML 요약

AttributeDescription id 유일한 식별자(id)를 요소에 지정한다. 중복 지정이 불가하다. class 스타일시트에 정의된 class를 요소에 지정한다. 중복 지정이 가능하다. hidden css의 hidden과는 다르게 의미상으로도 브라우저에 노출되지 않게 된다. lang 지정된 요소의 언어를 지정한다. 검색엔진의 크롤링 시 웹페이지의 언어를 인식할 수 있게 한다. style 요소에 인라인 스타일을 지정한다. tabindex 사용자가 키보드로 페이지를 내비게이션 시 이동 순서를 지정한다. title 요소에 관한 제목을 지정한다. NEW 태그 header 헤더를 의미한다 nav 내비게이션을 의미한다 aside 사이드에 위치하는 공간을 의미한다 section 본문의 여러 내용(article)..

VScode 단축키 및 숏컷

Visual Studio Code에서 자주 사용하는 단축키를 모아보았다. 같은 변수 이름 한번에 바꾸기 (★) ctrl + f2 블럭 주석 처리 (★) Alt + Shift + A 행을 위로 이동( 현재 행을 윗줄로 옮길때) alt + (↑)화살표 커서 위치 행 삭제 Ctrl + Shift + K 전체 파일에서 찾기 Ctrl + Shift + F 현재페이지 문자열 수정하기 (★) Ctrl + H 폴더 모든 페이지 문자열 수정하기 (★) Ctrl + Shift + H 자동 정렬(★) ★ ALT + Shift + F 또는 Ctrl + A 후 Ctrl + K + F