묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨스프링 DB 2편 - 데이터 접근 활용 기술
BeanPropertySqlParameter 사용 시 질문있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]Item 클래스에 getId()도 있는데BeanPropertySqlParameterSouce(item)을 사용하면id값도 만들어지나요??
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
http://localhost:8080/ 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 코드도 다 오류 없이 작성했습니다. 파일 경로나 파일 이름도 확인했고, 나머지 것들도 다른 분들이 질문하신 것들 일일이 확인했는데 왜 오류가 발생하는지 잘 모르겠습니다..
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
Username에 질문이 있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]강의 막바지 부분에서 Username이라는 하나의 파라미터에 2개의 서로 다른값인 hello값, Kim값이 들어간거로 이해하였습니다.무엇때문에 중복이라고 부르는 표현이 어렵습니다. ㅠㅠ
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
순수 Jdbc 강의에서 요구하는 데로 다 하고 마지막에 회원 목록을 눌렀을때 에러가 납니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]여기에 질문 내용을 남겨주세요.어떤 것을 잘못했는지는 잘 모르겠는데, 회원 목록을 눌렀을때 에러가 뜹니다.IntelliJ에서는 다음과 같은 오류가 납니다. org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException: Wrong user name or password [28000-224] at org.h2.message.DbException.getJdbcSQLException(DbException.java:522) ~[h2-2.2.224.jar:2.2.224] at org.h2.engine.SessionRemote.readException(SessionRemote.java:650) ~[h2-2.2.224.jar:2.2.224] at org.h2.engine.SessionRemote.done(SessionRemote.java:619) ~[h2-2.2.224.jar:2.2.224] at org.h2.engine.SessionRemote.initTransfer(SessionRemote.java:163) ~[h2-2.2.224.jar:2.2.224] at org.h2.engine.SessionRemote.connectServer(SessionRemote.java:438) ~[h2-2.2.224.jar:2.2.224] at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:330) ~[h2-2.2.224.jar:2.2.224] at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:125) ~[h2-2.2.224.jar:2.2.224] at org.h2.Driver.connect(Driver.java:59) ~[h2-2.2.224.jar:2.2.224] at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:121) ~[HikariCP-5.0.1.jar:na] at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:359) ~[HikariCP-5.0.1.jar:na] at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:201) ~[HikariCP-5.0.1.jar:na] at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:470) ~[HikariCP-5.0.1.jar:na] at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:561) ~[HikariCP-5.0.1.jar:na] at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:100) ~[HikariCP-5.0.1.jar:na] at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112) ~[HikariCP-5.0.1.jar:na] at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:160) ~[spring-jdbc-6.1.4.jar:6.1.4] at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:118) ~[spring-jdbc-6.1.4.jar:6.1.4] at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:81) ~[spring-jdbc-6.1.4.jar:6.1.4] at hello.hellospring.repository.JdbcMemberRepository.getConnection(JdbcMemberRepository.java:116) ~[classes/:na] at hello.hellospring.repository.JdbcMemberRepository.findAll(JdbcMemberRepository.java:74) ~[classes/:na] at hello.hellospring.service.MemberService.findMembers(MemberService.java:40) ~[classes/:na] at hello.hellospring.controller.MemberController.list(MemberController.java:40) ~[classes/:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:568) ~[na:na] at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:259) ~[spring-web-6.1.4.jar:6.1.4] at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:192) ~[spring-web-6.1.4.jar:6.1.4] at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) ~[spring-webmvc-6.1.4.jar:6.1.4] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:920) ~[spring-webmvc-6.1.4.jar:6.1.4] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:830) ~[spring-webmvc-6.1.4.jar:6.1.4] at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-6.1.4.jar:6.1.4] at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) ~[spring-webmvc-6.1.4.jar:6.1.4] at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) ~[spring-webmvc-6.1.4.jar:6.1.4] at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) ~[spring-webmvc-6.1.4.jar:6.1.4] at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) ~[spring-webmvc-6.1.4.jar:6.1.4] at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) ~[tomcat-embed-core-10.1.19.jar:6.0] at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) ~[spring-webmvc-6.1.4.jar:6.1.4] at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) ~[tomcat-embed-core-10.1.19.jar:6.0] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) ~[tomcat-embed-websocket-10.1.19.jar:10.1.19] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-6.1.4.jar:6.1.4] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) ~[spring-web-6.1.4.jar:6.1.4] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-6.1.4.jar:6.1.4] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) ~[spring-web-6.1.4.jar:6.1.4] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-6.1.4.jar:6.1.4] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) ~[spring-web-6.1.4.jar:6.1.4] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:391) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) ~[tomcat-embed-core-10.1.19.jar:10.1.19] at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) ~[tomcat-embed-core-10.1.19.jar:10.1.19]
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
repository관련 질문
repository 코드입니다. private static long sequence = 0L; private DataSource dataSource; public DbMemberRepository(DataSource dataSource) { this.dataSource = dataSource; } public void save(String memberId, String password) throws SQLException { String sql = "insert into member(id, member_id, password) values(?,?,?)"; try { Connection con = null; PreparedStatement pstmt; con = getConnection(); pstmt = con.prepareStatement(sql); pstmt.setLong(1, ++sequence); pstmt.setString(2, memberId); pstmt.setString(3, password); log.info(String.valueOf(sequence)); pstmt.execute(); } catch (SQLException e) { throw new SQLException("sql exception"); } }@Test void save() throws SQLException { memberRepository.save("test1", "test1!"); //memberRepository.save("test2", "test2!"); } 위 코드에서 save테스트를 돌릴 때 save test를 두번 누르면 sequence(id)가 1, 2로 저장된다고 생각했는데 에러가 나고 test코드내에서 memberRepository.save를 두번적으면 되더라고요. 왜 전자처럼 두번누르는 것은 예외가 나나요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
전체 소스코드 문의
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]혹시 강의 전체 소스코드는 어디에 있나요?강의 자료에는 해당 강의에서 수정한 내용이나 추가한 내용만 있는데, 그거말고 전체 소스 코드를 받을 수 있나요?강의를 보며 따라 치다보니 에러가 났는데 도저히 못찾겠습니다ㅠㅠ
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
BeforeEach
service에서 repository를 주입받을 때, repository는 메소드 실행 전 new로 새로 만들기 때문에 테스트케이스의 메소드는 전부 다른 인스턴스를 주입받는 것 아닌가요? 아래 비슷한 질문에서 repository의 변수는 static이기 때문에 동일한 타입의 인스턴스가 전체 공유하고 있다고 답변 달아주신걸 확인했습니다.이부분은 repository를 주입받는 방식이 아니라 service에 선언했을때도 동일한데 그럼 DI방식으로 분리하기 전후 차이점이 무엇인가요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
logout시 redirect 관련
안녕하세요 강의 잘 듣고 있습니다:)로그아웃을 한 다음에 home으로 redirect를 해주었는데실제 로그아웃을 해보니localhost/login?logout 이 뜨면서 login 페이지로 넘어가더라구요..해결방법을 못찾아서 질문남깁니다
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
유틸리티 배열 활용
#array.html <!DOCTYPE html> <html xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <h1>Arrays</h1> <ul> <li>username = <span th:text="${userA.username}"></span></li> <li>age = <span th:text="${userA.age}"></span></li> </ul> <h1>LocalDateTime - Utils</h1> <ul> <li>${#arrays.toStringArray(userA)} = <span th:text="${#arrays.toStringArray(userA)}"></span></li> <li>${#arrays.toIntegerArray(userA)} = <span th:text="${#arrays.toIntegerArray(userA)}"></span></li> <li>${#arrays.toLongArray(userA)} = <span th:text="${#arrays.toLongArray(userA)}"></span></li> <li>${#arrays.toDoubleArray(userA)} = <span th:text="${#arrays.toDoubleArray(userA)}"></span></li> <li>${#arrays.toFloatArray(userA)} = <span th:text="${#arrays.toFloatArray(userA)}"></span></li> <li>${#arrays.toBooleanArray(userA)} = <span th:text="${#arrays.toBooleanArray(userA)}"></span></li> </ul> </body> </html>@GetMapping("/array") public String array(Model model) { User userA = new User("userA", 10); User userB = new User("userB", 20); model.addAttribute("userA", userA); model.addAttribute("userB", userB); return "basic/array"; } @Data static class User { private String username; private int age; public User(String username, int age) { this.username = username; this.age = age; } }이렇게 했을 때 Caused by: java.lang.IllegalArgumentException: Cannot convert object of class "hello.thymeleaf.basic.BasicController$User" to an array of Class 이런 에러가 뜨는데 왜 에러가 발생하며, 어떻게 활용하면 될까요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
빈 등록
Component 에 이름없이 써보고 싶은데package hello.thymeleaf.basic; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import jakarta.servlet.http.HttpSession; 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 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 Spring!"); return "basic/text-basic"; } @GetMapping("text-unescaped") public String textUnescape(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(Model model, HttpServletRequest request, HttpServletResponse response, HttpSession session) { session.setAttribute("sessionData", "Hello Session"); model.addAttribute("request", request); model.addAttribute("response", response); model.addAttribute("servletContext", request.getServletContext()); return "basic/basic-objects"; } /* Component helloBean을 지정한 이유 : 지정하지 않으면 HelloBean 의 빈 이름은 BasicController.HelloBean 으로 설정되기 때문 helloBean을 지정하기 싫으면 내부 클래스 말고 외부에 클래스를 만들어서 사용하면 된다. */ @Data static class User { private String username; private int age; public User(String username, int age) { this.username = username; this.age = age; } } } @Component public class HelloBean { public String hello(String data) { return "Hello " + data; } } 어떻게 수정하면 될까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
localhost:8080/hello가 실행되지 않습니다.
typo나 폴더 위치를 잘못 설정해서 localhost:8080/hello가 실행되지 않는 줄 알았는데, 몇 번을 재검토 해봐도 다 맞게 쓴 것 같아서 어디가 잘못 되었는지 궁금해서 질문드립니다. 환경설정밖에 안 하기는 했지만 입문강의임에도 내용이 잘 이해가 안 되는데 듣다보면 괜찮아질까요..?
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
브라우저 쿠키 원리
이번 챕터를 수강하면서,쿠키 방식보다는 세션 방식이 더 보안성이 높다는 것.둘을 완전히 분리하여 사용하지 않고, 함께 사용해야 한다는 것.을 알게 되었습니다.세션 id를 브라우저에 전달하기 위해, 쿠키를 사용해야 한다고 이해했습니다. 1. 혹시, 세션 갖고만으로는 안되고 쿠키를 꼭 통해서 전달해야하는 걸까요? 조금은 외람된 질문일 수 있겠지만, 지식이 부족하여 질문드립니다.로그인한 사용자가 또다른 요청을 보낼 시, request header에 쿠키(세션id가 포함된)와 함께 요청을 보내는데, 2. 브라우저의 요청에 쿠키가 자동으로 실리는?(첨부되는) 브라우저의 작동 원리가 궁금합니다. 혹시 관련해서 참고할만한 레퍼런스가 있을까요? 브라우저 쿠키와 관련한 키워드로 구글링하는데, 쿠키카 자동으로 실리게 되는 세부적인 원리에 대한 내용을 찾기가 쉽지 않아 질문 드립니다..ㅜ (영문서여도 감사하겠습니다)
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
HashMap 과 Map의 사용
Map<String, User> map = new HashMap<>(); map.put("userA", userA); map.put("userB", userB); 왜 HashMap<String, User> map = new HashMap<>() 은 사용 못하는 걸까요?
-
해결됨스프링 DB 1편 - 데이터 접근 핵심 원리
DB 변경
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]DB를 H2에서 MySql로 변경하고 싶으면섹션 1의 예제에서는 ConnectionConst 클래스의 URL을 MySql 관련 URL로 바꾸기만 하면 되나요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
asIterator, forEachRemaining 관련 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요.이전 스프링 입문 강의에서도 AssertThat과 같은 함수들이 나와서 질문 드립니다. 현재 자바 중급편이 나오지 않은 상태에서 스프링 강의를 학습하고 있는데, 이러한 함수들이 자바와 관련된 함수들인지, 스프링과 관련된 함수들인지 정확히 분별이 어렵습니다. 미리 학습하거나 이후 자바 중급편을 수강해야 얻을 수 있는 지식들인가요? 혹은 이런게 있다고 생각하면 되는건가요?
-
미해결스프링 프레임워크는 내 손에 [스프1탄]
프로젝트 생성시 Srping MVC Project 없음
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 다르분 질문 봣는데 해결이 안되어 질문남깁니다. sts3로 설치해서 들어가봐도 Spring MVC Project 가 안나오는데 어떡해 진행해야할까요자세하게좀 설명부탁드립니다..
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
UnsatisfiedDependencyException 에러..
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 강의를 완강하고 복습을 하던 중, 프로젝트 실행시 에러가 발생해서 질문을 남깁니다. 원래 아무 문제없이 실행됐는데 UnsatisfiedDependencyException 에러가 나네요.. 아무리 찾아봐도 해결할 수 없어 답답한 마음에 질문을 남깁니다.. 댓글에 구글 드라이브 링크 남겨두겠습니다! 감사합니다!
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
8080포트에서 8082로 바뀐이유, Beanduplication Error?
강의중간에 포트가 바뀐이유가 궁금합니다. (8080포트에서 8082로 바뀐이유)https://drive.google.com/file/d/1Qk1diQlnWXRZlcdPBcbrTs_1Zctp2BdA/view?usp=sharing 이게 코드입니다. h2.sh를 실행시켜도 localhost:8082로 접속이 안됩니다.ㅠㅠ 오류코드입니다..https://empty-weight-d3b.notion.site/3057d49052b2468486b465697226b8e0?pvs=4
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
templates 하위에 css가 없어도 href="../css/bootstrap.min.css"가 적용되는 이유
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용] 위 사진처럼 templates 하위에 css 폴더나 css 파일이 없는 상태이고(css 파일은 /static/css/bootstrap.min.css에 있는 상태) templates/basic/items.html 코드에 <link href="../css/bootstrap.min.css" rel="stylesheet"> 이렇게 상대 경로로만 있는 상태에서 서버를 띄우고 http://localhost:8080/basic/items를 실행하면 css가 적용이 안 될 거라고 예상했습니다. 그런데 css가 적용이 됩니다. 위 상대 경로대로면 현재 위치의 상위로 간 다음에 css 경로를 찾아야 하는데 templates 하위엔 css가 없으므로 css 적용이 안 되어야 하지 않나요? 그런데 위 상대 경로로 static에 있는 css를 정상적으로 찾는 이유가 궁금합니다. 그냥 스프링 부트가 알아서 잘 찾아 주는 거라 보면 될까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
실행 버튼..!
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]왼쪽에 실행하기 버튼이 안 뜹니다..ㅠㅠ 오른쪽 위 실행버튼을 누르면 전에 실행했던 것들이 실행되어서 의미가 없어요..