localhost에 안
미해결
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
HelloSpringApplication 예하에 있는 main 함수를 run 했고, 첨부한 사진처럼 tomcat이 8080에 띄워졌다고 뜨는데, localhost 에 들어가보면 거부했다고 뜨네요. 와이파이 이슈인가요...?
- java
- spring
- mvc
- spring-boot
172만명의 커뮤니티!! 함께 토론해봐요.
미해결
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
HelloSpringApplication 예하에 있는 main 함수를 run 했고, 첨부한 사진처럼 tomcat이 8080에 띄워졌다고 뜨는데, localhost 에 들어가보면 거부했다고 뜨네요. 와이파이 이슈인가요...?
미해결
스프링 시큐리티 OAuth2
안녕하세요. 통합인증서버 - 클라이언트 - 백엔드서버 이런식으로 구성 되어 있는데요. 플로우 관해서 질문이 있습니다. client -> auth server : return url / client id 통합인증서버로 보내고 auth server -> client : auth id 통합인증서버에서 받고 client -> be server : client id / auth id 클라이언트에서 받고 be server -> auth server : client id / auth id 백엔드서버에서 통합인증서버로 보내고 auth server -> be server : access token / refresh token 백엔드서버에서 통합인증서버로 받고 be server -> client : access token / refresh token 백엔드서버에서 클라이언트 보내기 이런식으로 구성을 한다고 하더라구요. 저는 3번에서 바로 auth id를 통합인증서버로 보내고 토큰을 클라에서 받고 저장 그리고 백엔드 보내고 저장이라고 생각이 드는데요. 불필요한 작업이 추가로 하는거 같다라는 생각을 했는데요. 클라에서 auth id를 통합인증서버로 보낼때 get으로 보내서 보안 문제가 있어서 서버 투 서버로 보낸다고 하더라구요.(백앤드 서버에서 보내는 것만 받으려고) 어떠한 방식이 옳은건지, 저렇게 하면 보안적으로 더 좋은건지 잘 모르겠습니다. 제가 생각하는 방식으로 해도 되는건지.. 고견 부탁드립니다.
미해결
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] Member와 Order의 연관관계에서 궁금한 점이 있습니다. Member와 Order 테이블만 보고, 일대 다 양방향 연관관계인지 다대 일 양방향 연관관계인지 정하는 기준이 있을까요? 일대 다의 단방향 연관관계매핑은 사용하지 않는것이 좋다는건 기본편에서 들어서 배웠습니다. 그런데 왜? 양방향 연관관계는 사용하면 안되는건가요? Member에서 Order를 가진다고 문제될게 있나요?
미해결
김영한의 실전 자바 - 중급 2편
매개변수 이름을 element와 value로 구분하시는 이유가 있을까요? public interface Myset<E> { boolean add(E element); boolean remove(E value); boolean contains(E value); }
미해결
자바 ORM 표준 JPA 프로그래밍 - 기본편
안녕하세요 jpa 기본강의 서브쿼리 강의 10분 39초에서 말씀하시는 애플리케니션으로 끌고가야한다는 애플리케이션이 정확히 어떤의미인지 잘 모르겠습니다. 학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요.
미해결
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
강의 내용 대로 코드를 짰는데 localhost ::8080으로 연결하면 static 폴더에 있는 html이 아닌 template 폴더에 있는 html이 뜹니다. static 폴더에 있는 html을 실행시키면 localhost ::63342로 정적 페이지가 뜹니다. thymeleaf를 이용한 template 폴더에 있는 파일은 localhost ::8080/hello를 하면 제대로 뜹니다. 무엇이 문제인걸까요
해결됨
[React / VanillaJS] UI 요소 직접 만들기 Part 1
빈페이지로 나오는데 왜그런걸까요? https://github.com/fe-ui-study/ui-study
해결됨
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
섹션 4. 회원 도메인 개발 회원 기능 테스트 강좌 관련 질문입니다. @Test public void 회원가입() throws Exception { // given Member member = new Member(); member.setName("kim"); // when Long saveId = memberService.join(member); // then assertEquals(member, memberRepository.findOne(saveId)); } 위의 코드를 실행시켰을 때, insert문 쿼리가 왜 나가지 않는지는 이해를 했습니다. 하지만 select 쿼리가 왜 나가는지는 궁금합니다. 제가 생각한 흐름을 설명드리면, memberService의 join 함수를 실행해서 member 객체를 영속화하게 되면 1차 캐시에 해당 데이터가 저장이 될 것이고 동시에 쓰기 지연 SQL 저장소에 insert 쿼리문이 쌓입니다. 이때 쿼리문은 트랜잭션이 커밋되면 DB에 반영이 되지만 테스트 클래스에서는 트랜잭션이 롤백되기 때문에 insert 쿼리가 나가지 않게 됩니다. 이후 findOne 메소드를 실행할 때에는 DB에서 직접 찌르는 것이 아니라 1차 캐시에 저장되어 있기 때문에 1차 캐시에서 데이터를 가져와도 되기 때문에 select문이 나가지 않아도 된다고 생각했는데 실제 실행결과를 보니 select 쿼리문이 나가더군요.. 이유가 궁금합니다
미해결
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 순수 jdbc 강의 16분내용으로 코드실행하는데 매핑한 주소 모두 file not found가 뜹니다.. Identify and stop the process that's listening on port 8082 or configure this application to listen on another port.라고 콘솔에는 뜨는데 톰캣포트랑 h2포트랑 같아서 생기는 문제일까요?
미해결
처음 만난 리액트(React)
안녕하세요. 소플님. 강의 정말 잘 듣고 있습니다. 컴포넌트 합성과 추출에서 props에 관련하여 질문이 있어 질문을 드립니다. // Component 추출 전 function Comment(props){ return ( <div className = "comment"> <div className = "user-info"> <img className = "avatar" src = {props.author.avatarUrl}, alt = {props.author.name} /> <div className = "user-info-name"> {props.author.name} </div> </div> <div className = "comment-text"> {props.text} </div> <div className = "comment-date"> {formatDate(props.date)} </div> </div> ); } 첫 코드가 Component를 추출하기 전의 코드이고 /* Component 추출 후 */ // 1. Avatar Component 추출 function Avatar(props){ return( <img className = "avatar" src = {props.user.avatarUrl}, alt = {props.user.name} {/* 재사용성을 측면을 높이기 위해 보편적인 단어인 user를 사용 */} /> ); } // 2. UserInfoName Component 추출 function UserInfoName(props){ return( <div className = "user-info-name"> {props.user.name} </div> ); } // 3. UserInfo 추출하기 function UserInfo(props){ return( <div className = "user-info"> {/* 이미 추출한 Avatar Component도 적용 */} <Avatar user = {props.user} /> {/* 이미 추출한 UserInfoName Component도 적용 */} <UserInfoName user = {props.user}/> </div> ); } // 4. CommentText 추출하기 function CommentText(props){ return( <div className = "comment-text"> {props.text} </div> ); } // 5. CommentDate 추출하기 function CommentDate(props){ return( <div className = "comment-date"> {formatDate(props.date)} </div> ); } // 6. 추출한 Component들로 Comment 재합성 function Comment(props){ return( <div className = "comment"> <UserInfo user = {props.user}/> <CommentText text = {props.text}/> <CommentDate date = {props.date}/> </div> ); } 이 코드가 강의에서 작성해주신 코드를 제 나름대로 완성한 컴포넌트를 추출한 형태입니다. userData가 아래의 형태라고 가정하겠습니다. const commentData = { user: { avatarUrl: "https://example.com/avatar.jpg", // 아바타 이미지 URL name: "Soaple" // 사용자 이름 }, text: "안녕 리액트!", date: new Date() // 댓글 작성 날짜 }; 처음 Comment Component에 Props로는 CommentData 자체가 전달될 것이고, 그 다음 UserInfo의 props로는 props.user, 여기서는 아래의 commentData.user가 전달이 되는 것까지는 논리적 흐름대로 이해를 했습니다. // UserInfo가 받은 props(commentData.user) user: { avatarUrl: "https://example.com/avatar.jpg", name: "Soaple" } 그런데 Avatar의 props로는 props.user가 전달되어야 하는데 그렇게 되면 Avatar에 전달하는 props가 commentData.user.user가 되어 전달할 수 없지 않나요? UserInfoName도 commentData.user.user 가 되어 이상하다는 생각이 드는데... chatGPT나 뤼튼과 AI에 물어봐도 이상이 없는 정상 코드라는 답변을 받았습니다. React에서 props가 굉장히 중요하다고 강조하신 만큼 이 부분은 꼭 집고 넘어가야겠다는 생각이 듭니다. 답변 부탁드립니다!
미해결
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] MemberServiceIntegrationTest 에서 회원가입 코드를 실행하면 MemberController 에서 오류가 발생합니다. 이유가 무엇일까요?
미해결
Next + React Query로 SNS 서비스 만들기
영상을 3:29 이 부분을 똑같이 하려고하는데, http://localhost:3000/home 로 접속하면 파일이 없다고 합니다.. app 안에 (afterLogin) (beforeLogin)로 나뉘고, home 폴더를 만들어서 layout.tsx 와 page.tsx를 만들어 홈페이지와 홈 레이아웃을 작성하여 루트 레이아웃과 층계별 확인하려고 http://localhost:3000/ 를 들어가면 루트레이아웃은 잘나오는데 http://localhost:3000/home 는 페이지가 없다고 나옵니다.. (afterLogin) 안이 아니라 밖으로 app/home/layout.tsx 와 page.tsx가 있어야만 http://localhost:3000/home 가 잘나오는데 왜이럴까요?
해결됨
[React / VanillaJS] UI 요소 직접 만들기 Part 2
[셀렉트박스 (3/5) headless #2 hook 적용] 부분에서 getTriggerProps/getListProps 처럼 각 컴포넌트가 필요한 것들을 useCallback으로 감싸고 함수형태로 제공해주셨는데요, 아래처럼 useMemo를 이용해서 객체에 값을 담아서 전달해주는 방식은 다른 걸까요?? const getTriggerProps = useCallback( () => ({ selectedItem: items[selectedIndex], toggle, }), [selectedIndex, items, toggle] ); const TriggerpropsValue = useMemo(() => { return { selectedItem: items[selectedIndex], toggle, }; }, [items, selectedIndex, toggle]);
해결됨
Next + React Query로 SNS 서비스 만들기
채팅을 계속 올려서 몇개월 치를 사용자가 본다면 위로 채팅 기록이 엄청 쌓일텐데, 실무에서 메모리가 넘치는걸 방지하는 방법으로 사용하시는게 있는지 어떤걸 사용하시는지 궁금합니다. 찾아보니 react-window 같은 라이브러리를 사용해서 실제 랜더링 하는 요소 갯수를 제한하고 스크롤을 유지 시켜서 성능 향상을 하는 글을 봤습니다. 실제로 실무에서 이런 방법을 주로 쓰는지 궁금합니다.
미해결
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
h2 db 연결은 되었는데 member테이블 생성이 안됩니다. spring: #띄어쓰기 없음 datasource: #띄어쓰기 2칸 url: jdbc:h2:tcp://localhost/~/jpashop #4칸 username: sa password: driver-class-name: org.h2.Driver jpa: #띄어쓰기 2칸 hibernate: #띄어쓰기 4칸 ddl-auto: create #띄어쓰기 6칸 properties: #띄어쓰기 4칸 hibernate: #띄어쓰기 6칸 show_sql: true #띄어쓰기 8칸 format_sql: true #띄어쓰기 8칸 logging.level: #띄어쓰기 없음 org.hibernate.SQL: debug #띄어쓰기 2칸 # org.hibernate.type: trace #띄어쓰기 2칸 ```
해결됨
Next.js 시작하기
인텔리센스 단축키 (Intellisense shortcut) ¶ https://stackoverflow.com/questions/51341555/visualcode-shortcut-to-display-autocomplete-list-before-typing-in-macos 인텔리센스 사용시 한영 전환(ctrl + space)와 스팟라이트(cmd + space) 단축키와 충돌이 발생하므로 (option + esc) 조합을 사용합니다. 메인 메뉴 Code > Preferences > Keyboard Shortcuts (cmd + K, cmd + S)에서 단축키(Trigger Suggest)를 (ctrl + .)로 변경할 수 있습니다.
해결됨
[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
새 pc에서 강의를 듣는 중에 yarn dev 후 웹페이지에서 이런 에러가 뜹니다 ㅜㅜ node_modules 삭제 후 재설치 해도 이렇게 뜨는데 어떻게 해결해야 할까요?
해결됨
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발 섹션 4 회원 기능 테스트 강의 질문입니다. @RunWith(SpringRunner.class) @SpringBootTest @Transactional class MemberServiceTest { @Autowired MemberService memberService; @Autowired MemberRepository memberRepository; @Test public void 회원가입() throws Exception { // given Member member = new Member(); member.setName("kim"); // when Long saveId = memberService.join(member); // then assertEquals(member, memberRepository.findOne(saveId)); } @Test public void 중복_회원_예외() throws Exception { // given Member member1 = new Member(); member1.setName("kim"); Member member2 = new Member(); member2.setName("kim"); // when & then assertThrows(IllegalStateException.class, () -> { memberService.join(member1); memberService.join(member2); }); } } Junit5를 사용했다는 점을 제외하고는 강의와 똑같이 코드를 작성했습니다. 이때 회원가입관련 테스트에서 강의에서는 insert문이 나가지 않지만 저는 따로 Rollback을 false로 설정하지 않아도 insert문이 실행되더군요. 이유가 궁금합니다. 사진에서 확인할 수 있듯이 Rollback이 되었기 때문에 트랜잭션이 커밋되지 않아 insert 쿼리가 발생하면 안될 것 같은데 왜 실행되는지 이유를 모르겠습니다.
해결됨
Supabase, Next 풀 스택 시작하기 (feat. 슈파베이스 OAuth, nextjs 14)
api/(site)/page.tsx 에 actions/todo/todo.actions.ts를 사용하고 하위컴포넌트들에서는 ex) api/(site)/compoents/...container.ts 내부에서는 hook을 임포트한것들이 apis/todo-no-rls.ts를 사용하면 될까요? *위 예시는 강의에서 다룬 파일만을 예를 들었보았습니다.
미해결
자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
왜 dfs로 풀어야하는지 잘 이해가 되지않습니다. 집합의 일부분을 사용하고 value의 값이 가장 먼저 나오는 node를 찾으면 되는 문제로 판단하고 bfs로 제출했더니 런타임오류가 발생했습니다. 아직 개념이해가 부족해 잘못된 접근 방식인건지 잘모르겠습니다. 관련해서 설명부탁드겠습니다.