꼬마 개발자 탱구

차근차근 확실하게

Framework/Spring 18

[Spring] Controller > @RequestMapping 다중매핑 사용하기

@RequestMappring을 이용해 한개의 매서드로 여러 URL을 처리할 수 있는 방법을 다중 매핑이라고 하는데, 만약 다중 매핑을 하지않으면 이런식으로 동일한 소스가 여러개를 만들어야하는 불상사가 일어납니다. @RequestMapping("/index") public String projectInfo() { return "메인"; } @RequestMapping("/main") public String projectInfo() { return "메인"; } 다중매핑을 사용하면 한개의 매서드를 여러 이름으로 접근하여 처리할수있습니다. 1. URL 을 판별하여 분기처리 @RequestMapping(value = {"/","/index","/main"}) public String projectInfo()..

Framework/Spring 2023.05.27

[Spring] HomeController.java 작동 원리

처음 코딩으로 배운 파이썬을 사용할때는 Text 이런식으로 코드를 작성했을때 Text 글자를 누르면 내가 하이퍼링크로 지정한 페이지로 이동하는게 됐었다. 하지만 스프링으로 똑같이 작성 하니 왜 안되는지 이해를 못해 이주 가까이 씨름을 했다. 알고보니 WEB-INF는 보안의 이유때문에 직접 접근이 불가능 하다는 것이다..... 이런식으로 파일명과 폴더명이 다 들어나기 때문이다. 프로젝트가 실행되면 작동 순서 1. web.xml 실행 2. web.xml 파일 DispatcherServlet이 해당 프로젝트로 들어오는 요청을 낚아채, 핸들링 3. 낚아챈 요청들은 servlet-content.xml로 보내준다. 4. 요청을 받은 sevlet-content.xml은 ① 란 태그를 사용하여 @(어노테이션)을 사용 ..

Framework/Spring 2023.05.27

[Spring] 스프링 프로젝트 만들기 #1

1. File > New > Other > Spring Legacy Project 2. Spring MVC Project 선택 projrct name : 프로젝트 명 package 명 : com.회사.프로젝트주제 Finish 누르면 프로젝트가 생성된다. 3. Tomcat 포트를 80 으로 바꾸면 localhost:8080을 안쳐도 된다. 4. 한글 인코딩을 위해 web.xml 인코딩 필터 설정 수정해주기 contextConfigLocation /WEB-INF/spring/root-context.xml org.springframework.web.context.ContextLoaderListener appServlet org.springframework.web.servlet.DispatcherServlet ..

Framework/Spring 2023.05.22

[Spring] 파라미터 접근법, 화면 연결 형태

컨트롤러 작성 1. @Controller 지정 2. @RequestMapping 을 이용해 요청 경로 지정 - 지정된 메서드에서 필요한 로직을 처리한 후 - 화면명 지정 : return : "화면명"; - 화면에 전달할 데이터는 Model에 담는다. 화면에 데이터를 전달하는 형태 : Model, ModelAndView 1. Model - 실행 되어질 Method의 파라미터로 Model 타입의 변수를 선언한 후 선언한 변수에 attribure 로 데이터를 담는다. : Model 타입변수.addAttribure("속성명", 저장할 데이터 ); 2. ModelAndView - ModelAndView 객체를 생성한 후 addObject로 데이터를 담는다. ModelAndView model = new ModelA..

Framework/Spring 2023.05.16

[Spring] 홈페이지만들기 2 - MySQL 연결하기

1. MySQL을 설치하고, cmd 창을 실행한다 2. 원하는 DB 명 만들기 CREATE DATABASE `새DB명`; 3. 만든 데이터베이스 사용 선언 USE '새DB명'; 4. sql문을 사용하여 회원가입 정보를 저장할 user 테이블 생성하 CREATE TABLE users ( id INT(11) NOT NULL AUTO_INCREMENT, username VARCHAR(50) NOT NULL, password VARCHAR(255) NOT NULL, name VARCHAR(50) NOT NULL, birthdate DATE NOT NULL, PRIMARY KEY (id), UNIQUE KEY (username) ); id: 유저 ID (자동 증가) username: 아이디 (중복 불가) pass..

Framework/Spring 2023.05.16

[Spring Boot] 패키지 구조 및 정리

Spring Boot는 목적에 따라 여러 패키지를 생성하여 코드를 관리하고있다. controller repository dto domain (entity) service 📌 domain (entity) DB 테이블과 직접 mapping 되는 클래스 jpa 사용 시 여러 어노테이션을 사용하여 테이블, 필드, 필드 옵션 등을 설정한다. domain 과 client를 직접 연동하지않고 dto를 두어 분리하는 이유 Client 쪽과 연결된 부분은 잦은 변경 사항이 있을 수 있는데, Domain과 연결되어 자주 변경되게 된다면, 여러 클래스에 영향을 미치기 때문에 분리 한다. DTO는 Domain Model을 복사한 형태로 다양한 Presentation Logic을 추가한 정도로 사용하며 Domain Model ..

Framework/Spring 2023.05.15

[Spring] 이클립스 스프링 실행 오류

이클립스에서 스프링 부트를 시작하려는데, Eclipse Marketplace에서 Spring Tools 4 를 install 해도 스프링 프로젝트 실행이 안됐다. 이때 해결방법은 1. Spring Tools 4 for Eclipse 다운로드 스프링 프레임워크 프로젝트 통합 개발환경을 구축하기위해 'Spring Tools for Eclipse' 가 필요하다. https://spring.io/tools 에 들어다운받고 실행하기 STS를 설치할 컴퓨터 운영체제 버전에 일치하는 버전을 원하는 장소에 다운로드 받기 내가 보고 한 사이트에서는 '다운로드 한 후 STS를 설치할 경로에 위치시킨다음 Terminal 프로그램을 이용해 압축을 해제' 하라고 했는데, 다운로드 하고 더블 클릭을 하니 압축 해제가 되었다. (..

Framework/Spring 2023.05.12