묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
Autowired 대신, AllargsConstructor 사용 관련
Autowired 대신, AllargsConstructor 사용하면 안되나요? 잘 동작하기는 하는데 어떤게 더 좋은 방식인지 모르겠어요
-
미해결Vue로 Nodebird SNS 만들기
nuxt 에서 비밀키 숨기기
vue로 프론트 엔드 개발을 하고 배포를 하려고 하는데 막히는 점에 있어서 질문을 드립니다..ㅠㅠ 백엔드는 없고 api 사이트에서 회원가입을 하여 데이터를 받아옵니다. 무료지만 많은 접속을하게되면 요금이 청구되는데.. 여기서 궁금한 점이 있습니다. 1. api-key를 vue에서 숨길 방법은 없나요? dotenv 설치 후 .env를 이용하여 봤는데 F12 개발자도구 탭에서 Requests Headers 를 보면 api 키가 적나라하게 나오더라고요.. 만약 숨길 방법이 없다면 해커들이 제 api key 를 보고 악용을하여 어마어마한 요금이 청구되는 사태는 막을수 없나요? Nuxt를 이용하여 ssr:false , target:'static' 으로 vue 개발을 했고 netlify 에서 배포 예정입니다. @nuxtjs/dotenv 모듈을 이용하였습니다.
-
미해결15일간의 빅데이터 파일럿 프로젝트
소스코드
안녕하세요, 데이타를 생성해 주는 bigdata.smartcar.loggen-1.0.jar에 대한 소스코드는 어디서 구할수있을까요? 강의를 듣다보니 어떻게 생성해 주는지 개발자로서 궁금해서 여쭤봅니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
Could not parse as expression 에러
Could not parse as expression 에러가 나오는데원인이 뭘까요? org.thymeleaf.exceptions.TemplateProcessingException: Could not parse as expression: "$ {#temporals.day(localDateTime)}" (template: "basic/date" - line 15, col 50) at org.thymeleaf.standard.expression.StandardExpressionParser.parseExpression(StandardExpressionParser.java:131) ~[thymeleaf-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.standard.expression.StandardExpressionParser.parseExpression(StandardExpressionParser.java:62) ~[thymeleaf-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.standard.expression.StandardExpressionParser.parseExpression(StandardExpressionParser.java:44) ~[thymeleaf-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.engine.EngineEventUtils.parseAttributeExpression(EngineEventUtils.java:220) ~[thymeleaf-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.engine.EngineEventUtils.computeAttributeExpression(EngineEventUtils.java:207) ~[thymeleaf-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.standard.processor.AbstractStandardExpressionAttributeTagProcessor.doProcess(AbstractStandardExpressionAttributeTagProcessor.java:125) ~[thymeleaf-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.processor.element.AbstractAttributeTagProcessor.doProcess(AbstractAttributeTagProcessor.java:74) ~[thymeleaf-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.processor.element.AbstractElementTagProcessor.process(AbstractElementTagProcessor.java:95) ~[thymeleaf-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.util.ProcessorConfigurationUtils$ElementTagProcessorWrapper.process(ProcessorConfigurationUtils.java:633) ~[thymeleaf-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.engine.ProcessorTemplateHandler.handleOpenElement(ProcessorTemplateHandler.java:1314) ~[thymeleaf-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.engine.OpenElementTag.beHandled(OpenElementTag.java:205) ~[thymeleaf-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.engine.TemplateModel.process(TemplateModel.java:136) ~[thymeleaf-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.engine.TemplateManager.parseAndProcess(TemplateManager.java:661) ~[thymeleaf-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1098) ~[thymeleaf-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1072) ~[thymeleaf-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.spring5.view.ThymeleafView.renderFragment(ThymeleafView.java:366) ~[thymeleaf-spring5-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.thymeleaf.spring5.view.ThymeleafView.render(ThymeleafView.java:190) ~[thymeleaf-spring5-3.0.12.RELEASE.jar:3.0.12.RELEASE] at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1396) ~[spring-webmvc-5.3.8.jar:5.3.8] at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1141) ~[spring-webmvc-5.3.8.jar:5.3.8] at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1080) ~[spring-webmvc-5.3.8.jar:5.3.8] at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963) ~[spring-webmvc-5.3.8.jar:5.3.8] at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) ~[spring-webmvc-5.3.8.jar:5.3.8] at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) ~[spring-webmvc-5.3.8.jar:5.3.8] at javax.servlet.http.HttpServlet.service(HttpServlet.java:655) ~[tomcat-embed-core-9.0.48.jar:4.0.FR] at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) ~[spring-webmvc-5.3.8.jar:5.3.8] at javax.servlet.http.HttpServlet.service(HttpServlet.java:764) ~[tomcat-embed-core-9.0.48.jar:4.0.FR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:228) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) ~[tomcat-embed-websocket-9.0.48.jar:9.0.48] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.8.jar:5.3.8] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.8.jar:5.3.8] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.8.jar:5.3.8] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.8.jar:5.3.8] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.8.jar:5.3.8] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.8.jar:5.3.8] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:190) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:163) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:382) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1723) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) ~[na:na] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) ~[na:na] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.48.jar:9.0.48] at java.base/java.lang.Thread.run(Thread.java:832) ~[na:na] 2021-07-11 05:43:09.657 ERROR 5188 --- [nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.thymeleaf.exceptions.TemplateProcessingException: Could not parse as expression: "$ {#temporals.day(localDateTime)}" (template: "basic/date" - line 15, col 50)] with root cause package hello.thymeleaf.basic;import lombok.Data;import org.springframework.stereotype.Component;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestMapping;import javax.servlet.http.HttpSession;import java.time.LocalDateTime;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;@Controller@RequestMapping("/basic")public class BasicController { @GetMapping("text-basic") public String textBasic(Model model) { model.addAttribute("data","Hello <b>Spring!</b>"); return "basic/text-basic"; } @GetMapping("text-unescaped") public String textUnescaped(Model model) { model.addAttribute("data","Hello <b>Spring!</b>"); return "basic/text-unescaped"; } @GetMapping("variable") public String variable(Model model) { User userA = new User("userA", 10); User userB = new User("userB", 20); List<User> list = new ArrayList<>(); list.add(userA); list.add(userB); Map<String, User> map = new HashMap<>(); map.put("userA", userA); map.put("userB", userB); model.addAttribute("user", userA); model.addAttribute("users", list); model.addAttribute("userMap", map); return "basic/variable"; } @GetMapping("basic-objects") public String basicObjects(HttpSession session) { session.setAttribute("sessionData", "Hello Session"); return "basic/basic-objects"; } @Component("helloBean") static class HelloBean { public String hello(String data) { return "Hello " + data; } } @GetMapping("/date") public String date(Model model){ model.addAttribute("localDateTime", LocalDateTime.now()); return "basic/date"; } @Data static class User { private String username; private int age; public User(String username, int age) { this.username = username; this.age = age; } }} <!DOCTYPE html><html xmlns:th="http://www.thymeleaf.org"><head> <meta charset="UTF-8"> <title>Title</title></head><body><h1>LocalDateTime</h1><ul> <li>default = <span th:text="${localDateTime}"></span></li> <li>yyyy-MM-dd HH:mm:ss = <span th:text="${#temporals.format(localDateTime,'yyyy-MM-dd HH:mm:ss')}"></span></li></ul><h1>LocalDateTime - Utils</h1><ul> <li>${#temporals.day(localDateTime)} = <span th:text="${#temporals.day(localDateTime)}"></span></li> <li>${#temporals.month(localDateTime)} = <span th:text="${#temporals.month(localDateTime)}"></span></li> <li>${#temporals.monthName(localDateTime)} = <span th:text="${#temporals.monthName(localDateTime)}"></span></li> <li>${#temporals.monthNameShort(localDateTime)} = <span th:text="${#temporals.monthNameShort(localDateTime)}"></span></li> <li>${#temporals.year(localDateTime)} = <span th:text="${#temporals.year(localDateTime)}"></span></li> <li>${#temporals.dayOfWeek(localDateTime)} = <span th:text="${#temporals.dayOfWeek(localDateTime)}"></span></li> <li>${#temporals.dayOfWeekName(localDateTime)} = <span th:text="${#temporals.dayOfWeekName(localDateTime)}"></span></li> <li>${#temporals.dayOfWeekNameShort(localDateTime)} = <span th:text="${#temporals.dayOfWeekNameShort(localDateTime)}"></span></li> <li>${#temporals.hour(localDateTime)} = <span th:text="${#temporals.hour(localDateTime)}"></span></li> <li>${#temporals.minute(localDateTime)} = <span th:text="${#temporals.minute(localDateTime)}"></span></li> <li>${#temporals.second(localDateTime)} = <span th:text="${#temporals.second(localDateTime)}"></span></li> <li>${#temporals.nanosecond(localDateTime)} = <span th:text="${#temporals.nanosecond(localDateTime)}"></span></li></ul></body></html>
-
미해결3DS MAX 입문강좌 (입문부터 자동차 예제까지)
viewcube에 있는 홈키를 누르면 3차원으로 좋게 나오는데 이것을 위한 단축키를 따로 설정할수 있나요?
찾아봤는데 없는거같아서 질문합니다...! 알려주세용 ㅜㅜ
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
고객 반응에 대한 성과 평가
강사님, 안녕하세요! 실무에서 고객 반응에 따른 성과 평가를 어떻게 하는지 궁금하여 질문드립니다! 가령, 어떤 캠페인 혹은 추천시스템에 대하여 아래와 같은 전환 결과를 나타낼 경우에 A가 언제나 B보다 좋다고 해석할 수 있는 건가요? 비즈니스 목표에 따라 다른 것 같은데, 궁극적인 목적은 어쨌든 구매전환이니까... 만약 이런 경우라면, 어떤 선택을 선택을 해야할지 강사님의 고견 여쭤봅니다! 좋은 강의해주셔서 감사합니다! 듣고 또 듣고 있습니다!ㅎㅎ
-
미해결태블로를 활용한 고객 획득 및 유지 패턴 분석
고객 반응에 대한 성능 평가
강사님, 안녕하세요! 실무에서 고객 반응에 따른 성과 평가를 어떻게 하는지 궁금하여 질문드립니다! 가령, 어떤 캠페인 혹은 추천시스템에 대하여 아래와 같은 전환 결과를 나타낼 경우에 A가 언제나 B보다 좋다고 해석할 수 있는 건가요? 비즈니스 목표에 따라 다른 것 같은데, 궁극적인 목적은 어쨌든 구매전환이니까... 만약 이런 경우라면, 어떤 선택을 선택을 해야할지 강사님의 고견 여쭤봅니다! 좋은 강의해주셔서 감사합니다!
-
미해결15일간의 빅데이터 파일럿 프로젝트
고객 반응에 대한 성능 평가
강사님, 안녕하세요! 실무에서 고객 반응에 따른 성과 평가를 어떻게 하는지 궁금하여 질문드립니다! 가령, 어떤 캠페인 혹은 추천시스템에 대하여 아래와 같은 전환 결과를 나타낼 경우에 A 추천시스템이 언제나 B보다 좋다고 해석할 수 있는 건가요? 비즈니스 목표에 따라 다른 것 같은데, 궁극적인 목적은 어쨌든 구매전환이니까... 만약 이런 경우라면, 어떤 선택을 선택을 해야할지 강사님의 고견 여쭤봅니다! 좋은 강의해주셔서 감사합니다!
-
미해결그로스해킹 - 데이터와 실험을 통해 성장하는 서비스를 만드는 방법
dd
삭제된 글입니다
-
미해결파이썬 사용자를 위한 웹개발 입문 A to Z Django + Bootstrap
후속 강의
이거 다음 강의가 나왔던데 혹시 기존 이 강의 수강자들은 할인 같은 거 없을까요? 중복되는 내용이 많아서요
-
미해결오라클 성능 분석과 인스턴스 튜닝 핵심 가이드
SOE 스키마 작업중 부분 오류
orderentry 오브젝트가 invalid로 unsuccessful되는데 나머지는 정상적으로 셋업됐어요 이거 혹시 지장있나요??
-
미해결Spotfire - 사용자 교육 기초편
축 값 나누기
해당 이미지는 제가 가격을 축값으로 지정한 그래프입니다. 여기서 1000만원단위로 나눠서 보고 싶은데 어떻게 하면 되나요? 예를 들어서 지금은 100000000으로 나와있는데 이를 10으로 표시하고 싶습니다
-
미해결실전 데이터 사이언스 Part2. 데이터 전처리
6:14초 dataframe 스케일링한 후 컬럼 추가에 대한 질문
안녕하세요. 주피터노트북으로 따라하던 도중 에러가 났는데 어떻게 고칠줄 몰라 여쭈어봅니다. 37줄을 프린트하면 Key error가 납니다. # 키, 몸무게 데이터를 각각 표준 스케일링한 후 컬럼에 추가 df = df_raw.copy() # 백업 데이터 사용 (결측치 없는) df[:10] from sklearn.preprocessing import StandardScaler scale = StandardScaler() #make constructor - 하나의 객체를 만들었다. df["h_sc","w_sc"] = scale.fit_transform(df["height","weight"]) df[:5] KeyError: "None of [Index(['h_sc', 'w_sc'], dtype='object')] are in the [columns]" 이런 에러가 뜨는데 해결방법을 알 수 있을까여??
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
OrderServiceTest시 재고 감소가 되지않아서 질문드립니다.
Bean을 자동 등록하여 OrderServiceTest시 DB에도 찍히지 않아 질문드립니다. 강사님이 설명해주신대로 Test를 하면 재고 수량이 제대로 감소합니다.... 어떤 곳이 문제인지 알고싶어서 질문드렸습니다 ㅠㅠ https://drive.google.com/file/d/1I9G2kzYv14phjfWicNWeWF4dpswXkcym/view?usp=sharing
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
연습을 해보기 위해서 app.js를 복붙한 다음부터 터미널 창이 이상합니다.
제가 개인적으로 복습을 하기 위해 app.js 파일을 복붙한 후 이름을 app2.js로 고치고 혼자 코드를 작성하고 npm start를 통해 실시간으로 업데이트되는 모습을 확인하려고 했습니다. 그런데 npm start를 치면 처음 한 번만 브라우저 창이 뜨고, 터미널 창에 다음 이미지와 같은 메시지가 뜬 후 터미널 창에 어떤 명령어를 쳐도 먹지 않습니다. 또한 이상한 점은 외부에서 만든 자식 컨포넌트를 import해도 이 파일에 반영이 되지 않습니다.
-
미해결15일간의 빅데이터 파일럿 프로젝트
virtualbox 로그인,,,
처음에 서버 실행시키면 로그인하라고 나와요.,, 당연히 server01.hadoop.com:7180 접속도 안되구요ㅠㅠ,, hosts파일도 수정했고...다른것 설치도 잘한것 같은데 왜 이럴까요?>?? admin/admin 도 안되고 제 개인pc 아이디도 로그인이 안됩니다..
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Casecade
Casecade 옵션은 부모에 걸지 부모가 아닌곳에 걸지 상황에따라 다른건가요 ?
-
미해결Do it! 자바 프로그래밍 입문 with 은종쌤
5와 -5
2강에서 5와 -5를 출력하고 더한 값을 출력했는데 순서대로 5 1073741819 1073741824 이렇게 나왔어요 뭐가 잘 못된 걸까요? 소스코드) int num1=0B000000000000000000000000000101; int num2=0B111111111111111111111111111011;
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
DepthStencilBuffer Init에 관해
ResizeWindow시 변경된 해상도에따라 DepthStencilBuff가 초기화 돼야해서 ReszieWindow에 DepthStencilBuffer Init호출을 추가한건 이해가 됩니다. 다만, 이렇게되면 Engine Init시점에 항상 2번의 DepthStencilBuffer Init이 호출되게 되는데 불필요한 함수콜이 늘어나는것 아닌가요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
String에서 String으로 인코딩 한다는 개념이 이해가 안 갑니다!
String body = StreamUtils.copyToString(inputStream, StandardCharsets.UTF_8); 이건 말이 되는 것 같은데 String uploadFileName = item.getAttachFile().getUploadFileName(); String encodedUploadFileName = UriUtils.encode(uploadFileName, StandardCharsets.UTF_8); 이건 스트링에서 스트링으로 인코딩 한다는 뜻인데 스트링에서 스트링으로 인코딩할 필요가 있는건가요? 왜냐하면 String 데이터 형식은 메모리상에 유니코드 형태로 압축되지 않은 문자 데이터가 온전히 있다는 뜻이잖아요?