프로젝트 만들 때
type : maven
packaging : war 선택(jsp 사용하려면)!
packaging은 jar은 타임리프를 사용할 때 선택
라이브러리 깔기
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
아이콘 안 뜰 때 새로고침하기
파일모양으로 war인지 jar인지 확인 가능
war이면 아래와 같은 모양!
실행 연동시킬 때 아이콘이 입력 안 되는 경우 - main에서 실행
Port number(포트번호)
같은 컴퓨터에 인터넷을 사용하는 여러 프로그램이 동시에 동작 중일 때, IP로는 프로그램을 구분할 수 없다.
각 프로그램을 식별하기 위한 번호(주소)를 포트번호라고 한다.
널리 사용중인 포트번호
web 서버 : 80
FTP 서버 : 20/21
MySQL : 3306
오라클 : 1521
메인에서 포트번호 설정 가능
# port number setting
server.port=80
상황처리 (view와 controller 연동)
0. 첫 페이지
views 폴더에 jsp 파일 작성
주로 사용하는 첫 페이지 파일명
1) index.jsp
2) default.jsp
3) home.jsp
그 외 다른 파일명을 사용할 경우
controller 클래스를 작성하여 url '/'(루트 경로)와 매핑시킨 메소드를 작성
자원 (이미지, css, js 등) 활용
1) static 폴더에 각 자원을 모을 폴더를 작성
2) 각 폴더에 해당 자원을 넣기
홈페이지가 제대로 작동하는지 확인하기!
import lombok.extern.java.Log; - 제대로 동작하는 지 확인
log.info("home()"); - 콘솔에 찍혀서 확인 가능!
콘솔
INFO 7524 --- [p-nio-80-exec-1] c.r.s.controller.HomeController : home()
1. 페이지 -> 페이지 이동
1) 이동할 페이지 작성
2) 링크에 작성한 url에 매핑되는 메소드 작성
ex) url = inData
<a> 태그는 무조건 get방식으로 전송
자바스크립트의 location.href=''url" 도 get방식
2. 페이지 - [Data] -> controller
1) form 태그와 input 태그로 전송
2) 전송방식 get/post
input 태그의 name 속성의 값과 메소드의 파라미터 이름을 똑같이 작성한다.
데이터 전송
1) 파라미터 활용
입력 태그 개수만큼 매개변수를 선언
모든 매개변수 앞에 @RequestParam("name")을 붙인다.('name'에는 input 태그의 name 속성값을 넣는다.)
input태그의 name속성값과 매개변수 이름을 똑같이 작성할 경우 @RequestParam은 생략
input 태그의 name="a" - @RequestParam("a") String s
name a로 받은 값을 RequestParam a로 받아서 변수 s에 넣어준다.
2) DTO 활용
input 태그의 name 속성값과 같은 필드명으로 하여 DTO 클래스를 작성
spring 프레임워크가 같은 이름의 필드를 찾아서 값을 넣어줌. 이때 형변환도 자동으로 처리함
제품 정보를 전송하도록 작성해 보기!
Dto 이용
'공부기록 > Spring' 카테고리의 다른 글
5월 31일 Spring - thymeleaf, JPA (0) | 2023.05.31 |
---|---|
5월 10일 (1) Spring - JSP (0) | 2023.05.10 |
5월 9일 (2) Spring - 출력 (0) | 2023.05.09 |
5월 8일 (2) Spring - Java로 spring 사용하기 html 연결 (0) | 2023.05.08 |
5월 8일 (1) Spring이란? - Java로 spring 사용하기 (0) | 2023.05.08 |