Spring
[sts] Spring Legacy Project 프로젝트 생성
Spring legacy project와 Dynamic web project 차이는 여기 참고 프로젝트 생성 Spring Legacy Project 프로젝트 이름을 입력, 저장위치 확인 Spring MVC Project 선택 패키지명은 보통 쓰던 것으로 적당히 혹은 사이트 주소명으로 기입 프로젝트 생성 후 오류 있을 때 오류표시가 뜨면 Maven Update project를 진행 프로젝트 인코딩 수정 각 설정 인코딩을 UTF-8로 수정한다 톰켓 서버 추가 서버 창에서 우클릭 후 톰캣 버전을 선택하여 추가해준다 톰캣이 설치된 경로를 선택하고, 추가할 프로젝트를 add 하여준다 pom.xml 자바 버전 수정 자바 버전 수정 후 메이븐 프로젝트 업데이트 적용
MyBatis - service, CRUD
service인터페이스 사용자의 요청을 SQL을 어떻게 처리할 것인지를 정의한다 사용자의 요구사항에 맞게 어떠한 작업을 처리할지, 추상 메서드로 정의한다 Long submit(BVO bo);//글 추가작업 BVO get(int bnum);//특정 게시글 조회 boolean modify(BVO bo);//글 수정 boolean del(int bnum);//글 삭제 List getList();//글 전체 조회 service 인터페이스를 구현한 클래스 전체코드 비즈니스 로직에 맞는 메서드를 작성하고, 매핑된 쿼리메서드를 불러온다 서비스 클래스로 사용하기 위해서 설정을 추가한다 @Service 비즈니스 로직, 사용자의 요구사항을 반영한다 @Log4j @RequiredArgsConstructor → final, ..
Mapper
Mapper Mybatis 매핑XML에 기재된 SQL을 호출하기 위한 인터페이스 pom.xml 필요한 디펜던시 추가와 버전을 수정한다 log4j - 1.2.17 버전 수정 (excusion 부분은 삭제) ojdbc6 - 11.2.0.4 HikariCP - 3.4.5 mybatis - 3.4.6 mybatis-spring - 1.3.2 log4jdbc-log4j2-jdbc4.1 - 1.16 root-context.xml jdbc 연결을 위한 빈과, 패키지 스캔을 등록한다 Mapper 클래스 실행할 쿼리문을 어노테이션을 이용하여 매핑한다 @Select("SELECT sysdate FROM dual") public String getTime(); getTime() 메서드를 호출하면 @어노테이션에 매핑된 쿼리문..
JUnit Test
Spring Tool Suite 3으로 sping legacy project을 생성했다 pom.xml 버전 수정과 dependency 추가 org.springframework-version : 5.2.7.RELEASE maven-compiler-plugin : 1.8 junit : 4.12 spring-test spring-jdbc spring-tx root-context.xml 태그로 패키지 스캔을 추가한다. → @Component 를 스캔하여 인스턴스를 생성하게 된다 자바빈 Student 와 Soldesk 클래스를 사용하기 위해 @Component 스캔을 통해서 스프링 빈으로 등록한다 @Data 어노테이션 → @Getter, @Setter, @RequiredArgsConstructor, @ToStri..
properties - 유효성검사, 에러메시지출력
전체코드1 , 전체코드2 [에러코드].[modelAttribute이름].[객체변수이름] = 메시지 //d1.prpperties qqq.q1 = 3 qqq.q2 = spring www.w1=5 www.w2=framework WEB-INF > properties > properties 파일 생성 properties 를 이용해서 에러 메시지 출력 가능 SpController.java @Controller @PropertySources({ @PropertySource("/WEB-INF/properties/d1.properties"), @PropertySource("/WEB-INF/properties/d2.properties") }) public class SpController { @Value("${qqq.q1..
HttpSession
전체코드 SpController @GetMapping("/t1") // public String test1(HttpServletRequest request) { public String test1(HttpSession session) { //HttpSession session = request.getSession(); session.setAttribute("d1", "session1"); return "t1"; } @GetMapping("/t2") public String test2(HttpSession session) { session.setAttribute("d1", "session2"); return "redirect:/final1"; } @GetMapping("/t3") public String ..
Spring MVC - @RequestMapping, @GetMapping
전체코드 HomeController.java package co.jw.sol.controller; @Controller public class HomeController { @RequestMapping(value="/", method=RequestMethod.GET) public String home() { return "index"; } } @Controller : 해당 클래스를 빈으로 등록, 컨트롤러로 사용한다고 명시한다 기본 주소 / 가 요청되면 get방식으로 index 페이지를 반환한다 url과 함께 HTTP Method도 함께 구분한다 SpController.java - HttpServletRequest @GetMapping("/t1") public String a1(HttpServletRequ..
myBatis를 이용한 DB연결, CRUD구현
전체코드 pom.xml 더보기 4.0.0 co.jw.sol AOP 0.0.1-SNAPSHOT 1.8 5.1.9.RELEASE 1.7.26 1.2.3 1.3.2 1.9.4 11.2.0.3 2.7.0 3.5.6 oracle ORACLE JDBC Repository http://maven.jahia.org/maven2 org.springframework spring-context ${org.springframework-version} org.slf4j slf4j-api ${org.slf4j-version} ch.qos.logback logback-classic ${ch.qos.logback-version} org.slf4j slf4j-api runtime javax.annotation javax.annotat..
JDBC 연결하기
전체코드 pom.xml 더보기 4.0.0 co.jw.sol AOP 0.0.1-SNAPSHOT 1.8 5.1.9.RELEASE 1.7.26 1.2.3 1.3.2 1.9.4 11.2.0.3 2.7.0 oracle ORACLE JDBC Repository http://maven.jahia.org/maven2 org.springframework spring-context ${org.springframework-version} org.slf4j slf4j-api ${org.slf4j-version} ch.qos.logback logback-classic ${ch.qos.logback-version} org.slf4j slf4j-api runtime javax.annotation javax.annotation-ap..