프로그래밍 패러다임은 프로그래밍 언어에도 자연스럽게 반영되는데, C언어는 대표적인 절차지향 언어이며, 자바는 대표적인 객체 지향 언어다. 이 두 패러다임을 모두 수용하기도 하는데, 파이썬이 이런 멀티 패러다임 언어라고 볼 수 있다. 현재 가장 대중적인 프로그래밍 패러다임은 객체 ...
Controller, service, repository
Controller 해당 요청 url에 따라 적절한 view와 mapping 처리 @Controller API와 view를 동시에 사용하는 경우에 사용 대신 API 서비스로 사용하는 경우는 @ResponseBody를 사용하여 객체를 반환한다. view(화면) return이 주목적 @R...
Resulttype
resultType이 int? 객체? 관련 글 : Dao와 mybatis select count(USER.USERID) select avg(USER.USERSTAR) resultType에서 select count는 int, select avg는 객체로 반환이 되는걸 보고 왜 하나는 int로 설정하고 왜 다른...
단축키
단축키 정리 alt + 1(숫자 1) : project 창 띄우기 End 키를 누른 다음 Shift+Home : 한 줄의 끝부터 시작까지 리팩토링 Ctrl + Alt + L : Reformat code ctrl + alt + O : 필요없는 import 지우기 검색/교체/이동 Shift + Shift : 파일, 클래스, 설정 등 키워드에...
Unsatisfied dependency expressed through constructor parameter
Unsatisfied dependency expressed through constructor parameter available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {} 블로그를 보니 어노테이션 문제라는 것을 알 수 있다...
Method 분리
메소드 분리 예를 하나 들어본다. userCount와 userStar 값을 담는 userCountAndStar 메소드가 있다고 가정한다. return 되는 결과물이 2개 이상 있을 때, 2개를 같이 쓰는 곳에서만 쓸 수 있는 재사용성이 없는 메소드가 된다. userCount가 필요한곳에서는 userCount만 불러오고 use...
Mapping
기존 project에서 내가 원래 작성했던 코드랑 달라 궁금증이 생겨서 검색해보게 되었다. 그리고 코드를 변경하게 되었다.😄 *Notion 참고 Mapping 특정 uri로 요청을 보내면 Controller에서 어떠한 방식으로 처리할지 정의 한다. 이때 들어온 요청을 특정 메서드와 매핑하기 위해 사용하는 것이 @Req...
Escapexml
fn:escapeXml()이란 XML마크업 문자로 인식될 문자열을 삭제한다. [JSTL] Functions Tag - fn:escapeXml() 사용하기 마크업이란 : ex) <script> <div> 블로그를 보면 fn:escapeXml()이란 글들은 많지만 왜 문자열을 삭제하는 건지는 나...
Git reset 취소하기
git reset 취소하기 git log에서 바로 이 전 commit으로 가야하는데 2개 전으로 돌아가게 되면서 reset을 취소해야 할 상황이 왔다. $ git reflog 를 입력하면 아래와 같이 보여진다. (아래는 예시임) a123456 HEAD@{0}: reset: moving to a1234567891011121314 b123456 HEA...
Dao와 mybatis
DAO와 MyBatis Mapper 파일의 저장경로 설정 Mapper란 MyBatis에서 SQL 문을 저장하는 존재를 말한다. Mapper를 저장할 폴더 mappers를 src/main/resources 에 추가해준다. DAO UserDAO 쿼리문에 던져주는 정보가 매개변수(User user) 부분이고 해당 정보를 토대...