묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결
김영한님 강의 JPA 활용1편- 회원목록조회 관련 질문입니다
목록 조회를 하면서 컨트롤러도 맞게 구성했고 @GetMapping(value = "/members")public String list(Model model){List<Member> members = memberService.findMembers();model.addAttribute("members", members);// log.info(members.get(0).getId().toString()); return "members/memberList";}html은 그대로 붙여넣기를 했는데 <!DOCTYPE HTML><html xmlns:th="http://www.thymeleaf.org"><head th:replace="fragments/header :: header" /><body><div class="container"> <div th:replace="fragments/bodyHeader :: bodyHeader" /> <div> <table class="table table-striped"> <thead> <tr> <th>#</th> <th>이름</th> <th>도시</th> <th>주소</th> <th>우편번호</th> </tr> </thead> <tbody> <tr th:each="member : ${members}"><!-- <td th:text="${member}"></td>--><!-- 멤버도 들어오는데 id에만 접근이 안된다 getter있는데 왜 안된지--> <td th:text="${member.id}"></td> <td th:text="${member.name}"></td> <td th:text="${member.address?.city}"></td> <td th:text="${member.address?.street}"></td> <td th:text="${member.address?.zipcode}"></td> </tr> </tbody> </table> </div> <div th:replace="fragments/footer :: footer" /> </div> <!-- /container --></body></html>member의 id에 접근할 수 없다는 에러가 나옵니다 컨트롤러에서 중간에 log.info(members.get(0).getId().toString());로그를 찍어본결과 하나입력했을 떄 1이 나오고 그리고 html에서도 객체 주소가 나와서 전달은 되는것 같은데 접근이 안된다고 합니다<!-- <td th:text="${member}"></td>--> =>주소나옴 Member클래스에 롬복으로 getter setter도 넣었는데 왜 접근이 안된다고 나올까요? @Entity@Getter @Setterpublic class Member {@Id @GeneratedValue @Column(name = "member_id")private Long id;private String name;@Embedded private Address address;@OneToMany(mappedBy = "member")private List<Order> orders = new ArrayList<>();}
-
미해결실전! 스프링 데이터 JPA
강의 수강 중 질문이 있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 강의 내용을 듣고 제가 따로 프로젝트를 만들어서 비교를 해 보았는데@Entity @DynamicInsert @Getter @NoArgsConstructor(access = AccessLevel.PROTECTED) public class User { @Id private String id; // 이메일 형식 @Column(nullable = false) private String password; @Column(nullable = false) private String name; @Column(nullable = false, unique = true) private String nickname; @Column(nullable = false, unique = true) private String phone; @CreationTimestamp @Column(nullable = false) private LocalDateTime createAt; @Enumerated(EnumType.STRING) @ColumnDefault("'NORMAL'") private UserStatus status; // 이미지 변수 (프로필 사진) public User(String id, String password, String name, String nickname, String phone) { this.id = id; this.password = password; this.name = name; this.nickname = nickname; this.phone = phone; } }@Test public void basicCRUD() { User user1 = new User("user1","123","kk","sssss","123213213"); User user2 = new User("user2","1321","dd","dddd","21312412412421"); userRepository.save(user1); userRepository.save(user2); //단건 조회 검증 User findUser1 = userRepository.findById(user1.getId()).get(); User findUser2 = userRepository.findById(user2.getId()).get(); assertThat(findUser1).isEqualTo(user1); assertThat(findUser2).isEqualTo(user2);테스트를 실행 시켜보니Expected :com.clickpick.domain.User@51577fc8Actual :com.clickpick.domain.User@4dbeae45 오류가 발생하였습니다.강사님의 강의를 따라했을 땐 동일하다고 하였는데 저의 예시로 해보니 동일하지 않다고 나오는데 어느부분에서 차이점이 생긴지 알고싶습니다 참고로 repository는public interface UserRepository extends JpaRepository<User, String> { } 입니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-M 질문 드립니다!
스택 말고 vector를 이용해서 이렇게 풀었는데 꼭 스택을 사용 해야 하는 건가요??#include <iostream> #include <vector> using namespace std; int n; int cnt = 0; int main() { cin >> n; for (int i = 0; i < n; i++) { string s; cin >> s; vector<char> arr; for (int j = 0; j < s.length(); j++) { if (arr.empty() || arr.back() != s[j]) { arr.push_back(s[j]); } else { arr.pop_back(); } } if (arr.empty()) cnt++; } cout << cnt; return 0; }
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1주차 개념#7에서 재귀함수의 시간복잡도를 구할 때 메인 로직은 어떤 기준으로 결정하는건가요?
안녕하세요.재귀함수의 시간복잡도를 구할 때 (메인로직)*(함수호출횟수)라고 알려주셨는데, 여기에서 메인 로직은 어떤 기준으로 결정되는건가요?감사합니다!
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
뷰라는 용어의 범위에 대하여 + 강의 자료 @PathVariable 오타
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]강의 내용들을 보다 보면 '뷰'라는 용어가 View 클래스를 상속받은, 예를 들어 ThymeleafView 클래스의 객체 등을 뜻하는 것 같기도 하고, 가끔은 templates 디렉터리의 하위에 있는 hello.html 같은 뷰 템플릿들을 뷰라고 말씀하시는 것 같기도 했는데 맞나요? 제가 헷갈렸던 건지 모르겠네요.. 뷰라는 용어의 범위를 넓게 생각해도 될까요? 아래는 오타인 것 같아서 제보합니다.6. 스프링 MVC - 기본 기능(v20231202).pdf 24페이지에 있는 @PathVariable 관련 내용인데 @RequestParam 코드가 있습니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemberServiceIntegrationTest 테스트 오류 발생
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]https://drive.google.com/file/d/1p8Pzk72m4puS8geRyfhQr4N1LEmijVeI/view?usp=drive_link멤버서비스인티그레이션테스트에서 오류가 발생합니다.오류메시지는org.springframework.transaction.TransactionSystemException: JDBC rollback failedCaused by: java.sql.SQLException: Connection is closedjava.lang.IllegalStateException: java.sql.SQLException: Connection is closed와 같이 발생합니다.
-
미해결처음 만난 리액트(React)
[미니블로그] MainPage.jsx의 PostList 컴포넌트 prop관련질문
안녕하세요. 질 높은 강의 덕분에 많은 도움 받고 있습니다. 다름이아니라 미니블로그를 학습하며 이해가 되지 않는 부분이 있어서 질문드립니다. 44번째줄의 navigate(`/post/${item.id}`) 에 대한 질문입니다.item.id값으로 data.id의 값이 들어가는 것으로 확인했습니다. 제가 궁금한 것은 어떠한 방식으로 data.id의 값이 item.id값으로 들어가는지 도무지 이해가 되질 않습니다. 관련해서 답변주실 수 있으실까요?
-
미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
redirectionLogic 에러관련 질문입니다
안녕하세요 코드팩토리님! 좋은 강의 잘 듣고 있습니다. 현재 115강까지 수강한 상태이고 go_router.dart 파일 안에 redirectionLogic부분에 에러가 발생하였습니다. 강사님과 달리 현재 go router 7 버전을 사용하고 있습니다. 버전 차이로 인해 추가로 수정해야하는 부분이 있거나 혹은 제가 실수한 부분이 있다면 알려주시면 감사하겠습니다 :) go_router.dartauth_provider.dartString? redirectLogic(GoRouterState state) { final UserModelBase? user = ref.read(userMeProvider); final logginIn = state.location == '/login'; if (user == null) { return logginIn ? null : '/login'; } // user is not null // UserModel // there is user information and // user is logging in or at the SplashScreen, // move on to home screen if (user is UserModel) { return logginIn || state.location == '/splash' ? '/' : null; } // UserModelError if (user is UserModelError) { return !logginIn ? '/login' : null; } return null; } 코드 실행 시 발생한 에러 메시지 입니다
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
application.yml 포트번호
spring: datasource: url: "jdbc:mysql://localhost:3307/library" username: "root" password: "kimdh991234@" driver-class-name: com.mysql.cj.jdbc.Drivermysql을 설치할때 3306포트가 사용중이어서 설치가안되어서 3307로 포트를 설정하고 설치했더니 기존코드에서는 에러가 발생했습니다 그래서 포트번호를 달아줬더니 에러없이 동작하는데 3306포트로 동작하게 되면 생략이 가능한건가요?mysql 기본 포트세팅이 3306이어서 그런걸까요?
-
해결됨Flutter 앱 개발 기초
Dartpad 코드스니펫 오류
강의에 있는 모든 코드스니펫 Dartpad에 접속하면 아래와 같은 에러로 기본 코드만 보입니다.회사 방화벽이나 프록시 문제일까요?Error loading gist: Exception: Unable to load gist (403 rate limit exceeded}) 아래 코드만 나오네요.void main() { for (int i = 0; i < 10; i++) { print('hello ${i + 1}'); }}
-
미해결처음 만난 리액트(React)
React 18에서 ReactDOM.render()를 지원하지 않는 문제
Chapter 06 실습 문제에서 다음과 같은 경고와 함께 콘솔 로그가 나오지 않았습니다. Warning: ReactDOM.render is no longer supported in React 18. Use createRoot instead. Until you switch to the new API, your app will behave as if it's running React 17. Learn more: https://reactjs.org/link/switch-to-createroot React 18버전에서는 ReactDOM에 렌더링하는 방식이 아니라 root를 먼저 만들고 root의 렌더링을 하는 방식으로 바뀌었다고 합니다.. 먼저, 실습 자료에서 따라 작성했던 코드입니다. import React from 'react'; import ReactDOM from 'react-dom'; import './index.css'; import reportWebVitals from './reportWebVitals'; import NotificationList from "./chapter_06/NotificationList"; ReactDOM.render( <React.StrictMode> <NotificationList /> </React.StrictMode>, document.getElementById('root') ) reportWebVitals(); Notification element는 순서대로 제대로 출력되는걸 보아서 JSX element는 제대로 작성한 것 같았고 콘솔 로그가 나오지 않으며 위에 작성한 오류만 나와 react 버전 문제인가 해서 공식문서를 참조해 다음과 같이 변경했습니다. import React from 'react'; import { createRoot } from 'react-dom/client'; import './index.css'; import reportWebVitals from './reportWebVitals'; import NotificationList from "./chapter_06/NotificationList"; const container = document.getElementById('root'); const root = createRoot(container); root.render( <NotificationList /> ); reportWebVitals(); ReactDOM을 직접 사용하지 않고, root를 만든 다음 root에서 렌더링을 하는 방식으로 변경하라고 해서 이렇게 했더니 콘솔 로그가 제대로 나왔습니다. 그런데 문제가 있는게 이전에는 Notification element가 1, 2, 3 순서대로 출력이 되었는데 root에 직접 렌더를 하니 1번과 2번 element가 동시에 출력되는 문제가 생깁니다.. 로그를 확인해보니 1번 2번 element는 componentDidMount() 이후 Update()를 실행하지 않고 WillUnmount()가 되어버립니다. WillUnmount() 이후에 한 번 더 DidMount()가 되고, Update()로 넘어가지만, 이 이후에도 1번 2번이 같이 호출되고, 그 다음에 3번이 호출됩니다. 3번 역시 DidMount() 이후 Update() 없이 WillUnmount()되고 다시 DidMount()가 됩니다 3번은 Update()되지 않습니다.. 이 이후에는 공식문서에서 해결책을 찾을수가 없어서 문의드립니다..
-
해결됨개발자를 위한 쉬운 도커
도커 볼륨 경로 지정
각 서비스들 마다 볼륨을 지정하는 경로가 정해져 있나요?강의에서는 postgresql을 사용했고 /var/lib/postgresql/data 를 볼륨위치로 지정한것은 해당 위치가 table 내용을 저장하는 위치라서 그런건가요? 그럼 mysql 이나 redis등 다른 db의 경우는 각각 경로가 지정되어있는건지 궁금합니다. 그리고 어느 경로로 지정할지는 어떻게 알 수 있나요?
-
미해결
피그마 프레임 복제 시
ux/ui 시작하기 피그마 입문 수업 중 듣는 중 [예제실습 기본기능 활용한 채팅 ui 만들기]에서채팅 목록 중 파일 첨부 화면을 만들때도형 프레임을 복제 시 가로로 복사가 되지 않고 계속 아래로 복사가 되는 이유가 뭔지 궁금합니다.
-
해결됨
코드 질문
public void increment() { if (count >= max) { System.out.println("최대값을 초과할 수 없습니다."); return; } count++; }이 코드를 public void increment(){ if(max > count) count += 1; else System.out.println("최대값을 초과할 수 없습니다."); }이렇게 작성해도 될까요?두가지 방식에 차이가 있나요?
-
미해결CAN 통신 - 자동차 신입이 알아야 할 모든 것
메세지 ID
안녕하세요 메세지의 ID 길이에 따라 Std tormat (11bit), Ext. format (29bit) 나누고 모두 송신 수신 할수 있다고 하는데 이렇게 만들어 놓은 이유가 궁금 합니다. 감사합니다.
-
해결됨Next + React Query로 SNS 서비스 만들기
styled-components 적용중에 질문있습니다.
안녕하세요 강사님 강의 잘 듣고 있습니다! 항상 좋은 강의와 친절한 답변 감사드립니다.스타일 컴포넌트 적용 중에 궁금증이 생겼는데 검색을 통해서는 명쾌한 답변이 나오지 않아서 질문드립니다.아래 첨부 드린 코드와 같이 스타일 컴포넌트를 적용하려면 use client로 하고 page.tsx 에서 import 해서 사용해야 하는데혹시 이렇게 했을때 강사님이 사용하신 CSS Modules에 비해 안 좋은점이 있을까요?use client를 import해서 사용하다 보니 css modules에 비해 속도가 느리다던가서버 컴포넌트에 클라이언트 컴포넌트로 작성된 스타일을 적용시킴으로서 악영향이 있을까 걱정되어서 질문 드립니다.'use client' import styled from "styled-components" export const Container = styled.div` background-color: ${({theme}) => theme.color.blue2}; `;import { Container } from "./home.styles" export default function Home() { return ( <Container>안녕하세요</Container> ) };
-
해결됨개발자를 위한 쉬운 도커
멀티 스테이지 빌드 COPY 명령어 질문
멀티 스테이지 빌드 강의에서 사용된 Dockerfile.multistage에 관한 질문입니다!두 번째 스테이지(openjdk:11-jre-slim)에서 사용된COPY --from=build /app/target/*.jar ./app.jar에서 해당 명령어를COPY --from=build /app/target/*.jar ./라고 작성하면 안되는건가요? COPY 명령어는 로컬 컴퓨터에 있는 파일을 도커 컨테이너 내부 파일 시스템에 복사하는 명령어로 알고 있고, 명령어에 입력되는 값은 복사에 필요한 디렉토리를 설정하는 것으로 알고 있습니다. 1) 도커 컨테이너의 루트 디렉토리에 app.jar 파일을 복사하는 용도라면 위와 같이 작성해도 되는게 아닌지 궁금합니다!2) 또한 COPY 명령어의 처음 값으로 나오는 /app/target/*.jar에서 *.jar가 .jar로 끝나는 모든 파일을 지칭하는 것인지 궁금합니다! Maven으로 빌드시 생성되는 결과물이 여러개여서 그런건가요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
AbstractGatewayFilterFactory 적용 문제
현재 spring 3.2 버전에서 강의를 따라가고 있습니다. AbstractGatewayFilterFactory를 찾지 못하는 것 같습니다. 혹시 해결방법이 있을까요
-
해결됨Next + React Query로 SNS 서비스 만들기
styled-components 적용중에 질문 있습니다..
안녕하세요 강사님 강의 잘 듣고 있습니다! 항상 좋은 강의와 친절한 답변 감사드립니다.스타일 컴포넌트 적용 중에 궁금증이 생겼는데 검색을 통해서는 명쾌한 답변이 나오지 않아서 질문드립니다.아래 첨부 드린 코드와 같이 스타일 컴포넌트를 적용하려면 use client로 하고 page.tsx 에서 import 해서 사용해야 하는데혹시 이렇게 했을때 강사님이 사용하신 CSS Modules에 비해 안 좋은점이 있을까요?use client를 import해서 사용하다 보니 css modules에 비해 속도가 느리다던가서버 컴포넌트에 클라이언트 컴포넌트로 작성된 스타일을 적용시킴으로서 악영향이 있을까 걱정되어서 질문 드립니다.'use client' import styled from "styled-components" export const Container = styled.div` background-color: ${({theme}) => theme.color.blue2}; `;import { Container } from "./home.styles" export default function Home() { return ( <Container>안녕하세요</Container> ) };
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
7강 웹페이지 만들기 질문(item-service)
본 강의 마지막 편인 웹 페이지 만들기에서 잘 되다가 addForm(상품등록)부터 white page에러가 뜨면서 안들어가집니다. 강의를 보고 다시 확인도 해봤는데 같은 부분에서 오류가 나서 접속이 안됩니다. 에러로 보아 addForm에 문제가 있는 것 같은데 도무지 오류를 찾을 수가 없어 질문 남깁니다. 구글 드라이브에 파일 압축해서 올려놓았습니다. https://drive.google.com/file/d/1Sq8rgY-2ZwPEoD8KaAeIfdXAPPJ-9NsT/view?usp=drive_link