인텔리제이 13

[IntelliJ] 인텔리제이 단축키 만들기

강의를 보다가 sout같은 단축키를 사용하는 것을 보고 따라 쳤는데 안되는 경우가 있다. 알고보니 따로 만들어서 사용할 수 있는 것을 알았다. 나는 아래 코드를 'tdd' 라는 단축키로 만들었다. @Test public void () throws Exception { //given //when //then } Settings -> Live Templates -> Java에 만들고 맨 아래 Change라고 쓰여있는 곳에 Java를 체크했다. 업무를 하면서 많이 쓰이는 것들은 따로 단축키를 만들어 쓰면 편할 것 같다.

그 외 개념,팁 2024.03.25

junit을 이용한 테스트2

given, when, then 주석 틀 이용하기 @Test void join(){ //given Member member = new Member(); member.setName("hello"); //when Long saveId = memberService.join(member); //then Member findeMember = memberService.findOne(saveId).get(); Assertions.assertThat(member.getName()).isEqualTo(findMember.getName()); } 이런식으로 사용하면 보기 편하다. void duplicateJoin(){ // 중복을 일부러 만들어 테스트해보는 메서드 //given Member member1 = new Mem..

junit을 이용한 테스트 기본 동작

junit은 자바 언어에서 주로 사용되는 테스트하기 위한 프레임워크이다. 내가 test 폴더 안에서 내가 테스트 하고 싶은 것들이 잘 돌아가는지 테스트를 해볼 수 있다. 메서드마다 @Test 어노테이션을 사용하여 만들고 Assertions.assertThat(A).isEqualTo(B); 를 이용하면 A와 B의 결과값이 같은지 알 수 있다. 그리고 Assertions를 static으로 올리면 assertThat을 바로 사용할 수 있다. 하지만 여러 개의 메서드를 한 번에 테스트를 하다보면 오류가 발생한다. 다른 메서드지만 같은 값들이 정의되는 경우 등 겹치는 상황이 있을 수 있기 때문에 메서드가 테스트가 완료되고 나서 해당 메서드들의 공용데이터나 저장소 을 지워주는 역할이 필요하다. 일단 테스트 파일 말..

Lombok(롬복) 사용하기 (리팩토링)

DTO를 작성할 때 getter, setter, 생성자, tostring 등 쓸일이 많다. 하지만 여러 개의 DTO를 작성할 때마다 작성하기엔 시간이 오래걸린다. 물론 eclipse로 쓸때는 단축키로 빨리 칠 수는 있지만 롬복의 어노테이션을 사용하면 더 빠르게 작성하고, 유지보수성도 올라간다. 필드부만 입력하면 나머지는 자동으로 작성해주기 때문에 수정사항이 있더라도 필드부만 고쳐주면 나머지는 자동으로 고쳐지기 때문에 편리하다. 리팩토링이란? 기존의 코드를 개선하여 재구성하는 것을 의미함 build.gradle 파일의 dependencies에 드래그 친 부분을 추가해준다. 그 후 우측 상단에 gradle 새로고침 버튼(load gradle change을 눌러준다. 이렇게 하고 DTO를 바꿔봤더니 이런 오류..

JPA 웹으로 연동하여 사용해보기

JPA는 지속적으로 공부해야 할 것 같아서 공부하는 것들을 그때그때 추가로 게시글을 작성할 예정이다. 스프링부트 프로젝트를 만들 때 h2를 연동했었다. src - main - resource - application.properties파일에 spring.h2.console.enabled=true 를 추가한다. 이는 h2 데이터베이스 콘솔을 활성화 하는 코드이다. http://localhost:8080/h2-console로 h2 데이터 베이스에 접속 할 수 있다. 물론 학습용이고 보안상으로는 안좋다고 한다. 서버를 실행하고 위 URL에 접속하면 이런 인터페이스가 보일텐데 위와 같이 두고 JDBC URL에다가 인텔리제이 콘솔창에서 JDBC를 검색하면 위와 같이 뜰 것이다. 해당 드래그 쳐져있는 부분과 같은 ..

[IntelliJ/인텔리제이] Cannot resolve parameter names for constructor public...

https://ryudotori.tistory.com/16 form으로 데이터 주고 받기 HTML로 form 태그안에 화면을 만들고, DTO와 컨트롤러를 이용해서 데이터를 주고 받는 내용을 해보았다. form태그란? - 아래 코드가 HTML 코드이다. form태그는 하나의 울타리라고 생각하면 되는데 그 ryudotori.tistory.com 위 게시글을 진행하다보니 생긴 오류이다 java.lang.IllegalStateException: Cannot resolve parameter names for constructor public cohttp://m.example.firstproject.dto.ArticleForm(java.lang.String,java.lang.String) 파라미터값을 못받아온다는 ..

form으로 데이터 주고 받기

HTML로 form 태그안에 화면을 만들고, DTO와 컨트롤러를 이용해서 데이터를 주고 받는 내용을 해보았다. form태그란? - 아래 코드가 HTML 코드이다. form태그는 하나의 울타리라고 생각하면 되는데 그 제출 버튼을 누르게 되면 form이라는 울타리 안에 있는 데이터만 넘어가게 하고, form태그의 action이라는 곳에 적힌 주소로 넘겨준다. {{>layouts/header}} 제목 내용 제출 {{>layouts/footer}} Controller - 지정한 주소를 통해 데이터를 컨트롤 할 수 있는 메서드가 모인 곳 package com.example.firstproject.controller; import com.example.firstproject.dto.ArticleForm; impor..

인텔리제이 단축키 메모장

필요할 때 찾아보고 사용하는 단축키와 자동완성키 자동완성은 Ctrl + Space와 Tab키로 하는 것 같다. 사용해 본것들 추가 예정 sout + Tab System.out.println(); Ctrl + Y 한 줄 지우기 Alt + Shift + 위아래 커서 있는 줄 위아래로 옮기기 Ctrl + D 한줄 아래로 복사 Alt + Insert VO 자동완성 (기본생성자, toString 등등) Ctrl + Shift + F10 Run psvm + Tab Java main 메소드 생성 Shift + F6 변수명 일괄적으로 바꾸기 Alt + Enter 자동완성 선택 Ctrl + Shift + Enter 문장 중간에서 다음줄로 내려가기 (아랫줄 내용 있으면 한줄 내림, 메서드 작성 시 매개변수() 다음 누르면..