식품분류별 가장 비싼 식품의 정보 조회하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr -- 식품분류별로 가장 비싼 식품 -- 분류, 가격, 이름 -- 과자, 국, 김치, 식용유만 출력 -- 가격 기준 내림차순 SELECT F.CATEGORY, F.PRICE AS MAX_PRICE, F.PRODUCT_NAME FROM FOOD_PRODUCT F JOIN (SELECT CATEGORY, MAX(PRICE) AS MP FROM FOOD_PRODUCT WHERE CATEGORY IN ('과자', '국', '김치', '식용유') GROUP BY CATEGORY..
가장 비싼 상품 구하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr -- 가장 높은 판매가 MAX SELECT MAX(PRICE) AS MAX_PRICE FROM PRODUCT; 가격이 제일 비싼 식품의 정보 출력하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr -- SELECT ID, 이름, 코드, 분류, 가격 -- MAX PRICE ORDER BY LIMIT SELECT * FROM FOOD_PRO..
서울에 위치한 식당 목록 출력하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr -- 식당 ID, 식당 이름, 음식 종류, 즐겨찾기수, 주소, 리뷰 평균 점수(ROUND 3) -- 서울에 위치(서울특별시 X) -- 평균점수 기준 내림차순, 즐겨찾기수 기준 내림차순 SELECT RI.REST_ID, REST_NAME, FOOD_TYPE, FAVORITES, ADDRESS, SCORE FROM REST_INFO RI INNER JOIN (SELECT REST_ID, ROUND(AVG(REVIEW_SCORE),2) AS SCORE FROM REST_REVIEW..
그룹별 조건에 맞는 식당 목록 출력하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr -- 가장 많이 쓴 리뷰 개수를 쓴 사람의 이름, 리뷰, 날짜 구하기 SELECT M.MEMBER_NAME, R.REVIEW_TEXT, DATE_FORMAT(R.REVIEW_DATE, "%Y-%m-%d") REVIEW_DATE FROM MEMBER_PROFILE M INNER JOIN REST_REVIEW R ON M.MEMBER_ID = R.MEMBER_ID WHERE R.MEMBER_ID IN -- 가장 많이 쓴 리뷰 개수를 쓴 사람 구하기 (SELECT MEMBER..
아래는 실패한 코드들 window.open("about:blank", "_self").close(); opener.open("about:blank", "_self").close(); window.open("about:blank", "_parent").parent.close(); window.open("", "_parent", ""); window.close(); window.top.close(); vue에서 해서 그런 건지, 아무리 해 봐도 먹히지 않았던 와중에 구글링에 성공해서 그 방법을 찾았다 var ret = window.open("about:blank", "_self"); ret.close(); 자기 자신의 페이지를 빈 페이지로 만든 뒤 그 변수를 이용해 닫으면 된다 이것도 URL을 통해 들어갔느..
HttpSession - 로그인 유지 //요청 매핑 애노테이션 적용 메서드에 HttpSession 파라미터 추가 @PostMapping public String form(LoginCommand loginCommand, Errors errors, HttpSession session) { ... } // 항상 HttpSession 추가 // 요청 매핑 애노테이션 적용 메서드에 HttpServletRequest 파라미터를 추가하고 // HttpServletRequest를 이용해서 HttpSession을 구함 @PostMapping public String submit ( LoginCommand loginCommand, Errors errors, HttpServletRequest req) { HttpSessio..
validator(Object target, Errors errors) - 첫 번째 파라미터로 전달받은 객체를 검증하고 오류 결과를 Errors에 담는다 - 검사 대상 객체의 특정 프로퍼티나 상태가 올바른지 검사 - 올바르지 않다면 Errors의 rejectValue() 메서드를 이용해 에러 코드 저장 String name = regReq.getName(); if(name == null || name.trim().isEmpty()) { errors.rejectValue("name", "에러 코드"); } validator(RegisterReqeust regReq, Errors errors) // errors 객체의 getFieldValue("name") 메서드를 실행해서 // 커맨드 객체의 name 프로..
Controller get 방식과 post 방식 @Controller public class HelloController { @GetMapping("/hello") public String hello(Model model, @RequestParam(value = "name", required = false) String name) { model.addAttribute("greeting", "안녕하세요, " + name); return "hello"; } @PostMapping("/hello") public String hello(Model model, @RequestParam(value = "name", required = false) String name) { model.addAttribute("gre..
MVC(Model - View - Controller) Pattern Model - Service, Dao - 애플리케이션 상태의 캡슐화 - 상태 쿼리에 대한 응답 - 애플리케이션의 기능 표현 - 변경을 view에 통지 View - .jsp - 모델을 화면에 시각적으로 표현 - 모델에게 업데이트 요청 - 사용자의 입력을 컨트롤러에 전달 - 컨트롤러가 view를 선택하도록 허용 // servlet-context.xml - redirect view >> view 이름에 "redirect:" 접두어를 붙이면 지정한 페이지로 redirect 됨 >> redirect:/board/list.html?pg=1 >> redirect:http://localhost/board/list.html?pg=1 @Controlle..
2908번: 상수 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 www.acmicpc.net 문제 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 개를 칠판에 써주었다. 그 다음에 크기가 큰 수를 말해보라고 했다. 상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 것이다. 두 수가 ..