RestController에서 redirect를 반환했는데 문자열만 보인다
Spring MVC에서 redirect:/done이 본문에 보인다면 뷰 이름과 ResponseBody 처리를 구분한다. 격리 MockMvc에서 Controller의 302, RestController의 200 본문, ResponseEntity의 명시적 303·Location을 비교하고 브라우저 이동은 검증 범위에서 분리한다.
빌드노트
검색어를 입력해 글을 찾아보세요.
총 480개의 글
Spring MVC에서 redirect:/done이 본문에 보인다면 뷰 이름과 ResponseBody 처리를 구분한다. 격리 MockMvc에서 Controller의 302, RestController의 200 본문, ResponseEntity의 명시적 303·Location을 비교하고 브라우저 이동은 검증 범위에서 분리한다.
주소의 # 뒤 값은 브라우저 fragment로 남고 페이지를 가져오는 요청 대상에서는 빠진다. 새 브라우저와 loopback 서버에서 location 값과 요청 줄을 대조하고, 서버에 필요한 값을 query나 JSON 본문으로 명시하는 기준을 설명한다.
부모 margin이 0이어도 첫 자식의 위쪽 margin은 부모 밖에서 합쳐질 수 있다. 실제 좌표와 화면으로 경계를 확인하고, 카드 내부 여백은 padding으로 정할지 자식 margin을 flow-root 안에 유지할지 선택한다.
문자열로 정확히 만든 BigDecimal도 1/3의 정확한 몫은 담을 수 없다. JShell에서 1/2와 1/3을 비교하고, 10/3으로 scale 2와 precision 2의 차이를 확인한다. UNNECESSARY와 0으로 나누기의 실패도 구별한다.
ETag가 일치한 GET의 304에는 JSON 본문이 없다. 실제 200·304·변경 후 200의 14→0→14바이트와 파싱 오류를 비교하고, 짧은 클라이언트 분기로 저장 본문 재사용과 조건부 헤더 없는 재요청을 구별한다.
같은 ETag를 읽은 두 클라이언트가 차례로 저장할 때 200/200과 200/412의 최종 문서를 비교했다. 서버의 강한 ETag 검사와 원자적 갱신, 412 뒤 초안을 보존하고 다시 읽는 흐름을 설명한다.
Stream.of(int[])는 배열 한 개를 담는 Stream<int[]>를 만든다. 같은 세 값으로 원소 수·요소 타입·합계와 Integer[]의 차이를 직접 비교하고, 숫자별 연산에는 Arrays.stream을, Integer 스트림이 필요할 때는 boxed()를 선택한다.
CDPATH로 디렉터리를 찾은 cd는 성공해도 경로를 표준출력에 쓴다. cd와 pwd를 함께 명령 치환으로 받았을 때 생기는 두 줄을 확인하고, 자식 안에서 CDPATH를 비우거나 ./project로 현재 위치의 경로를 지정한다.
텍스트 입력의 value를 바꿔도 reset 기준은 그대로일 수 있다. 현재값·defaultValue·value 속성을 비교하고, 편집 여부에 따른 기본값 반영 차이와 두 값을 함께 갱신할 시점을 설명한다.
curl의 connect-timeout은 연결 이후의 응답 대기를 제한하지 않는다. 헤더·본문을 각각 2초 늦춘 로컬 서버에서 max-time 유무의 종료 코드와 시간을 비교하고, 재시도마다 다시 시작하는 제한과 retry-max-time을 넘길 수 있는 진행 중 전송을 구별한다.
PATH에서 새 파일이 검색돼도 같은 Bash는 사라진 옛 경로를 기억할 수 있다. type과 hash로 판별하고, hash -d·hash -r·checkhash의 적용 범위를 실제 파일 이동 실험으로 비교한다.
@CacheEvict는 기본적으로 정상 종료 뒤에 제거하므로 예외 호출에서는 키가 남는다. 실제 Spring 프록시와 로컬 캐시에서 정상·예외, 기본값·beforeInvocation=true, 자기 호출을 비교하고 실패해도 제거할 정책인지 판단한다.