회원 가입 시 DB에 정상적으로 회원 정보가 생성은 되는데 이 후 로그인 시도 시 CustomAuthenticationProvider에서 userDetailsService.loadUserByUsername(username); 수행 시 Null을 반환합니다. java.lang.NullPointerException: Cannot invoke " io.security.corespringsecurity.security .service.CustomUserDetailsService.loadUserByUsername(String)" because "this.userDetailsService" is null at io.security.corespringsecurity.security .provider.CustomAuthenticationProvider.authenticate( CustomAuthenticationProvider.java:26 ) ~[classes/:na]
강사님! 안녕하세요. 수강하다가 질문이 생겨서 질문드립니다! 섹션1. 조인실습03에 다른건 다 이해가 되는데 join nw.shippers d on b.ship_via = d.shipper_id 여기서 shippers table과 orders 테이블이 shipper id = ship via로 조인시키는 부분이 이해가 안 됩니다ㅜㅜ 왜 두 컬럼으로 조인을 시켜 주는 것일까요??? shipper id가 shipper table에 고유칼럼인건 이해했습니다!
안녕하세요! 좋은 강의 제공해주셔서 감사합니다. mvn spring-boot: run-Dspring-boot.run .jvmArguments='-Dserver.port=9003' 다음과 같은 명령어나 실행 옵션에서 -D와 같은 옵션을 띄어쓰기 없이 사용하는 이유가 있을까요?
안녕하세요! 좋은 강의 제공해주셔서 감사합니다. mvn spring-boot: run-Dspring-boot.run .jvmArguments='-Dserver.port=9003' 다음과 같은 명령어나 실행 옵션에서 -D와 같은 옵션을 띄어쓰기 없이 사용하는 이유가 있을까요?
========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요 mvc 1편 강의를 통해 Json형식으로 보내는 법에 대해 배웠는데요. 1)public String xxmethod1() { return "보낼 데이터" } 2)public 객체 xxmethod2(){ 객체 = new 객체(); 객체.setSometing('xx'); return 객체 } 3) public ResponseEntity<객체> xxmethod2(){ return ResponseEntity<>(객체, 상태코드); } 위와 같은 예시를 들겠습니다. 질문 1. 만약 프론트가 CSR이라면 JSON으로 대부분 백으로 데이터 요청을 한다고 알고있습니다. CSR은 프론트 프레임워크로 만든 페이지 안의 빈칸에 그냥 데이터를 채워 넣는 것이라면 결과적으로 1번과 2번은 차이가 없는 것 아닌가요? 질문 2. 3)은 ResponseEntity로 한 번 감싸서 객체를 보내는 것인데 위의 2번과 결과는 동일하지만 상태코드를 보내는 것인데, 상태코드를 개발자가 직접 조작하는 것이 좋은 일인가요? 질문 3. 질문2처럼 상태코드를 개발자가 직접 조작하였지만 200 OK가 아닌 요청 시 에러가 나도 서버에서 200 OK 상태코드를 전송하는 것 아닌가요?
rendermain Executing (default): SELECT `Post`.`id`, `Post`.`content`, `Post`.`img`, `Post`.`createdAt`, `Post`.`updatedAt`, `Post`.`UserId`, `User`.`id` AS `User.id`, `User`.`nick` AS `User.nick` FROM `posts` AS `Post` LEFT OUTER JOIN `users` AS `User` ON `Post`.`UserId` = `User`.`id` AND (`User`.`deletedAt` IS NULL) ORDER BY `Post`.`createdAt` DESC; Error at Query.run (C:\Users\user\study\nodejs\nodebird\node_modules\sequelize\lib\dialects\mysql\query.js:52:25) at C:\Users\user\study\nodejs\nodebird\node_modules\sequelize\lib\sequelize.js:315:28 at processTicksAndRejections (internal/process/task_queues.js:95:5) at async MySQLQueryInterface.select (C:\Users\user\study\nodejs\nodebird\node_modules\sequelize\lib\dialects\abstract\query-interface.js:407:12) at async Function.findAll (C:\Users\user\study\nodejs\nodebird\node_modules\sequelize\lib\model.js:1140:21) at async exports.renderMain (C:\Users\user\study\nodejs\nodebird\controllers\page.js:16:23) { name: 'SequelizeDatabaseError', parent: Error: Unknown column 'Post.UserId' in 'field list' at Packet.asError (C:\Users\user\study\nodejs\nodebird\node_modules\mysql2\lib\packets\packet.js:728:17) at Query.execute (C:\Users\user\study\nodejs\nodebird\node_modules\mysql2\lib\commands\command.js:29:26) at Connection.handlePacket (C:\Users\user\study\nodejs\nodebird\node_modules\mysql2\lib\connection.js:489:32) at PacketParser.onPacket (C:\Users\user\study\nodejs\nodebird\node_modules\mysql2\lib\connection.js:94:12) at PacketParser.executeStart (C:\Users\user\study\nodejs\nodebird\node_modules\mysql2\lib\packet_parser.js:75:16) at Socket.<anonymous> (C:\Users\user\study\nodejs\nodebird\node_modules\mysql2\lib\connection.js:101:25) at Socket.emit (events.js:400:28) at addChunk (internal/streams/readable.js:293:12) at readableAddChunk (internal/streams/readable.js:267:9) at Socket.Readable.push (internal/streams/readable.js:206:10) { code: 'ER_BAD_FIELD_ERROR', errno: 1054, sqlState: '42S22', sqlMessage: "Unknown column 'Post.UserId' in 'field list'", sql: 'SELECT `Post`.`id`, `Post`.`content`, `Post`.`img`, `Post`.`createdAt`, `Post`.`updatedAt`, `Post`.`UserId`, `User`.`id` AS `User.id`, `User`.`nick` AS `User.nick` FROM `posts` AS `Post` LEFT OUTER JOIN `users` AS `User` ON `Post`.`UserId` = `User`.`id` AND (`User`.`deletedAt` IS NULL) ORDER BY `Post`.`createdAt` DESC;', parameters: undefined }, original: Error: Unknown column 'Post.UserId' in 'field list' at Packet.asError (C:\Users\user\study\nodejs\nodebird\node_modules\mysql2\lib\packets\packet.js:728:17) at Query.execute (C:\Users\user\study\nodejs\nodebird\node_modules\mysql2\lib\commands\command.js:29:26) at Connection.handlePacket (C:\Users\user\study\nodejs\nodebird\node_modules\mysql2\lib\connection.js:489:32) at PacketParser.onPacket (C:\Users\user\study\nodejs\nodebird\node_modules\mysql2\lib\connection.js:94:12) at PacketParser.executeStart (C:\Users\user\study\nodejs\nodebird\node_modules\mysql2\lib\packet_parser.js:75:16) at Socket.<anonymous> (C:\Users\user\study\nodejs\nodebird\node_modules\mysql2\lib\connection.js:101:25) at Socket.emit (events.js:400:28) at addChunk (internal/streams/readable.js:293:12) at readableAddChunk (internal/streams/readable.js:267:9) at Socket.Readable.push (internal/streams/readable.js:206:10) { code: 'ER_BAD_FIELD_ERROR', errno: 1054, sqlState: '42S22', sqlMessage: "Unknown column 'Post.UserId' in 'field list'", sql: 'SELECT `Post`.`id`, `Post`.`content`, `Post`.`img`, `Post`.`createdAt`, `Post`.`updatedAt`, `Post`.`UserId`, `User`.`id` AS `User.id`, `User`.`nick` AS `User.nick` FROM `posts` AS `Post` LEFT OUTER JOIN `users` AS `User` ON `Post`.`UserId` = `User`.`id` AND (`User`.`deletedAt` IS NULL) ORDER BY `Post`.`createdAt` DESC;', parameters: undefined }, sql: 'SELECT `Post`.`id`, `Post`.`content`, `Post`.`img`, `Post`.`createdAt`, `Post`.`updatedAt`, `Post`.`UserId`, `User`.`id` AS `User.id`, `User`.`nick` AS `User.nick` FROM `posts` AS `Post` LEFT OUTER JOIN `users` AS `User` ON `Post`.`UserId` = `User`.`id` AND (`User`.`deletedAt` IS NULL) ORDER BY `Post`.`createdAt` DESC;', parameters: {} } GET / 500 25.038 ms - 2481 GET /main.css 200 2.256 ms - 2609 exports.renderMain = async (req, res, next) => { console.log('rendermain') try { const posts = await Post.findAll({ include: { model: User, attributes: ['id', 'nick'], }, order: [['createdAt', 'DESC']] // 최신순 정렬(작성일 기준 내림차순) }); console.log(posts); res.render('main', { title: 'NodeBird', twits: posts }); } catch (error) { console.error(error); next(error); } }; 안녕하세요 선생님 npm run start 서버 띄우고 localhost:8001 로 갔을 때 나오는 에러 입니다. 사진도 같이 띄웁니다. controller/page.js 에서 16번째 줄에서 에러가 발생하길래 확인하였는데 위 에러 코드에서 보이듯이 sql문에 Post테이블의 UserId 컬럼이 포함되어 있었습니다. Post 테이블 만들 때 UserId 컬럼을 명시한 적이 없는데 왜 sql 문에 포함되었는지 잘 이해가 안 갑니다ㅠㅠ
========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 커뮤니티 내 질문을 읽다가 의문이 들어서 질문드립니다. ApplicationContext를 굳이 만들지 않아도 main 메서드 내 SpringApplication.run() 메서드 내부에서 컨테이너를 생성한다고 답변 주신걸 보았습니다. 하지만 ApplicationContext를 만들 때 AppConfig.class로 커스텀한 config파일을 지정하는 걸로 보이는데, SpringApplication.run() 메서드는 따로 클래스를 지정 하지 않아도 @Configuration 애노테이션이 있는 모든 클래스를 스캔하는건가요?
해당 설명을 보고 따라가는데, 30 페이지에서 WinIDT 프로그램을 통해 COM 포트와 속도를 설정하여 포트를 Open했습니다. 그런데 보드에 다운받은 코드를 Run하면 Download verified successfully Shutting down... Exit.로 뜨며 WinIDT 프로그램에서는 cnt 관련하여 printf 함수를 통한 출력이 하나도 나오지 않는데 혹시 문제를 어떻게 해결할 수 있을까요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. CommentRepositoryTest에서 findByNickname를 실행할때 아래와 같은 오류가 나타납니다. org.springframework.dao.InvalidDataAccessApiUsageException: Could not locate ordinal parameter [1], expecting one of []; nested exception is java.lang.IllegalArgumentException: Could not locate ordinal parameter [1], expecting one of []가 나타나는데, 찾아보니 @Param을 하라고 하네요. 근데 @Param은 @Query를 사용할때에 대한 해결방안인데, xml로 쿼리를 작성한 findByNickname에서는 어떻게 해결해야하나요?
2023-05-24 16:40:09,794 localhost-startStop-1 ERROR The parameter is null: filePattern 2023-05-24 16:40:09,802 localhost-startStop-1 ERROR Could not create plugin of type class org.apache.logging.log4j.core.appender.RollingFileAppender for element RollingFile org.apache.logging.log4j.core.config.ConfigurationException: Arguments given for element RollingFile are invalid: field 'filePattern' has invalid value 'null' at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.injectFields( PluginBuilder.java:211 ) at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build ( PluginBuilder.java:122 ) at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject( AbstractConfiguration.java:1014 ) at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration( AbstractConfiguration.java:954 ) at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration( AbstractConfiguration.java:946 ) at org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure( AbstractConfiguration.java:560 ) at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize( AbstractConfiguration.java:245 ) at org.apache.logging.log4j.core.config.AbstractConfiguration.start( AbstractConfiguration.java:292 ) at org.apache.logging.log4j.core.LoggerContext.setConfiguration( LoggerContext.java:579 ) at org.apache.logging.log4j.core.LoggerContext.reconfigure( LoggerContext.java:651 ) at org.apache.logging.log4j.core.LoggerContext.reconfigure( LoggerContext.java:668 ) at org.apache.logging.log4j.core.LoggerContext.start( LoggerContext.java:253 ) at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext( Log4jContextFactory.java:153 ) at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext( Log4jContextFactory.java:45 ) at org.apache.logging.log4j.LogManager.getContext( LogManager.java:194 ) at org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext( AbstractLoggerAdapter.java:138 ) at org.apache.logging.slf4j.Log4jLoggerFactory.getContext( Log4jLoggerFactory.java:45 ) at org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger( AbstractLoggerAdapter.java:48 ) at org.apache.logging.slf4j.Log4jLoggerFactory.getLogger( Log4jLoggerFactory.java:30 ) at org.slf4j.LoggerFactory.getLogger( LoggerFactory.java:358 ) at org.apache.commons.logging.impl.SLF4JLogFactory.getInstance( SLF4JLogFactory.java:155 ) at org.apache.commons.logging.impl.SLF4JLogFactory.getInstance( SLF4JLogFactory.java:132 ) at org.apache.commons.logging.LogFactory.getLog( LogFactory.java:273 ) at org.springframework.web.context.ContextLoader.initWebApplicationContext( ContextLoader.java:304 ) at org.springframework.web.context.ContextLoaderListener.contextInitialized( ContextLoaderListener.java:107 ) at org.apache.catalina.core.StandardContext.listenerStart( StandardContext.java:4492 ) at org.apache.catalina.core.StandardContext.startInternal( StandardContext.java:4950 ) at org.apache.catalina.util.LifecycleBase.start( LifecycleBase.java:183 ) at org.apache.catalina.core.ContainerBase$StartChild.call( ContainerBase.java:1362 ) at org.apache.catalina.core.ContainerBase$StartChild.call( ContainerBase.java:1352 ) at java.util.concurrent.FutureTask.run ( FutureTask.java:266 ) at java.util.concurrent.ThreadPoolExecutor.runWorker( ThreadPoolExecutor.java:1149 ) at java.util.concurrent.ThreadPoolExecutor$Worker.run( ThreadPoolExecutor.java:624 ) at java.lang.Thread.run ( Thread.java:750 ) 2023-05-24 16:40:09,804 localhost-startStop-1 ERROR Null object returned for RollingFile in Appenders. 2023-05-24 16:40:09,815 localhost-startStop-1 ERROR Unable to locate appender "RollingFile" for logger config "java.sql" 2023-05-24 16:40:09,815 localhost-startStop-1 ERROR Unable to locate appender "RollingFile" for logger config "root" 2023-05-24 16:40:09,815 localhost-startStop-1 ERROR Unable to locate appender "RollingFile" for logger config "org.springframework" 2023-05-24 16:40:09,815 localhost-startStop-1 ERROR Unable to locate appender "RollingFile" for logger config "egovframework" 2023-05-24 16:40:09,815 localhost-startStop-1 ERROR Unable to locate appender "RollingFile" for logger config "jdbc.sqltiming" 5월 24, 2023 4:40:09 오후 org.apache.catalina.core.ApplicationContext log 정보: Initializing Spring root WebApplicationContext 2023-05-24 16:40:09,843 INFO [org.springframework.web.context.ContextLoader] Root WebApplicationContext: initialization started 2023-05-24 16:40:09,968 INFO [ org.springframework.web.context.support .XmlWebApplicationContext] Refreshing Root WebApplicationContext: startup date [Wed May 24 16:40:09 KST 2023]; root of context hierarchy 2023-05-24 16:40:10,026 INFO [org.springframework.beans.factory.xml.XmlBeanDefinitionReader] Loading XML bean definitions from file [C:\eGovFrame\eGovFrameDev-3.7.0-64bit\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\Egov_WEB\WEB-INF\classes\egovframework\spring\context-aspect.xml] 2023-05-24 16:40:10,088 INFO [org.springframework.beans.factory.xml.XmlBeanDefinitionReader] Loading XML bean definitions from file [C:\eGovFrame\eGovFrameDev-3.7.0-64bit\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\Egov_WEB\WEB-INF\classes\egovframework\spring\context-common.xml] 2023-05-24 16:40:10,238 INFO [org.springframework.beans.factory.xml.XmlBeanDefinitionReader] Loading XML bean definitions from file [C:\eGovFrame\eGovFrameDev-3.7.0-64bit\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\Egov_WEB\WEB-INF\classes\egovframework\spring\context-datasource.xml] 2023-05-24 16:40:10,253 INFO [org.springframework.beans.factory.xml.XmlBeanDefinitionReader] Loading XML bean definitions from file [C:\eGovFrame\eGovFrameDev-3.7.0-64bit\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\Egov_WEB\WEB-INF\classes\egovframework\spring\context-idgen.xml] 2023-05-24 16:40:10,262 INFO [org.springframework.beans.factory.xml.XmlBeanDefinitionReader] Loading XML bean definitions from file [C:\eGovFrame\eGovFrameDev-3.7.0-64bit\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\Egov_WEB\WEB-INF\classes\egovframework\spring\context-properties.xml] 2023-05-24 16:40:10,272 INFO [org.springframework.beans.factory.xml.XmlBeanDefinitionReader] Loading XML bean definitions from file [C:\eGovFrame\eGovFrameDev-3.7.0-64bit\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\Egov_WEB\WEB-INF\classes\egovframework\spring\context-transaction.xml] 2023-05-24 16:40:10,325 INFO [org.springframework.beans.factory.xml.XmlBeanDefinitionReader] Loading XML bean definitions from file [C:\eGovFrame\eGovFrameDev-3.7.0-64bit\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\Egov_WEB\WEB-INF\classes\egovframework\spring\context-validator.xml] 2023-05-24 16:40:10,665 INFO [org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor] JSR-330 'javax.inject.Inject' annotation found and supported for autowiring 2023-05-24 16:40:11,429 DEBUG [ egovframework.rte.fdl.property .impl.EgovPropertyServiceImpl] [Properties Service] 프로퍼티 key = pageUnit, 값 = 10 은 이 설정파일에 정의되어 있습니다. 2023-05-24 16:40:11,429 DEBUG [ egovframework.rte.fdl.property .impl.EgovPropertyServiceImpl] [Properties Service] 프로퍼티 key = pageSize, 값 = 10 은 이 설정파일에 정의되어 있습니다. 2023-05-24 16:40:11,463 INFO [org.springmodules.validation.commons.DefaultValidatorFactory] Loading validation configurations from [ServletContext resource [/WEB-INF/config/egovframework/validator/validator-rules.xml],ServletContext resource [/WEB-INF/config/egovframework/validator/validator.xml]] 2023-05-24 16:40:11,607 INFO [org.springframework.web.context.ContextLoader] Root WebApplicationContext: initialization completed in 1755 ms 5월 24, 2023 4:40:11 오후 org.apache.catalina.core.ApplicationContext log 정보: Initializing Spring FrameworkServlet 'action' 2023-05-24 16:40:11,628 INFO [org.springframework.web.servlet.DispatcherServlet] FrameworkServlet 'action': initialization started 2023-05-24 16:40:11,630 INFO [ org.springframework.web.context.support .XmlWebApplicationContext] Refreshing WebApplicationContext for namespace 'action-servlet': startup date [Wed May 24 16:40:11 KST 2023]; parent: Root WebApplicationContext 2023-05-24 16:40:11,630 INFO [org.springframework.beans.factory.xml.XmlBeanDefinitionReader] Loading XML bean definitions from ServletContext resource [/WEB-INF/config/egovframework/springmvc/dispatcher-servlet.xml] 2023-05-24 16:40:11,731 INFO [org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor] JSR-330 'javax.inject.Inject' annotation found and supported for autowiring 2023-05-24 16:40:11,973 INFO [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter] Looking for @ControllerAdvice: WebApplicationContext for namespace 'action-servlet': startup date [Wed May 24 16:40:11 KST 2023]; parent: Root WebApplicationContext 2023-05-24 16:40:12,081 INFO [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] Mapped "{[/ main.do ]}" onto public java.lang.String egov.main.web.MainController.main(javax.servlet.http.HttpServletRequest,org.springframework.ui.ModelMap) 2023-05-24 16:40:12,082 INFO [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] Mapped "{[/ login.do ]}" onto public java.lang.String egov.main.web.MainController.login(javax.servlet.http.HttpServletRequest,org.springframework.ui.ModelMap) 2023-05-24 16:40:12,083 INFO [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] Mapped "{[/ main2.do ]}" onto public java.lang.String egov.main.web.MainController.main2(javax.servlet.http.HttpServletRequest,org.springframework.ui.ModelMap) 2023-05-24 16:40:12,083 INFO [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] Mapped "{[/ LoginSubmission.do ]}" onto public java.lang.String egov.main.web.MainController.loginSubmission(javax.servlet.http.HttpServletRequest,org.springframework.ui.ModelMap) throws java.lang.Exception 2023-05-24 16:40:12,083 INFO [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] Mapped "{[/ main4.do ]}" onto public java.lang.String egov.main.web.MainController.main4(javax.servlet.http.HttpServletRequest,org.springframework.ui.ModelMap) 2023-05-24 16:40:12,217 INFO [org.springframework.web.servlet.handler.SimpleUrlHandlerMapping] Mapped URL path [/cmmn/validator.do] onto handler of type [class org.springframework.web.servlet.mvc.ParameterizableViewController] 2023-05-24 16:40:12,340 INFO [org.springframework.web.servlet.DispatcherServlet] FrameworkServlet 'action': initialization completed in 712 ms 5월 24, 2023 4:40:12 오후 org.apache.coyote.AbstractProtocol start 정보: 프로토콜 핸들러 ["http-nio-8282"]을(를) 시작합니다. 5월 24, 2023 4:40:12 오후 org.apache.catalina.startup.Catalina start 정보: Server startup in 6122 ms
안녕하세요. 커뮤니티 질문글 보니 저와 비슷하게 오류난 부분이 있었던데, 해결된 답글은 없는것같아서 혹시나해서 문의드립니다. 알려주신대로 오류메시지 구글링해서 위와 같이 해결한긴했는데요.. 이게 맞는건지 모르겠어서요 ㅎ; 위와 같이 태그 엘리먼트에 대한 형변환을 안해주면, 해당 변수에 innnerText접근하는곳에서 오류가 발생합니다. 위와 같이 처리하는게 맞는지 질문드립니다~!@