전체 글 88

[5회차 03] 로그인 - 예외처리

예외처리먼저 현재 회원가입되지 않은 값을 넣어 로그인해보면이처럼 500에러가 발생하고콘솔창에는 기대값은 1인데 아무것도 안나와 0이기에 EmptyResultDataAccessException이 발생하였습니다 (null값을 주지 않음)하지만 사용자에게는 절대 이러한 에러 페이지를 보여주면 안되기에 예외처리를 해보겠습니다 Tip 예외 코드를 보면 아래서부터 실행되는 것입니다 thread가 생성 -> javax.servlet 이 받고 springframework가 servlet을 땡겨와 dispatcher servlet -> RequestMapping -> 실행시켜 찾아온 곳이 우리가 작성한 패키지의 클래스와 메서드가 나오며 그중 제일 위에 끝난부분이 에러가 발생한 곳으로 우리가 수정할 수 있는 부분이 나옵..

[5회차 02] 로그아웃

로그 아웃main.jsp그리고 LoginController에서 setViewName을 main으로 하였으니 views폴더 안에 main.jsp를 생성해 줍니다 memberId = 그러고 위 코드처럼 로그인하면 memberId값이 나오게 해주고 로그인 버튼을 만들어줍니다로그아웃을 누르면 logout.do로 갑니다그러면 이제 LoginController에 logout.do를 만들러 가야겠죠?LoginController위에 말한 logout.do를 맵핑해주고 로그아웃을 했으면 세션값을 없애도록 추가해줍니다@RequestMapping("/logout.do")public ModelAndView logout(HttpServletRequest request) { ModelAndView mv = n..

TransientDataAccessResourceException, SQLException

4월 27, 2024 10:27:04 오후 org.apache.catalina.core.StandardWrapperValve invokeSEVERE: 경로 [/05]의 컨텍스트 내의 서블릿 [pf]을(를) 위한 Servlet.service() 호출이, 근본 원인(root cause)과 함께, 예외 [Request processing failed; nested exception is org.springframework.dao.TransientDataAccessResourceException: PreparedStatementCallback; SQL [INSERT INTO forum.`member` (member_id, passwd, member_nm, email, auth_yn, pwd_chng_dtm, j..

에러 모음 2024.04.27

EmptyResultDataAccessException

4월 26, 2024 6:10:02 오후 org.apache.catalina.core.StandardWrapperValve invokeSEVERE: 경로 [/04]의 컨텍스트 내의 서블릿 [pf]을(를) 위한 Servlet.service() 호출이, 근본 원인(root cause)과 함께, 예외 [Request processing failed; nested exception is org.springframework.dao.EmptyResultDataAccessException: Incorrect result size: expected 1, actual 0]을(를) 발생시켰습니다.org.springframework.dao.EmptyResultDataAccessException: Incorrect resul..

에러 모음 2024.04.26

[4회차 과제 03] 중복아이디 처리

과제 03중복아이디 알림이제 회원가입 시 중복 아이디면 회원가입 실패 메시지가 나오게 해보겠습니다MemberDao먼저 memberId값을 조회하는 쿼리를 작성합니다public String getMemberId(String memberId) { //아이디값 찾기 String sql = "SELECT member_id FROM forum.member WHERE member_id ='" + memberId + "'"; return queryForObject(sql, String.class);}이제 이걸 JoinService에서 실행시킵니다JoinServicepublic int join(HashMap params) { String passwd = params.get("pass..

[4회차 과제 02] NullPointException 처리하기

과제 02NullPointException 처리하기이제 인증을 완료하면 auth_yn이 "Y"로 바뀌었기 때문에 인증완료한 인증메일로 다시 접속하면 auth_yn = "N"라는 조건에서 걸리기에 500에러 화면이나오며 NullPointException이 발생합니다 그렇기에 이제 이 NullPointException 예외처리가 필요합니다JoinService예외처리는 간단하게 try-catch를 사용해 보겠습니다public boolean emailAuth(String uri) { boolean result; try { // true반환 MemberAuthDto memberAuthDto = memberAuthDao.getMemberAuthDto(uri); //인증 유효..

[4회차 과제 01] 인증 이메일 완료 후 DB auth_yn(인증여부) 바꾸기

과제 01인증 이메일 완료 후 DB auth_yn(인증여부)를 "Y"로 바꾸기전에 만든 회원가입 인증메일을 받고 인증하기를 하였을 경우 "인증 완료" 메시지는 나오지만 DB에 있는 인증여부(auth_yn)는 바꾸지 않았습니다 이걸 과제로 변경해 보겠습니다MemberAuthDaoMemberAuthDao에 update쿼리를 작성해보겠습니다처음에 WHERE 조건을 uri로 하려했다기 너무 길기도해서 seq로 했는데 문제 없이 작동 잘되었습니다. 쿼리문은 간단하게 작성하였습니다 forum의 member_auth 테이블에서 member_seq이 같으면 auth_yn = 'Y'로 변경 //인증 완료되면 auth_yn='y'로 바꾸기 public int updateAuthInfo(MemberAuthDto m..

IncorrectResultSetColumnCountException

4월 25, 2024 9:58:39 오후 org.apache.catalina.core.StandardWrapperValve invokeSEVERE: 경로 [/04]의 컨텍스트 내의 서블릿 [pf]을(를) 위한 Servlet.service() 호출이, 근본 원인(root cause)과 함께, 예외 [Request processing failed; nested exception is org.springframework.jdbc.IncorrectResultSetColumnCountException: Incorrect column count: expected 1, actual 7]을(를) 발생시켰습니다.org.springframework.jdbc.IncorrectResultSetColumnCountExcepti..

에러 모음 2024.04.25

CannotGetJdbcConnectionException, CommunicationsException

4월 25, 2024 9:28:51 오후 org.apache.catalina.core.StandardWrapperValve invokeSEVERE: 경로 [/04]의 컨텍스트 내의 서블릿 [pf]을(를) 위한 Servlet.service() 호출이, 근본 원인(root cause)과 함께, 예외 [Request processing failed; nested exception is org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications li..

에러 모음 2024.04.25