static import문은 JDK1.5부터 추가된 기능으로,static import문을 사용하면 static멤버를 호출할 때 패키지, 클래스명을 생략할 수 있다. 편리함 + 코드가 간결해지는 장점 때문에 사용한다.import static java.lang.Integer.*; // Integer 클래스의 모든 static 멤버import static java.lang.Math.abs; // Math.abs()만 import. 괄호는 붙이지 않는다.import static java.lang.System.out; // 이렇게 하면 System.out을 out만으로 참조 가능int i = abs(-3); //원래는 int i = Math.abs(-3) 이었던 것을 static import 했기 때문에 이렇게 ..
생성자에 @Autowired 가 있으면 스프링이 연관된 객체를 스프링 컨테이너에서 찾아서 넣어준다.이렇게 객체 의존관계를 외부에서 넣어주는 것을 DI (Dependency Injection), 의존성 주입이라 한다.@Autowired에 의해 스프링이 주입해준다. package hello.hellospring.controller; import hello.hellospring.service.MemberService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; @Controller public class MemberController { privat..
단위 테스트 작성하기 스프링 부트로 테스트 케이스를 작성할때 test/java에서 테스트 클래스를 만들어서 테스트를 하면 된다.@Test 어노테이션을 붙인다.예를 들어 간단한 멤버관리 클래스를 테스트한다고 했을때, package hello.hellospring.repository;import hello.hellospring.domain.Member;import java.util.*;//db선정이 안되서 레퍼지토리로public class MemoryMemberRepository implements MemberRepository { private static Map store = new HashMap(); //동시성 문제가 고려되어 있지 않음, 실무에서는 ConcurrentHashMap, AtomicL..
프로젝트 생성 스프링 부트 스타터 사이트 https://start.spring.io 로 이동해서 스프링 프로젝트 생성을 하면 되는데Project: Gradle - GroovySpring Boot: 3.x.x // snapshot, m1은 정식 릴리즈된 버전이 아Language: JavaPackaging: JarJava: 17 또는 21Project Metadata groupId: 자유 //기업명, 도메인등을 기술 artifactId: 자유 //프로젝트명과 비슷Dependencies: Spring Web, Thymeleaf 로 세팅을 하면 된다. 이 때 maven과 gradle이 있는데 이 두개는 빌드해주는 툴이라고 보면 된다. 이렇게 설정한뒤 generate 버튼을 눌러 다운로드를 받는다그런 다음 ..
학습한 내용 - 글 검색하기 / 이전글, 다음글보기에서 검색한 결과만 한정해서 나오게 하기 글 검색하기 / 이전글, 다음글보기에서 검색한 결과만 한정해서 나오게 하기 검색을 하면서 일부만 쳐도 자동완성 되는 기능도 만드려고 한다.그 자동완성 목록 div를 뷰단으로 먼저 만들어야 한다글쓴이, 글제목 만 자동완성이 되도록 만들 것이다. 글제목 글내용 글제목+글내용 글쓴이 검색 우선 글 검색부터 하면 get 방식으로 list.action 에 보낸다.function goSearch() { const frm = document.searchFrm; frm.action = "/list.action"; fr..
학습한 내용 - 글제목에 댓글 표시하기 - 댓글 수정하기 - 댓글 삭제하기 글제목에 댓글 표시하기 ${boardvo.subject} 0}"> [${boardvo.commentCount}] 글제목에 6개 댓글이 달리면 글제목[6] 이렇게 표기해줘야 하기 때문에 글목록 페이지에 이렇게 표시를 해준다.즉 commentCount를 넘겨줘야 한다는 것인데 https://codingsimsim.tistory.com/48 에서 댓글 작성하기 부분에서boardVO에 댓글형 게시판을 위한 commentCount 필드를 추가해야 한다.private String commentCount; 를 추가한다. 이렇게 commentCount 필드를 추가 해주었기 때문에 그..
학습한 내용 - 글 수정하기- 글 삭제하기 글 수정하기 글수정 -> get 방식으로 보냄 -> 글을 수정하시겠습니까?=> yes => postMapping 로 이동 1) view.jsp 에서 글수정하기 버튼을 클릭한다 /edit.action?seq=${requestScope.boardvo.seq}'"> 글수정하기 /del.action?seq=${requestScope.boardvo.seq}'"> 글삭제하기이렇게 edit.action으로 seq를 보내주게 되면 2. 우선 get방식 접근이기 때문에 getMapping을 해준다// === #71. 글을 수정하는 페이지 요청 === // @GetMapping("/edit.action")public ModelAndView..