Java/Spring MVC 43

[20.10.08 SpMVC_ReadBook2,오라클 9/25 독서록] PathVariable, @SessionAttribute(), @ModelAttribute(), Spring form taglib를 연동한 write(입력 form) 구현, 다중 INSERT

여기서 BooksController와 MemberController가 중요하다 MemberController는 Security와 관련이 없지만 CRUD때문에! Spring Security만 가지고 와도 이걸 사용할 수 있다. 이 세가지는 security와 관련되어있음 jasypt는 암호를 암호화시키고 복호화시키고 DB에 연동할때 사용했던거임 실제로는 xml파일에서 거의썼지 나머지부분들에 설정하지 않았음. pathVariable은 ?seq= + seq를 사용 x >> book-detail.jsp @ResponseBody @RequestMapping(value = "/user_info", method=RequestMethod.GET) public UserDetailsVO userInfo(Principal p..

Java/Spring MVC 2020.10.08

[20.10.07 SpMVC_ReadBook2] SessionAttributes MemberController,BooksController참조

tx-context.xml은 beans와 tx만 체크 해준다 tx-context.xml 은 반드시 servlet-context.xml과 함께 있어야한다. 같은 폴더아래에 만들어준다. @SessionAttributes("bookVO") 이걸 붙여놓으면 입력박스에 히든으로 seq를 안넣어놔도된다 얘가 다 해주기 때문에 String seq해서 가능한거!!!!! >> BooksController readonly="true" 이걸 붙여주면 회원 아이디가 고정이 된다. >> member-update.jsp

Java/Spring MVC 2020.10.08

[20.10.05 SpMVC_ReadBook] security-contex.xml 코드 해석, 로그아웃 메소드는 포스트, web.xml의 <context-param> 순서, 모델어트리뷰트가 하는일

스프링에서 공통으로 사용하는 url 사용자가 어떠어떠한 패턴으로 요청을햇을때 권한을 부여하는 부분 policy! /admin/~~ url 관리자 권한으로 접근을 하면 "hasRole('ADMIN')" : 권한이 ADMIN인 사람만 접근을 가능하게 하라! RLOE이 ADMIN인 사람만 접근을 가능하게 하라는 이야기 여러 롤들을 지정할때는 hasAnyRole 필요할때는 컴마 찍어서 지정해주면 된다 자기와 관리자만 접근이 가능하도록 permitAll() : url이 가장 길게 올라와있는거 부터 올려라 패턴이 긴쪽부터 위로 올려야만이 내가 원하는대로 적용이 됌!!!!!! use-expressions : 를 설정 해주지 않으면 hasRole함수가 실행이 되지않는다 이 항목은 기본값으로 포함이된다. 로그아웃이 되면..

Java/Spring MVC 2020.10.05

[20.09.25 SpMVC_ReadBook] security-context, web.xml 파일 코드 해석, @RequiredArgsConstructor

' ~~/read' 우리 전체 프로젝트를 하게되면 객체, 클래스들을 지정하는 곳임 context parameter 컨텍스트가 실행된 다음에 appServlet은 자바 서버로 만든것이다라는 키워드 여기는 내가 코딩하는 것에 대한 설정들이 들어있는 코드 문지기 역할 : DispatcherServlet : 초기화 값 어떻게 구성되는지 알려주는 .xml에 들어있다 이런 이야기 우리는 아무것도 없지만 ~~.do 이런게 잇으면 그 페이지만 보안에 관련 네이버는 ~~.nhn이라는 접미사를 붙이기도한다. security에서는 enKor한글인코딩에 제일 먼저 나와야한다 org.springframework.web.filter.DelegatingFilterProxy DelegatingFilterProxy 찾아가기 DI : ..

Java/Spring MVC 2020.10.05

[20.09.25 SpMVC_Security_Simple]

SpMVC_Security_Simple //로그인이 끝나면 모두들어가도된다. /login : 모든사람들에게 인가된 페이지 // ** : 모든 패턴은 인증된사용자만 접근할 수 있도록 인증받은 사용자만 접근하라 // noop : 암호화 되지 않은 로그인을 시도하면 이 매니저가 실행이 되는 거임 로그인이 됏다 하면 인증이되었고 토큰이 부여된다. ↓ 이 아래는 필요한만큼 나열하면 된다. ex )roll 이 admin인 사람만 뭘 하고싶으면 새로 만들면 됌 이게 인증과 권한 부여 // 스프링에서 제공하는 아주 가장 기본적인 >> applicationContext.xml 이 값을 보내야 로그아웃이 된다 저것을 보고 토큰(token)이라고 한다 로그인을 하게되면 토큰을 부여받게 된다. CRUD의 CU를 할 때 우리가..

Java/Spring MVC 2020.10.05

[20.09.24 HTML, SpMVC_ReadBook] PathVariable 방식, 고정된 레이아웃(제이쿼리 사용)

$(function () { // 화면에 scroll이 일어나면 $(window).scroll(function () { let headerHeight = $("header").height(); // header tag의 높이 값 // 화면을 세로 방향으로 스크롤 할 때 윈도우 화면의 최 상단 좌표 가져오기 let windowTop = $(window).scrollTop(); if (windowTop > headerHeight) { $("#main-nav").css("position", "fixed"); $("#main-nav").css("top", "0"); } else { $("#main-nav").css("position", "relative"); } console.log(headerHeight, w..

Java/Spring MVC 2020.10.05

[20.09.25 SpMVC_ReadBook ] url, RestController, 톰캣에서 지원하는 접근방식(get, post)

url이 생성되는 건 이렇게 @RequestMapping(value = "")이 두개가 묶여서 하나의 주소처럼 보이는것 톰캣이 지원하는 방식은 get, post 구체적으로 지원하는게 두가지 get : 메뉴를 클릭하거나 링크 를 클릭 하는 접근방식 post : 입력 폼에서 인풋박스에 값을 입력하고 submit을 클릭했을때 전송되는 방식 form에 입력된건 post! >> BooksController RestController RestController는 4.0대 만들어지고 4.0.1 이 만들어짐 실무에서 사용되는건 4.5 부터? 메서드 위에 @ResponseBody 붙이는 것과 같고 return은 json으로 보냄 xml보다는 json방식으로 훨씬 많이 쓰고있기 때문에 json으로 강제로 (원래는 json..

Java/Spring MVC 2020.09.25

pom.xml에 Spring Security Dependency 설정, Security에서 중요한 3가지 단어개념 (SpMVC_ReadBook의 pom.xml 참고)

Security에서 중요한 3가지 단어 개념 1. 접근주체 : 누가 (User) 2. 인증 : 누가 로그인을 수행했는가? 정상, 비정상인가를 판단 3. 인가 : 인증된 사용자가 어떤 페이지에 접근할 수 있도록 허락할 것인가 4. 권한 : 인증되고 인가를 받은 사용자가 어떤 동작을 수행하도록 허락할 것인가 Spring Security Dependency 설정 - spring-context-support - spring-security-core - spring-security-web - spring-security-config - spring-security-taglibs (jsp에서 사용하게 될) 스프링 프레임워크하고 스프링 시큐리티는 둘다 버전이다르다 이름만 같지 그럼 시큐리티 버전 뭘가져와야하냐면 스프..

Java/Spring MVC 2020.09.25

[20.09.23 SpMVC_ReadBook] Modal, RequestParam, ajax, 동적html에서 사용 혹은 사용하지 말아야할 코드, RestController, produces

/naver/serch : 이러한 주소들은 RequestMapping으로 이루어진 것 api를 다루다보면 실제 데이터와 type이 다를 수 있음 네이버의 isbn처럼 >> naver-list.jsp id와 name은 있어야함 name은 서버로 보낼때 필요한 친구! vo + db 컬럼명과 동일해야함 (연동되어야 하니까) id는 js에서 쓸때 필요함! button의 type을 button으로 하는 이유는 이걸 눌렀을때 submit을 실행하지 말라 하는 이야기 이건 실무에서 사용하지 않음!!제일 최근 버전 이런 버전을 사용한다. 이렇게 버전을 맞춰서 사용한다 ~ 가장 최근 버전을 해버리면 안맞아버릴수도 있기 때문엥 // 클릭했을때 modal기법이 나타나게 $("#book-modal").css("display"..

Java/Spring MVC 2020.09.23