Light Purple Pointer
DB연결 - 책 수정 화면 (UPDATE)
·
BACKEND/Spring
BookController 에 수정 컨트롤러 추가 @GetMapping("/update") // 책 수정 컨트롤러 , Model은 데이터 전달 객체 public String update(@RequestParam Map map, Model model) { Map detailMap = bookService.detail(map); model.addAttribute("data", detailMap); return "/book/update"; } create.jsp 페이지를 복사해서 update.jsp를 만든다. 책 수정 제목 : 카테고리 : 가격 : 실행해서 확인해본다. 현재 bookId = 7인 책의 상세정보임 여기서 수정을 클릭하면 해당 책의 bookId를 가지고 update로 이동한다. update.jsp..
DB연결 - 책 상세 보기 (SELECT)
·
BACKEND/Spring
CONTROLLER -> SERVICE -> DAO -> DB DB-> DAO -> SERVICE -> CONTROLLER book_SQL.xml SELECT문 추가 bookDAO - selectDetail 메서드 추가 package com.demo.sample; import java.util.Map; import org.mybatis.spring.SqlSessionTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; @Repository public class BookDAO { //자동으로 등록된 객체를 주입 @Autowired SqlSe..
DB연결 - 책 입력 기능(INSERT)
·
BACKEND/Spring
https://blog.naver.com/drv982/222914637144 sqlmap 폴더와 book_SQL.xml파일 생성해준다. namespace 항목은 쿼리가 여러 개일 때 이름 공간을 분리하는 역할을 한다 book_SQL.xml 쿼리문 작성하기 ​ 사용하는 데이터베이스가 Mysql과 같이 자동생성 키를 지원한다면 useGeneratedKeys, keyProperty 옵션을 통해 insert 된 데이터의 key 값을 리턴 받을 수 있습니다. ​ useGeneratedKeys : (insert, update에만 적용) 자동생성 키를 받을때 true로 설정한다. (default: false) keyProperty : 리턴 될 key property 설정. 여러개를 사용한다면 ,(콤마)를 구분자로 나..
LegacyProject 시작하기 , DB 연결을 위한 라이브러리 추가
·
BACKEND/Spring
https://blog.naver.com/drv982/222914520048 800000으로 수정 모든 파일들 UTF-8로 설정하기 에서 설정 가능함 server 종료 후 다시 시작 함 에러가 아니고 INFO 즉 정보들이 나옴 기본으로 생성되어있는 HomeController 삭제 후 BookController 클래스 생성 컨트롤러로 사용하기 위해서 컨트롤러 선언을 해준다. package com.demo.sample; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; // 요청을 받는 컨트롤러 @Controller public class BookController..
레거시 프로그램 설치 및 기본 설정
·
BACKEND/Spring
https://github.com/spring-attic/toolsuite-distribution/wiki/Spring-Tool-Suite-3 Spring Tool Suite 3 the distribution build for the Spring Tool Suite and the Groovy/Grails Tool Suite - spring-attic/toolsuite-distribution github.com sts-3.9.18.RELEASE 파일만 c java 폴더에 넣기 java 폴더에 workspace-legacy 생성 STS.exe 실행 이클립스에 스프링 라이브러리를 한 번에 다 설정해 놓은 것이 legacy (레거시) 임 Spring Legacy Project 템플릿은 sping MVC proj..
DI - 자동 주입
·
BACKEND/Spring
DI 프로젝트 복사해서 AutoWrie 프로젝트 만듬 pom.xml 위에 artifactID 이름 변경해줘야함 4.0.0 com.demo AutoWire 0.0.1-SNAPSHOT 11 11 11 5.3.20 1.7.32 1.2.11 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 업데이트 TestBean1 package com.demo.beans; public class TestBean1 { private Dat..
DI 생성자 주입
·
BACKEND/Spring
https://blog.naver.com/drv982/222900664820 [DI] 생성자 주입 main blog.naver.com Dependency Injection 의존성 주입 A객체를 만들려고 하는데 B객체가 필요할경우 스프링 프레임워크에서는 B객체를 자동으로 만들어줌 이런거를 의존성 주입이라고 함. DI 생성 pom.xml 복사 붙여넣기 maven 업데이트 패키지도 3개 다 복사함 안의 내용 다 지우기 TestBean package com.demo.beans; public class TestBean { private int data1; private double data2; private String data3; // 기본 생성자 public TestBean() { System.out.prin..
bean 객체의 생명 주기 - 소멸
·
BACKEND/Spring
https://blog.naver.com/drv982/222900649237 [IOC] 빈 객체의 생명주기 pom.xml, beans.xml 복사 메이븐 업데이트 beans.xml 메인클래스 blog.naver.com TestBean 에 추가 package com.demo.beans; public class TestBean { public TestBean() { System.out.println("테스트빈 생성자"); } public void bean1_init() { System.out.println("init 메서드"); } public void bean1_destroy() { System.out.println("소멸 메소드"); } } beans.xml 수정 main에서 실행 14:56:07.805..
bean 객체 생성하기
·
BACKEND/Spring
testbean 생성 package com.demo.beans; public class TestBean { public TestBean() { System.out.println("테스트빈 생성자"); } } beans.xml 에서 새로 만든 클래스 등록 main package com.demo.main; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.demo.beans.HelloWorld; import com.demo.beans.TestBean; public class MainClass { public static void main(String[] args) { // beans.xml 파일을 로딩한다..
IOC 컨테이너?
·
BACKEND/Spring
https://blog.naver.com/drv982/222900487138 [IOC] 컨테이너 IoC(제어 반전)이란, 객체의 생성, 생명주기의 관리까지 모든 객체에 대한 제어권이 바뀌었다는 것을 의... blog.naver.com 스프링 프레임워크도 객체를 생성하고 관리하고 책임지고 의존성을 관리해주는 컨테이너가 있는데, 그것이 바로 IoC 컨테이너(=스프링 컨테이너) 입니다. 인스턴스 생성부터 소멸까지의 인스턴스 생명주기 관리를 개발자가 아닌 컨테이너가 대신 해줍니다. 객체관리 주체가 프레임워크(Container)가 되기 때문에 개발자는 로직에 집중할 수 있는 장점이 있습니다.