일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- sub태그
- 전체 선택자
- css
- height속성
- iframe
- sup태그
- Live Server
- id 선택자
- background-color 속성
- padding 속성
- 임베디드
- not 의사클래스
- RGBA
- html
- reveal in file explorer
- focus 의사클래스
- 아두이노
- html tag i
- i 태그
- 자식결합자
- 인접 형제 결합자
- RGB
- iframe 태그
- tag html
- Checked 의사 클래스
- go live
- 일반 형제 결합자
- width속성
- html 태그
- br 태그
- Today
- Total
목록Spring Boot/구현해보기 (16)
so woon!

학습일 : 2022. 11. 17 BbsMapper.xml SELECT `id` AS `id`, `text` AS `text` FROM `study_bbs`.`boards` WHERE BINARY `id` = #{id} LIMIT 1 INSERT INTO `study_bbs`.`articles` (`user_email`, `board_id`, `title`, `content`, `view`, `written_on`,`modified_on`) VALUES (#{userEmail}, #{boardId}, #{title}, #{content}, #{view}, IFNULL(#{writtenOn}, DEFAULT(`written_on`)), IFNULL(#{modifiedOn}, DEFAULT(`modified..

오늘 배운 내용 @SessionAttribute [Variable] : 어떠한 값을 세션 저장소로 부터 불러온다. value : 불러올 값의 쌍에 대한 키(이름)이다. HttpSession 타입의 객체에 setAttribute(n, v) 메서드 호출시 적었던 이름(n) 과 같아야 한다. required : 세션에서 불러올 값이 필수인가에 대한 여부이다. 기본값은 true이다. 이 값이 true 일때 세션에서 해당 변수를 불러올 수 없다면 400 (Bad Request) 오류가 발생한다. Bbs로 새로 생성 BbsControllor.java package dev.xowoony.studymemberbbs.controllers; import dev.xowoony.studymemberbbs.entities.me..
recoverEmail.html 이메일 찾기 이름 연락처 연락처 recoverEmail.css @charset "UTF-8"; /*큰 틀*/ #form { width: 100%; max-width: 40rem; align-items: stretch; display: flex; flex-direction: column; justify-content: flex-start; margin: 5rem 2rem; } #form > .title-container { margin-bottom: 3rem; } #form > .title-container > .title { font-size: 2rem; font-weight: 500; } #form > .table { width: 100%; max-width: 30rem..
String MemberController .patchRecoverPassword (EmailAuthEntity emailAuth, UserEntity user) Enum result = this.memberService.recoverPassword(emailAuth, user); JSONObject responseObject = new JSONObject(); responseObject.put("result", result.name().toLowerCase()); return responseObject.toString(); } MemberService.java @Transactional public Enum
학습일 : 2022. 11. 09 MemberController.java @Controller @RequestMapping(value = "/member") public class MemberController { private final MemberService memberService; @Autowired public MemberController(MemberService memberService) { this.memberService = memberService; } @RequestMapping(value = "recoverPassword", method = RequestMethod.GET, produces = MediaType.TEXT_HTML_VALUE) public ModelAndView ge..

학습일 : 2022. 11. 10 문제 @ResponseBody String MemberController.postLogin(UserEntity user) 주소 : /member/login 방식 : POST 응답 : MediaType.APPLICATIOM_JSON_VLAUE 기타 : XHR 요청에 대한 응답을 하기 위해 존재하는 매핑 로직 : MemberService.login(...) 메서드 호출 결과에 따라 응답은 따로하지 않고 (return null;) 서비스가 반환하는 값에 따라 단순히 System.out.println(...)을 활용하여 로그인 성공 or 실패 여부를 출력. Enum result = this.memberService.login(user); JSONObject responseObj..
암호화를 하기 위한 CryptoUtils를 생성 package dev.xowoony.studymemberbbs.utils; import dev.xowoony.studymemberbbs.entities.member.UserEntity; import java.nio.charset.StandardCharsets; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; // 1. hashSha512 메서드 로직 완성하기 // -input으로 "test1234" 들어오면 "2bbe~9뭐시기가"반환되게 // - 이 메서드는 throws 시그니처를 사용하지 않음. 고로 NoSuchAlgorithmException 발생시 nu..

비밀번호 해싱 memberService에 작성해준다. 회원가입, 로그인할때, 비밀번호 재설정 시에 해야하며 보통 많이 쓰이는 경우에는 유틸리티에 따로 빼놓는게 좋다. // 해싱 (비밀번호) StringBuilder passwordHashBuilder = new StringBuilder(); MessageDigest md = MessageDigest.getInstance("SHA-512"); md.update(user.getPassword().getBytes(StandardCharsets.UTF_8)); for(byte hashByte : md.digest()){ passwordHashBuilder.append(String.format("%02x", hashByte)); } user.setPassword(..