JSP 개발에서 댓글 기능을 JQuery, ajax, JSON을 이용해 데이터를 반환하여 화면에 출력하였는데, 같은 기능을 하는 코드를 Spring Framework에서 MyBatis를 활용해 작성하려니 막히는 부분이 많았다. 결론부터 얘기하자면 @ResponseBody 어노테이션에 대한 이해가 없었기 때문이었다고 생각이 든다. 결국 오류는 해결되었고, 계속해서 발생하는 오류를 해결하는 과정에서 알게된 내용을 정리하고자 한다. list: function(qno) { $.ajax({ type: 'get', url: `${contextPath}/qnaReply/list`, data: { qno: qno }, success: function(replyList) { var qnaReplyList = JSON.p..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FufM5W%2Fbtr5YVMz0YI%2FFNK0AfQTT5bt93KK8KTLp0%2Fimg.png)
요즘 정말 유용하게 잘 사용하고있는 OpenAI chatGPT 🥰 chatGPT가 훗날 개발자를 대체할 수 있는것이 아니냐는 여담이 들려올 정도로 훈련이 잘 되어있는 똑똑한 OpenAI 서비스이다! OpenAI chatGPT는 훈련을 통해 대화 방식으로 상호 작용하는 방식의 서비스이다. 대화 형식을 통해 후속 질문에 대한 대답을 해주고, 실수를 인정하며 잘못된 전제에 이의를 제기하고, 또는 부적절한 요청을 거부할 수 있다. 대답이 출력되었을 때 잘못된 부분에 대해이의를 제기하게되면 chatGPT가 실수를 인정하는 부분이 정말 신기하고 재밌었당😝 회원가입 후 서비스를 이용할 수 있고, 로그인을 한 후에 사용하게되면 기존에 질문했던 내용과 답안들은 목록에 저장되어 더욱 편리하다 ☺ 첫 화면에서는 채팅창에 질..
// DAO Interface Boolean loginConfirm(String id, String pwd); // Service Class public boolean loginConfirm(String id, String pwd) { return memberDao.loginConfirm(id, pwd); } // Mapper select decode(count(*),1,'true','false') as loginResult from universe_mem where id=#{id} and pwd=#{pwd} 해당 코드로 Junit Test를 돌렸는데 계속해서 해결되지 않는 오류가 발생😂 오류의 내용은 다음과 같았다. org.mybatis.spring.MyBatisSystemException: neste..
Spirng Framework에서는 다양한 Annotation을 활용할 수 있는데, 각 모듈에서 사용되는 Annotation이 다르기 때문에 각자 사용하는 Spring 모듈에서 사용되는 Annotation을 찾아서 활용하는 것이 중요하다. 내가 실제로 활용한 어노테이션과 공통적으로 자주 사용되는 어노테이션을 간단하게 정리해면서 복습하는 시간을 가졌다☺ @Bean 컨테이너에 등록될 빈을 지정 @Component Spring의 IoC 컨테이너에서 관리될 bean을 지정 @Service 비지니스 로직을 처리하는 service 클래스에 지정 @Repository 데이터베이스와 연동하여 데이터를 처리하는 DAO 클래스에 지정 @Controller Spring MVC의 컨트롤러 클래스에 지정 @RestControl..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb0ZQco%2Fbtr5oB1YUJA%2FBa3gjbg1H9Irdir5z3e5mK%2Fimg.png)
2월 말 쯤 JSP 웹에서 Spring으로 넘어와 같은 프로젝트를 진행하기 시작해서 어언 한 달째가 다 되어가고 있는 시점이라 왠지 중간 점검이 필요한 것 같은 느낌! 프로젝트를 진행하면서 중간중간 Spring에 대한 공부도 병행해야했고, 잦은 오류 발생과 마주하느라 뺏긴 시간에 더불어 슬럼프까지 더해져서 꽤나 많이 흐른 시간에 비해 진행 속도가 더딘 느낌이 들었기 때문😥 우선 JSP 웹 프로젝트에서 구현했던 기능들을 Spring annotaion 기반 코드로 변경하여 현재 대부분의 기능을 구현해내는 과정은 80% 정도 진행이 완료되었고, 생각보다 View에서도 수정할 내용이 많았어서 view page도 7-80% 구현이 완료된 상태! Spring Security를 통한 인증, 권한 부여에 대한 공부와 ..