묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[2026년 출제기준] 웹디자인개발기능사 실기시험 완벽 가이드
구동이 안되요
구동이 안되요 .items{ overflow: hidden; } .items > div{ height: 200px; float: left; box-sizing: border-box; } .news{ width: 400px; } .tab-inner{ } .tab-inner .btn{} .tab-inner .btn span{} .tab-inner .tab{} .tab-inner .tab a{ display: block; } .tab-inner .tab a b{ float: right; } 똑같이 따라 했는데 안되네요
-
미해결실전! Querydsl
조인과 패치조인
queryDsl이전의 강의들은 tuple사용하지 않았습니다. 그래서 조인시에select m from Member m join m.team t 이렇게 했지select m,t from Member m join m.team t 이렇게 하지 않았습니다.패치 조인이란건 프록시객체를 초기화 해서 한번에 다 가져오는 join이라고 배웠습니다. 하지만 이런식으로 하면 loaded = true라고 나옵니다.그러면 사실상 위의 쿼리와밑의 fetch join의 차이가 무엇인지 궁금합니다. 요점은select m,t from Member m join m.team t와select m from Member m join fetch m.team는 멤버의 team의 프록시가 생기지 않는다는 결과는 같은데무엇이 다른 지 궁금합니다.
-
해결됨[개념은 호옹~, 실습 빡] 스프링 부트, 입문!
8강 듣고있는데요
인텔리제이에선 에러 없이 잘된거 같은데.. 갑자기 홈페이지 연결이 안되네요. 에러코드도 없고 뭘 봐야될지 잘 모르겠습니다. 바뀐건 제 위치만 바뀌었는데 공유 와이파이가 바뀌어도 이럴수 있나요?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
해쉬태그 검색 응용관련 질문입니다.
안녕하세요 제로초님 강의 잘듣고있습니다.강의에서 설명해주신 해쉬태그 검색기능을 저는 응용해서 포스트의 컨텐츠내용 전체를 포함해서 검색하는 기능을 구현하고 있습니다.근데 다음과 같이 router를 구현하니 비어있는 포스트를 반환하더라고요.그래서 해당 기능을 구현하려면 아래 코드에서 어떤 부분이 문제인지 피드백좀 부탁드리겠습니다. 참고 코드와 post테이블의 구조 함께 첨부하겠습니다.router.get('/:tag', async (req, res, next) => { // loadHashtagPostsAPI / GET /hashtag/1 try { const where = {}; if (parseInt(req.query.lastId, 10)) { where.id = { [Op.lt]: parseInt(req.query.lastId, 10)}; where.title ={ [Op.like]: "%" + decodeURIComponent(req.params.tag) + "%" }; // 추가코드 where.recipes ={ [Op.like]: "%" + decodeURIComponent(req.params.tag) + "%" }; // 추가코드 } const posts = await Post.findAll({ where, limit: 10, order: [['createdAt', 'DESC']], include: [{ model: Hashtag, where: { name: decodeURIComponent(req.params.tag) }, }, { model: User, attributes: ['id', 'nickname'], }, { model: User, as: 'Likers', attributes: ['id'], }, { model: Comment, include: [{ model: User, attributes: ['id', 'nickname'], }], }, { model: Image, }] }); res.status(200).json(posts); } catch (error) { console.error(error); next(error); } });const DataTypes = require('sequelize'); const { Model } = DataTypes; module.exports = class Post extends Model { static init(sequelize) { return super.init({ title: { type: DataTypes.TEXT, allowNull: false, }, desc: { type: DataTypes.TEXT, }, ingredient: { type: DataTypes.TEXT, allowNull: false, }, recipes: { type: DataTypes.TEXT, allowNull: false, }, tips: { type: DataTypes.TEXT, }, tags: { type: DataTypes.TEXT, }, }, { modelName: 'Post', tableName: 'posts', charset: 'utf8mb4', collate: 'utf8mb4_general_ci', sequelize, }); } static associate(db) { db.Post.belongsTo(db.User); db.Post.belongsToMany(db.Hashtag, { through: 'PostHashtag' }); db.Post.hasMany(db.Comment); db.Post.hasMany(db.Image); db.Post.belongsToMany(db.User, { through: 'Like', as: 'Likers' }); } };
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
list로 풀었는데 런타임오류가 납니다
import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int K = sc.nextInt(); int[] arr = new int[N]; for (int i = 0; i < N; i++) { arr[i] = sc.nextInt(); } new Main().solution(N, K, arr); } private void solution(int N, int K, int[] arr) { int lt = 0; int cnt = 0; List<Integer> list = new ArrayList<>(); for (int rt = 0; rt < N; rt++) { if (list.contains(arr[rt])) { cnt++; } list.add(arr[rt]); if (rt - lt + 1 == K) { System.out.print((K - cnt) + " "); list.remove(lt++); cnt = 0; } } } } 안녕하세요 위와 같이 list로 풀어봤는데ide에서 답은 제대로 나옵니다근데 채점사이트에서는 런타임 오류가 발생하는데 왜 안되는지 궁금합니다
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
포트번호 사용중
포트번호 변경했는데 8080이 사용중이라고 합니다 어떻게 해야되나요??
-
미해결냉동코더의 알기 쉬운 Modern Android Development 입문
BookSearchRepository 관련 질문
BookSearchRepository interface 부분과 BookSearchRepository 구현부를 구현한건 검색 결과를 받아오기위해서인거 같은데 설명이 간략해서 잘 이해사 안갑니다 ㅠㅠ왜 interface를 생겅하고 구현하는지도... interface 는 한 기능을 여러 class 에서 메소드name 를 공통되게 쓰고싶을때 구현하는게 아닌가요 ㅠㅠ? 왜 1:1 로 사용하는지 궁급합니다.
-
미해결[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발
@ExceptionHandler(MethodArgumentNotValidException.class) 예외 response 메서드 파라미터 관련하여 질문있습니다.
안녕하세요.유효성 체크를 위한 Validation API 사용 강의를 듣고 의문이 생겨 질문드립니다.ResponseEntityExceptionHandler 클래스에 http 예외 response 메서드가 정의되어있다고 하셨고, 이를 오버라이딩하여 사용했을 때는@Override protected ResponseEntity<Object> handleMethodArgumentNotValid(MethodArgumentNotValidException ex, HttpHeaders headers, HttpStatus status, WebRequest request) { ExceptionResponse exceptionResponse=ExceptionResponse.builder() .timestamp(new Date()) .messsage(ex.getMessage()) .details(ex.getBindingResult().toString()) .build(); return ResponseEntity.status(status).body(exceptionResponse); } 의도한대로 exceptionResponse가 http body에 들어갔습니다. 제가 여기서 ResponseEntityExceptionHandler 클래스를 상속받지 않고, @ExceptionHanlder(MethodArgumentNotValidException.class)를 통해 에러를 캐치하고자 하였는데요.@Override protected ResponseEntity<Object> handleMethodArgumentNotValid(MethodArgumentNotValidException ex, HttpHeaders headers, HttpStatus status, WebRequest request) { ExceptionResponse exceptionResponse=ExceptionResponse.builder() .timestamp(new Date()) .messsage("Validation Failed") .details(ex.getBindingResult().toString()) .build(); return ResponseEntity.status(status).body(exceptionResponse); } 이때는 저희가 작성한 exceptionResponse가 http body에 담기지 않는 것을 확인할 수 있었습니다.그래서 앞서 작성한 메서드(MethodArgumentNotValidException.class만 캐치하는 메서드)를 삭제하였을 때는 @ExceptionHandler(Exception.class) public final ResponseEntity<Object>handleAllExceptions(Exception ex, WebRequest request){ ExceptionResponse exceptionResponse=ExceptionResponse.builder() .timestamp(new Date()) .messsage(ex.getMessage()) .build(); return ResponseEntity.status(HttpStatus.NOT_FOUND) .body(exceptionResponse); } 전체 에러를 잡는 메서드가 따로 있기 때문에 커스텀한 에러 메시지가 응답되었습니다. 여기서 제가 내린 결론은 @ExceptionHandler(MethodArgumentNotValidException.class) public ResponseEntity<Object> handleMethodArgumentNotValid(MethodArgumentNotValidException ex, HttpHeaders headers, HttpStatus status, WebRequest request) { ExceptionResponse exceptionResponse=ExceptionResponse.builder() .timestamp(new Date()) .messsage("Validation Failed") .details(ex.getBindingResult().toString()) .build(); return ResponseEntity.status(status).body(exceptionResponse); } 해당 메서드가 MethodArgumentNotValidException.class 에러를 캐치하지만 로직을 수행하고 있지 못하다. 입니다. 그래서 다음과 같이 파라미터를 바꾸어줬더니@ExceptionHandler(MethodArgumentNotValidException.class) public ResponseEntity<Object> handleMethodArgumentNotValid(MethodArgumentNotValidException ex) { ExceptionResponse exceptionResponse=ExceptionResponse.builder() .timestamp(new Date()) .messsage("Validation Failed") .details(ex.getBindingResult().toString()) .build(); return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(exceptionResponse); } 에러를 캐치하고 Custom한 ResponseException을 전달받았습니다. 그럼 이러한 에러를 캐치하고 custom한 responseException을 만들 때 메서드의 파라미터는 어떻게 정해야 하는 건가요???? 또한, 제가 생각한 이 과정이 맞는지 궁금합니다.
-
미해결빅분기 실기 1Day Class(R)
교육자료가 Zip파일로 되어있다고 하는데 찾을 수가 없네요..
안녕하세요? 교수님의 강의를 듣게 되어 감사하게 생각하고 있습니다. 근데 교육자료가 zip파일로 되어 있다고 안내를 본것같은데 아무리 찾아도 찾을 수가 없네요.. 어디서 교육자료를 찾을 수 있는지 알려 주실 수 있는지요
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
새로 나올 C++강의 하고 현재 강의의 차이점이 있을까요?
새로 나올 C++강의 하고 현재 강의의 차이점이 있을까요?현재 강의를 보유하고 있어도, 새로 나올 C++강의가 도움이 될지 궁금합니다.그리고 C++부터 winAPI, Direct2D 강의 들 은 언제 볼 수 있을까요?그리고 연재 간격이 어떻게 될까요? 강의가 나오길 기다리고 있는데 궁금해서 여쭤봅니다 :)
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
쿠팡에서 검색된 상품에 대한 광고클릭으로 인해..
쿠팡 검색 결과 저장 관련해서 광고상품 제거 코드를 넣어도 상품단에 접속하는게 아닌가 싶습니다아래 수집된 URL 를 보면ads 클릭 이벤트 아이디가 생성되는걸로 보입니다그렇다는건 검색광고를 클릭했다는 말인데 문제 발생 소지 있지 않을까 걱정됩니다. https://www.coupang.com//vp/products/6445801857?itemId=13971883834&vendorItemId=81441184342&sourceType=srp_product_ads&clickEventId=98e60fc6-9d41-46a6-a201-850240aa16fe&korePlacement=15&koreSubPlacement=12&clickEventId=98e60fc6-9d41-46a6-a201-850240aa16fe&korePlacement=15&koreSubPlacement=12
-
해결됨프론트엔드 개발자를 위한, 실전 웹 성능 최적화(feat. React) - Part. 1
이미지 최적화 활용
안녕하세요.이번 이미지 사이즈 최적화 강의를 보고 질문 드립니다.강의에서 제공되는 이미지 데이터로는 getParametersForUnsplash()함수가 적용이 되는데 이미지 데이터를 다른 링크에 있는 이미지 주소 같은 거로 변경을 해서 진행을 해보면 변경이 안되는데 혹시 이런 경우에는 다른 방법을 사용해서 진행을 해야 하는 부분인가요??이미지 링크 주소https://t1.daumcdn.net/cfile/tistory/2408DD3658A648B12C
-
해결됨그림으로 쉽게 배우는 운영체제
MLFQ 알고리즘
안녕하세요. MLFQ 강의를 듣다가 궁금한 점이 생겨 질문드립니다.마지막 부분에 우선순위 별로 큐가 나뉘고 우선순위가 낮으면 탕미슬라이스가 커지는데, 이 때 우선순위는 기준이 무엇인가요?CPU 연산을 주로 하는 프로세스(P1)와 I/O작업을 주로 하는 프로세스(P2)가 있다고 할 때, P2의 경우는 CPU처리량이 많지 않아 우선순위큐가 항상 상위에 있을 것 같고 P1의 경우는 우선순위가 낮을 것 같은데 이 때 낮은 우선순위큐들은 어떻게 선택되어 실행이 되는건가요? 우선순위가 낮다는 것은 실행이 될 확률이 낮다는 건가요? 우선순위가 낮은 큐에 있는 프로세스들이 기아상태가 될 가능성도 있나요? 만약에 P1의 작업시간이 25초이고 우선순위 큐1(타임슬라이스10초)에서 실행상태가 된다고 하면 10초 이후에 CPU를 빼앗겨 우선순위 큐2(타임슬라이스20초)에 들어갔다가 다시 실행상태가 되었을 때 나머지 15초를 실행한 후 CPU를 반납하는건가요? 아니면 처음부터 다시 25초에 대해서 진행해서 CPU를 빼앗기고 우선순위큐3(타임슬라이스 30초)으로 들어가게 되나요? 마지막으로 준비상태일 때 준비큐에 있다가 실행상태가 된다고 하였는데 실행상태일 때는 어디에 있는 건가요? 준비큐 I/O큐 이런 것들은 어디에 존재하는건가요?
-
미해결냉동코더의 알기 쉬운 Modern Android Development 입문
Fragment in Fragment
acticity_main.xml 에서 FrameLayout 과 BottomNavigationView 영역을 나눴잖아요?그런데 BottomNavigationView 을 이용해서 Fragment 를 1, 2, 3 개를 연결해줬을때 어떻게 BottomNavigationView 영역을 제외하고 FrameLayout 영역에 Fragment 가 알맞게 크기를 찾아가는지 갑자기 궁금해져서 질문드려요 ㅠㅠ
-
미해결
전산응용건축제도기능사 영상
제가 지금 전산응용건축제도기능사 실기 대비 영상을 보고있는데 영상이 오래된거같아서 실기 시험에 나올지가 궁금합니다.제가 이번 11월달에 실기 시험을 앞두고 있어서 학원에서 배우는거랑내용도 틀리기도하고 학원에서는 이방식이 옛날방식이라고 요즘은 그렇게 안한다고하는데도움이 될까요?
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
카테고리 아이템
실무에서 카테고리와 아이템을 일대다 다대일로 풀어서 카테고리 아이템을 실제로 사용하나요? 아니면 그냥 단순하게 카테고리와 아이템 이 두테이블만 갖고 해도 되나요? 제가 한건데 혹시 이렇게 하는게 맞나요? 마땅히 물어볼 곳이 없네요
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
OneToOne 즉시 로딩에 대한 조언을 구합니다.
안녕하세요.선생님 강의를 듣고 실무에서 JPA를 활용하고 있는 학생입니다.현재 엔테티 구조가 OneToMany가 여러개가 있어서 동시에 fetch join을 2개 이상을 사용할 수 없는 상황입니다.[bag exception]그래서 지연 로딩과 batch_size를 활용하고 있습니다.여기서 문제가 발생했습니다. 지연 로딩으로 불러오는 부분에서 연관 관계의 주인이 아닌 NftProduct 엔티티에 OneToOne 관계가 있어 Membership 엔티티를 즉시 로딩[n+1 발생]합니다.이런 경우에는 어떤식으로 풀어가는게 좋은 방법일지 궁금하여 질문드립니다.구글링 했을 때는 MixFormula 엔티티의 List<MixMaterialFormula>의 결과 값을 조회하는 별도의 fetch join[MixMaterial, NftProduct, Membership] 쿼리를 호출하여 해결하는 방법도 있던데 어떤 방법이 좋은 방법일 지 궁금하여 문의드립니다.
-
미해결취미로 해킹#3(WebGoat)
현 버프스위트 버전
버프스위트 내에서 오픈브라우저 버튼을 클릭하면 크로미움으로 브라우저가 열리는데 여기서 하는 활동들만 기록됩니다.
-
미해결
spring boot nginx 로그 출력
IDE에서 콘솔에 log.info() 로 작성한 로그들이나, select문같은 쿼리들 잘 출력이 되는데 aws ubuntu nginx 로 배포한 서버에서 이런 콘솔 로그들을 찍어보고 싶어서 application.yml 파일에 설정도 하고 해봐도 /var/log/nginx/ 밑에 accesslog에는 제가 보고싶은 로그들이 안 찍히더라고요. /var/www/admin/log/ 로그에도 마찬가지고요 sysout이나 log들을 실서버에서 출력해서 보는 방법은 없을까요?spring: profiles: real datasource: hikari: driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy jdbc-url: jdbc:log4jdbc:sqlserver://localhost:1433;databasename=test username: sa password: ***** servlet: multipart: max-file-size: 200MB max-request-size: 200MB thymeleaf: cache: false logging: dir: /var/www/admin/log/ level: org.springframework: ERROR org.springframework.web: ERROR org.hibernate.sql: OFF mybatis: mapper-locations: classpath:mybatis/mapper/**/*.xml pagehelper: helper-dialect: sqlserver reasonable: true supportMethodsArguments: true server: servlet: session: timeout: 4320000m cookie: name: admin_JSESSIONID max-age: 432000m port: 8080 tomcat: basedir: ./ accesslog: enabled: true directory: logs suffix: .log prefix: access_log file-date-format: .yyyy-MM-dd pattern: common
-
미해결취미로 해킹#3(WebGoat)
프록시 설정 이후 웹에 접속할 수 없습니다
(사진)