학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. pdf를 보면 이렇게 써있습니다. 필터 인터페이스를 구현하고 등록하면 서블릿 컨테이너가 필터를 싱글톤 객체로 생성하고, 관리한다. LogInterceptor 도 싱글톤 처럼 사용되기 때문에 맴버변수를 사용하면 위험하다. Q1. 필터의 경우 싱글톤 객체로 생성되고 관리되는 이유가 WebConfig 클래스에 @Configuration 애노테이션을 적용했기 때문이 맞는지 궁금합니다. 즉, WebConfig 클래스에서 @Bean이 붙은 메소드가 반환하는 객체(해당 필터)가 빈으로 등록되는데, @Configuration 애노테이션으로 인해 싱글톤 객체로 관리되기 때문인가요? Q2. 인터셉터의 경우는 어떤 이유로 인해 싱글톤처럼 사용되는 것인가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] (멤버와 팀이 다대일 관계) "select t.members From Team t" t.members가 Member 객체가 아니라 Member컬렉션 자체라서 탐색이 허용안된다고 하셨는데요. 영한님께서 size 메서드를 쓰시는걸 보고 의문이 생겼습니다. 앞서 경로 표현식에서는 객체 탐색이 상태 필드, 단일값 연관필드, 컬렉션 값 연관필드만 허용이 된다고 하셨는데 size()는 왜 허용이 되는건가요? size가 허용되면 t.members.get(...)이런 식으로 컬렉션 메서드도 사용가능한거 아닌가요? 감사합니다
#include<bits/stdc++.h> using namespace std; string a; bool check(string s) { // (과 [를 담을 stack stack<char> cstk; //만약 ([이면 무조건 담고 그렇지 않은 경우들 체크 , 문자들이 들어가기 때문에 특정 조건에 맞는 선언으로 해야한다. else를 쓰지 않는 방향으로 for(char c : s ) { if( c == '(' || c == '[') cstk.push(c); // 현재 c가 ), ] 인데 stck이 비어있으면 return false; if( (c == ')' || c == ']') && cstk.empty()) return false; // 여기서 위의 조건의 else가 아닌 두가지 경우로 특정지었다. if( c == ')'){ if(cstk.top() == '(') cstk.pop(); else return false; } if( c == ']') { if(cstk.top() == '[') cstk.pop(); else return false; } } // 다 돌았는데 아무문제없이 cstk.empty면 return cstk.empty(); } int main () { while(true) { // cin과 다른점은 띄어쓰기도 아스키코드로 받아주기 때문에 띄어쓰기가 포함된 문자열도 한번에 받을 수 있다. getline(cin,a); if( a == ".") break; if(check(a)) cout << "yes\n"; else cout << "no\n"; } }
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 제가 문제를 풀다가 이런식으로 많이 푸는데, 초기화를 어떻게 해야할지 몰라서요. 일단. Global 함수로 아래처럼 선언합니다. vector<vector<int>> a; 2.그리고 input에서 NxM정보를 받으면 아래처럼 하거든요 a.resize(N, vector<int>(M, 초기화값)); 이후 a를 사용하다가 중간에 또 초기화를 해야할 사항이 있어 아래와 처럼하면 둘다 안됩니다..ㅠ.ㅠ fiill( a.begin(), a.end(), 0); OF memset(&a, 0, sizeof(a)); 이렇게 하면 안되는데, 혹시 해결 방법있을까요?? 나름 최대한 memory 공간 적게 가져간다로 저렇게 했는데, 별로 안좋은 기법인가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. Assertions 사용할 때, 둘 중 하나를 이미 import한 상태면 다른 하나는 처리가 안되고 그 하나는 지 멋대로 import를 꺼버립니다. 제가 임의로 작성해도 스스로 꺼버리는데 어떻게 해야 하나요? Assertions.assertThrows(IllegalStateException.class, () -> memberService.join(member2)); 위 코드는 이미 assertj를 받아서 junit 쪽의 Assertion을 받을 수 없습니다.
선생님 :) 고등학교 때 배웠던 수학이 이용되는 게 신기하네요! 알고리즘 재밌게 공부하고 있습니다 ㅎㅎ Q1) 다름이 아니라, 병합 정렬의 성능 계산 방법 이 궁금해서 질문 드립니다. Merge() 함수 내 흩어진 배열을 합치는 부분으로 성능을평가한다. 분할된 배열을 병합할 때에는 n개의 데이터를 n번 비교한다 : 이 부분은 이해했습니다. 왼/오른쪽 데이터를 합칠 때 비교 연산이 이뤄지는데, 1개+1개 합칠 때 => 비교 연산 2번 2개+2개 합칠 때 => 비교 연산 4번 (1개+1개 합치고 => 2개 + 2개 합쳐서) 3개+3개 합칠 때 => 비교 연산 8번 맞을까요? 각 단계를 거칠 때마다 영역의 수가 반으로 줄어든다 : 가장 작은 단위까지 쪼개서, 차근차근 합하므로 8번 => 4번 => 2번 log₂n 으로 표현할 수 있는 부분을 간략히 log n으로 표현한다고 이해하면 될까요? Q2) 추가로, 배열의 개수가 홀수 개인 경우도 적용이 될 것 같으면서도 애매한 부분이 있을 것 같아 질문드립니다. (대입해보면 정렬은 되는 것을 확인했습니다) 양쪽을 비교하고 더 이상 비교 대상이 없을 땐 이후 값을 그대로 옮겨온다 라는 점을 생각했을 땐 홀수 개도 무리 없이 비교가 가능하다고 생각하는데, 막상 손으로 구현해보려니 이해가 안 가는 부분이 있습니다. [1,3,2]를 정렬할 경우 [1]과 [3,2]로 나뉘게 되는데 [1]이 정렬이 완료가 되었다고 해서 [3,2]가 정렬이 완료되지 않은 채로 옮겨지게 될 것 같습니다.
[2021] 요즘 누가 유료로 웹서비스 구축하나, 파이어베이스의 모든 것 - Javascript
npm설치 후, Firebase CLI설치를 터미널에서 실행했는데요. 아래와 같이 에러가 납니다! 이럴 경우, sudo 이용해서 해결하시면 됩니다! sudo npm install -g firebase-tools npm install -g firebase-tools npm ERR! code EACCES npm ERR! syscall mkdir npm ERR! path /usr/local/lib/node_modules/firebase-tools npm ERR! errno -13 npm ERR! Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/firebase-tools' npm ERR! [Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/firebase-tools'] { npm ERR! errno: -13, npm ERR! code: 'EACCES', npm ERR! syscall: 'mkdir', npm ERR! path: '/usr/local/lib/node_modules/firebase-tools' npm ERR! } npm ERR! npm ERR! The operation was rejected by your operating system. npm ERR! It is likely you do not have the permissions to access this file as the current user npm ERR! npm ERR! If you believe this might be a permissions issue, please double-check the npm ERR! permissions of the file and its containing directories, or try running npm ERR! the command again as root/Administrator. npm ERR! A complete log of this run can be found in: npm ERR! /Users/?????/.npm/_logs/2022-10-09T02_23_11_673Z-debug-0.log haeminkim@Arborsdayui-iMac ~ % npm npm <command>
안녕하세요 제가 1159번 문제를 풀다가 의문이 생겨서 질문 드립니다. 저는 문자열 첫글자를 s.begin()또는 s.substr(0,1)을 통해 추출한 후, 이를 for (int i = 0; i < a; ++i) { for (int j = 0; j < 26; ++j) { if (s[i].begin() == ('a' + j)) { ++cnt[j]; } } } 다음과 같은 방식으로 비교하려 하였습니다. 하지만, (s[i].begin() == ('a' + j)) 이 부분에서 둘이 비교할 수 없다면서 오류가 뜨더군요. 형변환을 시켜서 비교를 시도해보아도 오류는 사라지지 않았습니다. 이 둘은 어떻게 비교를 해야하나요?
MDP에서 상태가 변한다는 것은 원래 가지고 있던 상태 전이 매트릭스와 정책의 영향을 동시에 받는다는 것과 같다. (이해완료) 따라서 행동에 따른 정책과 상태 전이 확률의 기댓값(평균)을 구함으로서 정책을 고려한 상태 전이 매트릭스를 구할 수 있다(이해 못함) -> 두번째 문장에서 기댓값을 구해서 상태전이 매트릭스를 구할 수 있다는 부분이 이해가 잘 안됩니다.
MRP에서 R을 보상 함수라고 책에 써 두셨는데, 여기서 보상함수를 구하는 방법은 확률의 기대값으로 계산한다고 하셨습니다. 확률의 기대값을 구하는 방법은 각각의 확률에 해당 상태의 기대값(주어지는 값, 임의의 값)을 곱한 것을 다 더해주면 된다고 하셨습니다. 그런데 MDP 설명하는 강의에서 계속 보상값이라는 표현을 쓰시는데 이 표현이 정확한 것인지 문의 합니다.
/Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home/bin/java -javaagent:/Applications/IntelliJ IDEA.app/Contents/lib/idea_rt.jar=60512:/Applications/IntelliJ IDEA.app/Contents/bin -Dfile.encoding=UTF-8 -classpath /Users/jeong-yeongmin/Downloads/study/JPA/jpa-basic/target/classes:/Users/jeong-yeongmin/.m2/repository/org/hibernate/hibernate-entitymanager/5.3.10.Final/hibernate-entitymanager-5.3.10.Final.jar:/Users/jeong-yeongmin/.m2/repository/org/jboss/logging/jboss-logging/3.3.2.Final/jboss-logging-3.3.2.Final.jar:/Users/jeong-yeongmin/.m2/repository/org/hibernate/hibernate-core/5.3.10.Final/hibernate-core-5.3.10.Final.jar:/Users/jeong-yeongmin/.m2/repository/org/javassist/javassist/3.23.2-GA/javassist-3.23.2-GA.jar:/Users/jeong-yeongmin/.m2/repository/antlr/antlr/2.7.7/antlr-2.7.7.jar:/Users/jeong-yeongmin/.m2/repository/org/jboss/jandex/2.0.5.Final/jandex-2.0.5.Final.jar:/Users/jeong-yeongmin/.m2/repository/com/fasterxml/classmate/1.3.4/classmate-1.3.4.jar:/Users/jeong-yeongmin/.m2/repository/javax/activation/javax.activation-api/1.2.0/javax.activation-api-1.2.0.jar:/Users/jeong-yeongmin/.m2/repository/org/dom4j/dom4j/2.1.1/dom4j-2.1.1.jar:/Users/jeong-yeongmin/.m2/repository/org/hibernate/common/hibernate-commons-annotations/5.0.4.Final/hibernate-commons-annotations-5.0.4.Final.jar:/Users/jeong-yeongmin/.m2/repository/javax/persistence/javax.persistence-api/2.2/javax.persistence-api-2.2.jar:/Users/jeong-yeongmin/.m2/repository/net/bytebuddy/byte-buddy/1.9.5/byte-buddy-1.9.5.jar:/Users/jeong-yeongmin/.m2/repository/org/jboss/spec/javax/transaction/jboss-transaction-api_1.2_spec/1.1.1.Final/jboss-transaction-api_1.2_spec-1.1.1.Final.jar:/Users/jeong-yeongmin/.m2/repository/com/h2database/h2/1.4.200/h2-1.4.200.jar hellojpa.JpaMain 10월 09, 2022 4:58:00 오전 org.hibernate.jpa.internal.util.LogHelper logPersistenceUnitInformation INFO: HHH000204: Processing PersistenceUnitInfo [ name: hello ...] 10월 09, 2022 4:58:00 오전 org.hibernate.Version logVersion INFO: HHH000412: Hibernate Core {5.3.10.Final} 10월 09, 2022 4:58:00 오전 org.hibernate.cfg.Environment <clinit> INFO: HHH000206: hibernate.properties not found Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException at org.hibernate.boot.spi.XmlMappingBinderAccess.<init>(XmlMappingBinderAccess.java:43) at org.hibernate.boot.MetadataSources.<init>(MetadataSources.java:86) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:212) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:174) at org.hibernate.jpa.boot.spi.Bootstrap.getEntityManagerFactoryBuilder(Bootstrap.java:76) at org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilder(HibernatePersistenceProvider.java:171) at org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilderOrNull(HibernatePersistenceProvider.java:119) at org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilderOrNull(HibernatePersistenceProvider.java:61) at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:50) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:79) at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54) at hellojpa.JpaMain.main(JpaMain.java:10) Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) ... 12 more Process finished with exit code 1 안녕하세요. 원래 gradle을 사용하다가 강의를 보면서 maven을 사용중인데 원래 설치했던 환경이 달라 그런지 계속 오류가 뜹니다. pom.xml도 아예 초기 세팅이 <properties>까지 포함하게끔 나와서 디폴트로 주는 거는 그냥 두고 강의 코드를 복사 붙여넣기 했는데 어떤식으로 바꿔야 되는지 모르겠습니다. 아래는 pom.xml코드입니다. <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.example</groupId> <artifactId>jpa-basic</artifactId> <version>1.0-SNAPSHOT</version> <properties> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <!-- JPA 하이버네이트 --> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-entitymanager</artifactId> <version>5.3.10.Final</version> </dependency> <!-- H2 데이터베이스 --> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <version>1.4.200</version> </dependency> </dependencies> </project>
안녕하세요. 강의에서는 entity를 dto로 전환하는 것을 controller에서 진행하고 있는데 service 계층이 있다면 https://www.inflearn.com/questions/139564 을 참고하여 진행하라고 하셨습니다. 그러면 service 계층에서 변환이 일어난다고 가정할 때, PostMapping으로 controller에 들어온 Dto를 service 계층으로 그대로 넘겨주는 것이 약간 의아합니다. service 계층에도 dto가 들어오면 controller에서도, service에서도 dto에 접근이 가능하니 (같은 동작을 하여 한 곳에서 모든 것을 수행할 수 있음)controller와 service의 역할이 애매해지는 것 같습니다. @PostMapping public ResponseEntity saveItem(@RequestBody ItemSaveDto dto) { itemService.save(dto); // 이 한 줄만 사용하는 것이 불편합니다. } 단순히 controller는 api 통신을 위한 레이어라고 생각해야 할까요? RestController는 웹에서 전달받은 dto를 그저 service에 전달하는 역할인가요?(service에서 Dto -> Entity로 전환한다면 controller에서는 어떤 작업을 수행하는지 잘 모르겠습니다.)