>> 회원가입 페이지는 정적 리소스 이므로 webapp > resources 하단에 파일을 생성해준다.
해당 페이지를 호출 하려면
>> 하단의 경로로 호출 한다.
>> 이때 resources 경로를 없앨수 있는데 이는 spring > servlet-context.xml 을 통해서 변경할 수 있다.
>> root-context.xml은 Web과 관련없는 Spring 설정을 다룰때 사용한다.
>> mapping 을 resources를 지워주고 /**로 설정한다
>> 그러면 다음부터 정적 리소스를 호출할때 resource를 넣어주지 않아도 된다.
>> Form 태그 안에서
- <input type="text"> <input type="password"> <input type="checkbox"> <input type="submit"> 등 다양하게 있는데
Form 태그란 ?
>> 문서 양식으로 데이터를 입력하여 controller로 전송할때 사용한다,
>> <form action="" method="">
- action : 전송할 URL // method : 전송 방법 get(default) , post
- get : head 만 있고 body가 없으므로 queryString 방식으로 URL을 통해서 전달된다.
name 이 동일한 경우에는
?sns=facebook&sns=kakaotalk&sns=instagram 이렇게 값은이름으로 값이 넘어가며 받을떄는
String[] arr = request.getParameterValues("sns") 이렇게 받고
EL 에서는 : var array = {paramValues.sns} 이런식으로 배열로 받고 [0] [1] [2] 으로 접근한다.
${param.sns} --> facebook 1개의 값만 나왔고,
배열일 경우는 paramValues.sns[0] 등으로 배열로 접근했다.
또한 URL로 데이터를 전송할때 ASCII 값이 아닌경우 URL 인코딩 되어 변경되어 간다.
>> 회원가입시에 정보가 누락되면 안되므로 데이터가 submit 될때 누락된 정보가 있는지 확인하는
함수를 설정하여 체크하도록 한다.
>> 여기서는 formCheck() 라는 함수를 onsubmit 이벤트를 걸어놨고 여기서 this는 form 태그 자체를 의미한다.
>> frm 은 태그를 받으며, .(온점)을 통해서 내부 속성에 접근할 수 있다.
onsubmit ---> true 의 경우 form 전송 O
---> false의 경우 form 전송 X
현재 이방식은 간단한 방식이며 보통 "정규 표현식" 을 사용하여 태그를 점검및 관리 한다.
>> 아래는 JAVA의 정규 표현식이고, JAVASCRIPT의 정규 표현식 또한 비슷하다.
https://step-by-step-dev.tistory.com/65
[Algorithm] 아이디 생성시 규칙에 따른 변경 후 생성 알고리즘
문제의 출처는 프로그래머스 이고, 문제는 회원가입시 아이디를 7단계의 규칙에 맞게 변형시켜주는 알고리즘이다. 1. 내가 짠 코드를 보자면 일단 정규표현식을 사용하지 않아서. 코드가 지저분
step-by-step-dev.tistory.com
select() >> 작성 실패했는데 실패의 원인이 되는 요소로 이동하도록 하는 매서드이다.
>> 또한 ${msg} 가 웹페이지에서 소스보기하면 공백으로 뜨는
그 이유는 ${} -> JS6 Template literal -> 브라우저에서 돌아감 || EL-> server에서 돌아가고
서버 값 -> 브라우저가 받아서 -> JAVASCRIPT 실행
따라사 ${} 는 EL로 보기 때문에 아무것도 안보이는데 이것을 표현 하려면 ${msg} 를 따옴표로 묵고 다시 ${}로 묵어 줘야한다. ${ '${msg}'} }
>> <c:url> --> 1. ContextRoot 를 자동 추가 2. Session id 자동추가
>> 소스 보기를 통해 확인하면 /ch2(ContextRoot) 가 자동으로 들어가있는것을 확인할 수 있다.
또한 form 태그에서 action 으로 URL 이동을 할때 ContextRoot를적어줘야 하는데 (변경될수 있으므로)
이때 JSTL을 사용하여 쓰는게 좋다. 그러면 ContextRoot를 적어 주지 않다도된다.
============================================================================================
>>사용자의 요청 Get // Post 방식으로 데이터를 Controller로 넘겼을때
데이터의 가공없이 전달받은 데이터를 바로 Browswer로 띄울때는
EL 을통해서는 ${Param.name} 을 통해서 접근할 수 있다.
>> jsp 문법으로는 <%= %> 을통해서 접근할 수 있따.
ex) <%! 선언부 %> -> 전역변수, 함수 <% 스크립릿 %> -> 코딩, 지역변수
<%=출력부 %> ->문자열, 변수값, 함수리턴값 출력 <%-- JSP주석 --%>
'dev > Spring' 카테고리의 다른 글
[Spring] GetMapping, PostMapping (0) | 2022.06.09 |
---|---|
[Spring] EL, JSTL (0) | 2022.06.04 |
[Spring] Tomcat port 변경 (0) | 2022.06.04 |
[Spring] ModelAttribute, BindingResult (0) | 2022.06.04 |
[Spring] RequestParam (0) | 2022.06.03 |