묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Klaytn 클레이튼 블록체인 어플리케이션 만들기 - 이론과 실습
changeUI 메소드에 관련해서 질문드립니다.
if (await this.callOwner() === walletInstance.address) { $('#owner').show(); } 이 부분의 코드가 실행이 되지 않는 것 같습니다. changeUI: async function (walletInstance) { $('#loginModal').modal('hide'); $('#login').hide(); $('#logout').show(); $('#address').append('<br>' + '<p>' + '내 계정 주소: ' + walletInstance.address + '</p>'); $('#contractBalance').append('<p>' + '이벤트 잔액: ' + cav.utils.fromPeb(await this.callContractBalance(), "KLAY") + ' KLAY' + '</p>'); $('#owner').show 이런 식으로 변경시엔 브라우저에 렌더링됩니다. 강의에서 설명해주신대로 똑같이 코드를 작성했는데 어느부분이 문제인지 잘 파악이 안됩니다. walletInstance.address는 privateKey에 해당하는 사용자 계정으로 알고 있는데 this.callOwner 메소드 호출시 리턴되는 agContract.methods.owner().call()도 사용자계정을 리턴하는 건가요? 문제가 무엇인지 알고 싶습니다.
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
인터페이스 질문드립니다
Interface 에 A함수가 정의 되어있습니다 Interface를 구현한 X 구현체가 있습니다 X구현체에서 A함수를 오버라이딩하여 재정의하였습다A함수에는 로직이 B, C, D라는 로직이 있어서 이것을 함수로 B, C, D로 빼고 싶은데요. 그럼 이 구현체에서 생성된 B,C, D함수도 인터페이스에 정의하고 스쓰는게 나을까요? 아님 함수 A에서만 사용한다고하면 안하는게 나을까요?
-
미해결리버스쿨 Level 3 - 리버싱 윈도우(Reversing Windows)
레벨4 아직인가요?
4level로 설계하신거 같은데 아직도 소식이 없네요 무책임해보입니다
-
미해결남박사의 파이썬 기초부터 실전 100% 활용
크롤링 html 구조? 질문 있습니다.
크롤링 강의를 듣고나서 연습겸 식단의 중식메뉴를 크롤링 해보려는 시도를 하고 있습니다.네이버 실시간검색어 크롤링하는거에서 조금만 고쳐서 가져오려고 하니 내용을 제대로 못가져오는데 그 이유를 알수 없어 질문 남깁니다.차이점이라곤 #text 붙어 있다는 것인데 이것의 의미하는 것이 무엇인지 궁금하고 이 부분을 출력하려면 어떻게 해야되는지 궁금합니다.
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
인자 전달 질문드립니다
a,b,c 라는 파라미터를 controller에서 dto로 받았습니다. 그리고 a,b,c를 이용해서 d,e라는 새로운 값을 만들어냅니다. Db 쿼리 조회시 필요한 인자는 a,d,e의 값인데 그럼 이 상황에서 인지를 남길때 a,d,e로 보내는게 나을지 dto에 d,e라는 변수도 만들어 이 값까지 셋팅하고 dto를 보내서 쿼리실행하는것이 나을까요?
-
미해결React로 NodeBird SNS 만들기
address in use 에러 관련 질문입니다..
events.js:187 throw er; // Unhandled 'error' event ^ Error: listen EADDRINUSE: address already in use :::7001 at Server.setupListenHandle [as _listen2] (net.js:1300:14) at listenInCluster (net.js:1348:12) at Server.listen (net.js:1436:7) at Function.listen (C:\Users\zepet\Desktop\lecture\react-nodebird\ch1\back\node_modules\express\lib\application.js:618:24) at Object.<anonymous> (C:\Users\zepet\Desktop\lecture\react-nodebird\ch1\back\index.js:16:5) at Module._compile (internal/modules/cjs/loader.js:956:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:973:10) at Module.load (internal/modules/cjs/loader.js:812:32) at Function.Module._load (internal/modules/cjs/loader.js:724:14) at Function.Module.runMain (internal/modules/cjs/loader.js:1025:10) at internal/main/run_main_module.js:17:11 Emitted 'error' event on Server instance at: at emitErrorNT (net.js:1327:8) at processTicksAndRejections (internal/process/task_queues.js:80:21) { code: 'EADDRINUSE', errno: 'EADDRINUSE', syscall: 'listen', address: '::', port: 7001 } [nodemon] app crashed - waiting for file changes before starting... 해당코드이며 현재 mysql --version 결과 mysql Ver 14.14 Distrib 5.7.28, for Win64 (x86_64) 사용중입니다. root 계정에 처음에 설치할 떄 ip를 7001로 설정하고 진행을 하였고 react 소스에 7001로 하면 저런 에러가 떨어지고 다른 계정은 root계정과 비번이 안맞다고 나옵니다.. 해당 에러 문의드립니다.
-
해결됨[개정판] 파이썬 머신러닝 완벽 가이드
early_stopping의 eval_set 질문
안녕하십니까. 책 p.252와 p.255에 각각 XGBoost와 LightGBM의 early_stoping 적용 코드가 있습니다. XGBoost에선 eval_set = [(X_train, y_train), (X_test, y_test)]이지만 LightGBM에선 eval_set = [(X_test, y_test)]입니다. 검증 세트이기 때문에 X_test, y_test만 있으면 될 것 같은데 XGBoost에선 왜 eval_set = [(X_train, y_train), (X_test, y_test)] 이렇게 설정이 되는 것인지 궁금합니다. 감사합니다.
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
파이썬 버전
버전 숫자가 제일 높은건 3.8.0 인데 이건 10월 14일날 출시고가장 최근인 11월 2일날 출시한건 3.5.9 인데 넘버링이 클수록 최신이 아닌가요?
-
해결됨Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
vuejs와 궁합이 찰떡인 DB는 어떤걸 사용하면 될까요?
강의를 듣고있는데 DB활용 부분도 해보려 하는데.. ㅎㅎ 어떤 DB를 사용하면 좋을까 해서 질문남깁니다~!
-
해결됨파이썬 데이터시각화 분석 실전 프로젝트
marathon_2017_clean.Year = ‘2017’
이라고 하면 에러가 나지도 않고 .head() 해봐도 컬럼이 추가가 되지 않는데 저 명령어는 어떻게 해석이 되는건가요?
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
엑셀파일로 저장시 오류 문제
안녕하세요 강의를 듣고 똑같이 따라 했는데, 파일 저장 경로에서 클릭해보니 아래처럼 뜨네요. 인코딩이 잘못 된건지 전 강의에서 나온 에러인듯 한데 어떻게 해야할까요?에러코드는 맨아래사진처럼 나옵니다. from urllib.request import urlopen from bs4 import BeautifulSoup import openpyxl xl_file = openpyxl.Workbook() xl_sheet = xl_file.active for index in range(1,6): res = urlopen("https://www.seeko.kr/zboard4/zboard.php?id=mainnews&page=" + str(index) + "&select_arrange=headnum&desc=asc&category=&sn=off&ss=on&sc=off&keyword=&sn1=&divpage=10") soup = BeautifulSoup(res, "html.parser") data = soup.find_all("td", "article_subject") for item in data: #print(item.get_text()) xl_sheet.append([item.get_text()]) xl_file.save("IT.xlsx") xl_file.close()
-
미해결Flutter 입문 - 안드로이드, iOS 개발을 한 번에 (with Firebase)
앱 꺼짐
안녕하세요 앱 빌드 후 구글 로그인 화면을 누르면 앱이 꺼지는데 왜그런건가요? run 화면에 아래와 같이 나옵니다. Build fingerprint: 'google/sdk_gphone_x86_arm/generic_x86_arm:9/PSR1.180720.117/5875966:userdebug/dev-keys' Revision: '0' ABI: 'x86' pid: 13878, tid: 13878, name: 111_02_min_inst >>> com.min19102901.flutter_191111_02_min_inst <<< signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr -------- Abort message: '[FATAL:flutter/shell/platform/android/platform_view_android_jni.cc(76)] Check failed: CheckException(env). ' eax 00000000 ebx 00003636 ecx 00003636 edx 00000006 edi 00003636 esi 00000070 ebp ffc64dc8 esp ffc64d68 eip f08a8b39 backtrace: #00 pc 00000b39 [vdso:f08a8000] (__kernel_vsyscall+9) #01 pc 0001fdf8 /system/lib/libc.so (syscall+40) #02 pc 00022ed3 /system/lib/libc.so (abort+115) #03 pc 01115f65 /data/app/com.min19102901.flutter_191111_02_min_inst-AMl6w2E2hwICByykdIrH5A==/lib/x86/libflutter.so (offset 0x10fb000) #04 pc 0110443b /data/app/com.min19102901.flutter_191111_02_min_inst-AMl6w2E2hwICByykdIrH5A==/lib/x86/libflutter.so (offset 0x10fb000) #05 pc 01102202 /data/app/com.min19102901.flutter_191111_02_min_inst-AMl6w2E2hwICByykdIrH5A==/lib/x86/libflutter.so (offset 0x10fb000) #06 pc 011622ad /data/app/com.min19102901.flutter_191111_02_min_inst-AMl6w2E2hwICByykdIrH5A==/lib/x86/libflutter.so (offset 0x10fb000) #07 pc 01114729 /data/app/com.min19102901.flutter_191111_02_min_inst-AMl6w2E2hwICByykdIrH5A==/lib/x86/libflutter.so (offset 0x10fb000) #08 pc 01116ce8 /data/app/com.min19102901.flutter_191111_02_min_inst-AMl6w2E2hwICByykdIrH5A==/lib/x86/libflutter.so (offset 0x10fb000) #09 pc 01116c2a /data/app/com.min19102901.flutter_191111_02_min_inst-AMl6w2E2hwICByykdIrH5A==/lib/x86/libflutter.so (offset 0x10fb000) #10 pc 0111d678 /data/app/com.min19102901.flutter_191111_02_min_inst-AMl6w2E2hwICByykdIrH5A==/lib/x86/libflutter.so (offset 0x10fb000) #11 pc 0111d6a6 /data/app/com.min19102901.flutter_191111_02_min_inst-AMl6w2E2hwICByykdIrH5A==/lib/x86/libflutter.so (offset 0x10fb000) #12 pc 00012a77 /system/lib/libutils.so (android::SimpleLooperCallback::handleEvent(int, int, void*)+39) #13 pc 00013896 /system/lib/libutils.so (android::Looper::pollInner(int)+998) #14 pc 0001340b /system/lib/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+43) #15 pc 000e415b /system/lib/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long long, int)+59) #16 pc 003ddb28 /system/framework/x86/boot-framework.oat (offset 0x3ca000) (android.media.MediaExtractor.seekTo [DEDUPED]+136) #17 pc 005f0a02 /system/lib/libart.so (art_quick_invoke_stub+338) #18 pc 000a2f4e /system/lib/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+222) #19 pc 0029bb22 /system/lib/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+338) #20 pc 00293cc8 /system/lib/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+1048) #21 pc 005bd926 /system/lib/libart.so (MterpInvokeDirect+342) #22 pc 005e2ca1 /system/lib/libart.so (ExecuteMterpImpl+14497) #23 pc 00aeaf50 /system/framework/boot-framework.vdex (android.os.MessageQueue.next+38) #24 pc 00266096 /system/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadERKNS_20CodeItemDataAccessorERNS_11ShadowFrameENS_6JValueEb.llvm.3007865774+598) #25 pc 0026c61c /system/lib/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame*, art::JValue*)+220) #26 pc 00293cab /system/lib/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+1019) #27 pc 005bc353 /system/lib/libart.so (MterpInvokeVirtual+691) #28 pc 005e2ba1 /system/lib/libart.so (ExecuteMterpImpl+14241) #29 pc 00aea9fc /system/framework/boot-framework.vdex (android.os.Looper.loop+128) #30 pc 00266096 /system/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadERKNS_20CodeItemDataAccessorERNS_11ShadowFrameENS_6JValueEb.llvm.3007865774+598) #31 pc 0026c61c /system/lib/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame*, art::JValue*)+220) #32 pc 00293cab /system/lib/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+1019) #33 pc 005bdb1f /system/lib/libart.so (MterpInvokeStatic+207) #34 pc 005e2d21 /system/lib/libart.so (ExecuteMterpImpl+14625) #35 pc 00384cd2 /system/framework/boot-framework.vdex (android.app.ActivityThread.main+214) #36 pc 00266096 /system/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadERKNS_20CodeItemDataAccessorERNS_11ShadowFrameENS_6JValueEb.llvm.3007865774+598) #37 pc 0026c50e /system/lib/libart.so (art::interpreter::EnterInterpreterFromEntryPoint(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame*)+126) #38 pc 005a93fd /system/lib/libart.so (artQuickToInterpreterBridge+1277) #39 pc 005f6aed /system/lib/libart.so (art_quick_to_interpreter_bridge+77) #40 pc 005f0bd2 /system/lib/libart.so (art_quick_invoke_static_stub+418) #41 pc 000a2f5f /system/lib/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+239) #42 pc 004d3209 /system/lib/libart.so (art::(anonymous namespace)::InvokeWithArgArray(art::ScopedObjectAccessAlreadyRunnable const&, art::ArtMethod*, art::(anonymous namespace)::ArgArray*, art::JValue*, char const*)+89) #43 pc 004d4eee /system/lib/libart.so (art::InvokeMethod(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jobject*, _jobject*, unsigned int)+1422) #44 pc 00449643 /system/lib/libart.so (art::Method_invoke(_JNIEnv*, _jobject*, _jobject*, _jobjectArray*)+83) #45 pc 0011d778 /system/framework/x86/boot.oat (offset 0x114000) (java.lang.Class.getDeclaredMethodInternal [DEDUPED]+168) #46 pc 005f0a02 /system/lib/libart.so (art_quick_invoke_stub+338) #47 pc 000a2f4e /system/lib/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+222) #48 pc 0029bb22 /system/lib/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+338) #49 pc 00293cc8 /system/lib/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+1048) #50 pc 005bc353 /system/lib/libart.so (MterpInvokeVirtual+691) #51 pc 005e2ba1 /system/lib/libart.so (ExecuteMterpImpl+14241) #52 pc 00c0b966 /system/framework/boot-framework.vdex (com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run+22) #53 pc 00266096 /system/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadERKNS_20CodeItemDataAccessorERNS_11ShadowFrameENS_6JValueEb.llvm.3007865774+598) #54 pc 0026c50e /system/lib/libart.so (art::interpreter::EnterInterpreterFromEntryPoint(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame*)+126) #55 pc 005a93fd /system/lib/libart.so (artQuickToInterpreterBridge+1277) #56 pc 005f6aed /system/lib/libart.so (art_quick_to_interpreter_bridge+77) #57 pc 00badc2c /system/framework/x86/boot-framework.oat (offset 0x3ca000) (com.android.internal.os.ZygoteInit.main+3100) #58 pc 005f0bd2 /system/lib/libart.so (art_quick_invoke_static_stub+418) #59 pc 000a2f5f /system/lib/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+239) #60 pc 004d3209 /system/lib/libart.so (art::(anonymous namespace)::InvokeWithArgArray(art::ScopedObjectAccessAlreadyRunnable const&, art::ArtMethod*, art::(anonymous namespace)::ArgArray*, art::JValue*, char const*)+89) #61 pc 004d2e8d /system/lib/libart.so (art::InvokeWithVarArgs(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, char*)+429) #62 pc 003a770d /system/lib/libart.so (art::JNI::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, char*)+925) #63 pc 000d90f3 /system/lib/libart.so (art::(anonymous namespace)::CheckJNI::CallMethodV(char const*, _JNIEnv*, _jobject*, _jclass*, _jmethodID*, char*, art::Primitive::Type, art::InvokeType)+2867) #64 pc 000c6ba9 /system/lib/libart.so (art::(anonymous namespace)::CheckJNI::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, char*)+73) #65 pc 0007098e /system/lib/libandroid_runtime.so (_JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...)+62) #66 pc 00073e88 /system/lib/libandroid_runtime.so (android::AndroidRuntime::start(char const*, android::Vector<android::String8> const&, bool)+744) #67 pc 00001bb2 /system/bin/app_process32 (main+1506) #68 pc 000c0f54 /system/lib/libc.so (__libc_init+100)
-
미해결스프링 프레임워크 핵심 기술
이 예제 설명의 진짜 의도를 모르겠습니다.
12:25에서 사용한 예제에 대한 질문입니다. bookrepository를 목킹하셔서 널이 아니라 북을 리턴하도록 바꾸셔서 단위 테스트를 하셨잖아요. 이 때 bookrepository를 빈으로 등록해서 의존성 주입이 가능하게 만들었기 때문에 테스트가 용이해진다. 라는 정보를 알려주고자 이 예제를 설명해주신건가요? 그렇다면 빈에 등록이 되어야만 목킹이 가능한건가여? bookrepository를 new로 선언한 뒤 목킹?해서 테스트하면 안되는건가요? 그냥 이 예제를 설명하심으로써 정확히 어떤 핵심내용을말씀하시고자 하는지 제대로 이해가 안되서 질문드립니다.
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
[주문 조회 V6: JPA에서 DTO로 직접 조회, 플랫 데이터 최적화] 출력 문의
안녕하세요. 강의 내용과 관련 없는 내용이라 질문을 해야 하나말아야하나 고민하다가 돌려보시는 분들도 이게 정상적으로 결과가 나오지 않을 거 같아서... 질문 드립니다. 올려주신 강의 자료 파일(pdf)의 List<OrderFlatDto>로 만든 부분을 List<OrderQueryDto>로 변환하는 소스는 아래과 같은데요. return flats.stream() .collect(groupingBy(o -> new OrderQueryDto(o.getOrderId(), o.getName(), o.getOrderDate(), o.getOrderStatus(), o.getAddress()), mapping(o -> new OrderItemQueryDto(o.getOrderId(), o.getItemName(), o.getOrderPrice(), o.getCount()), toList()) )).entrySet().stream() .map(e -> new OrderQueryDto(e.getKey().getOrderId(), e.getKey().getName(), e.getKey().getOrderDate(), e.getKey().getOrderStatus(), e.getKey().getAddress(), e.getValue())) .collect(toList()); 이렇게 되면 OrderQueryDto가 Key이고, List<OrderItemQueryDto>가 Value로 맵을 만들어 다시 OrderQueryDto를 생성하는 식으로 되는 것 같은데... 저는 결과가 2개의 OrderQueryDto로 합쳐지지않고, 4개의 OrderQueryDto로 나오더라구요. 그래서 아래와 같이 바꿔봤습니다. return new ArrayList<>(flats.stream() .collect(toMap(OrderFlatDto::getOrderId, o -> { // Key : OrderId, Value : OrderQueryDto (OrderItemQueryDto 1건 포함) OrderQueryDto orderQueryDto = new OrderQueryDto(o.getOrderId(), o.getName(), o.getOrderDate(), o.getOrderStatus(), o.getAddress()); orderQueryDto.getOrderItems().add(new OrderItemQueryDto(o.getOrderId(), o.getItemName(), o.getOrderPrice(), o.getCount())); return orderQueryDto; }, (e1, e2) -> { e1.getOrderItems().addAll(e2.getOrderItems()); return e1; })).values()); 뭐 좀 별로인 부분도 있지만 이렇게 수정하니 원하는 결과 (OrderQueryDto가 2개)가 나왔습니다. 다른 방법도 많고 JPA의 중요한 부분도 아니고 강의 들으시는 분들은 어떻게 출력되어야 하는지 이미 다 알고 계시겠지만... 혹시나 저처럼 다 돌려보고 확인해야 하는 사람에겐 중요할 것 같아서.... 제가 잘못한거거나 이미 수정하신 부분이시라면 죄송합니다.
-
블록체인 이더리움 부동산 댑(Dapp) 만들기 - 기본편
송금 문제
삭제된 글입니다
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Serializable 관련 문의입니다!
다른 분들의 소스를 보다보면 Entity 클래스에 Serializable 을 구현한걸 볼 수 있습니다. 왜 Serializable 를 구현하는지 강의에선 Serializable 을 사용하지 않은 이유가 있으신지 궁금합니다.
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
(해결완료) 주문을 하면 배송준비중으로 되어있어야 되는거 맞나요?
h2 database 테이블 하나씩 확인해봤는데 delivery 테이블의 status 컬럼의 데이터 값이null값이 있는걸 확인했습니다.. 혹시 setStatus 이게 필요하지 않을까 생각이 듭니다..
-
미해결워드프레스 제대로 개발하기 - 어드민 편
영상대로 따라가면.. 신규 글쓰기 하면 에러 납니다.
모모 내용 추가하는거 스킵하시고.. 바로 functions.save 만드는걸 보여 주시는대.. 영상따라 갈라고 모모내용 책 추가 하기 누르면.. 만들어진 액션으로 연결 되면서 에러떠서 새책 추가를 못해요.. 놓치기 쉬울수도 있는대 강의듣는 입장에선 힘든 상황이 나오니 언급을 해주시는게 좋을거 같습니다.
-
미해결워드프레스 제대로 개발하기 - 어드민 편
강의노트 좀 상세히 작성해 주시면 감사 하겠습니다.
강의할때 적으시는 강의노트 강의 아래에 좀더 자세히 적어 주시면 편할꺼 같습니다. 이전꺼가 기억이 안날때 영상 돌려 볼라면 힘들어서요 강의하신걸 좀더 자세히 문서로 요약해 주시면 정말 좋을거 같아요
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
트랜잭션 질문 드립니다
@Service가 서비스단에서서함수를 실행할 때 db를 이용한 로직이 없고 자바안에성 오직만 실행되면 @Transactional을 붙여주지 않아도 되는거죠?