묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
타임리프 disabled에 대해 설명해주세요
타임리프에서 disabled 속성을 사용하면 양식 요소를 비활성화하여 사용자의 입력을 제한할때 유용하다고 알고있는데 그럼 이기능을 사용하면 아예 사용자는 수정이 불가능한건가요? 잘이해가안가네요 이걸 쓰면 사용자는 이 필드를 어떻게 활용하죠??
-
미해결[NarP Series] MVC 프레임워크는 내 손에 [나프2탄]
fileItem.getName().substring(idx+1) 사용 이유가 궁금합니다.
System.out.println(); 을 찍으면서 공부 하던중System.out.println(fileItem.getName()); 을 찍어보니 "IMG_0142.JPG" 이런 식으로 파일이름만 나오더라고요.fileName=fileItem.getName().substring(idx+1); 코드를 fileName=fileItem.getName(); 이렇게 바꿔서 넣어줘 봐도 오류 없이 잘 실행 되더라고요.왜 저런 식으로 코드를 처리하셨는지 제가 놓치는 부분이 있는 거 같아서 질문드립니다. 감사합니다 !
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
혹시 서비스에서 관련 레포지토리말고 다른 레포지토리를 의존해서는 안되는 이유가 뭘까요???
[질문 내용]안녕하세요 강사님!! MemberService에 MemberRepository와 LogRepository를 의존하는 걸 보면서 궁금증이 생겨서 질문 드립니다! 회사에서 일 할 때,하나의 서비스에는 관련 레포지토리만 의존하고필요하다면 다른 레포지토리는 직접 의존하지 말고 서비스를 통해서 해결하라는 말을 들어서 그렇게 코드를 짜왔습니다. 만약 다른 레포지토리를 의존해야 한다면 컨트롤러에서 하라고 들었던 것 같습니다. 예를 들면 MemberService에서는 MemberRepository만 의존하고LogRepository의 메소드가 필요하다면 LogService를 의존해서 LogServerce.메소드 이런식으로 불러왔습니다. 혹시 이런 식으로 다른 레포지토리를 의존하지 말고 서비스를 의존해야 하는 이유가 무엇인지 이유를 알 수 있을까요???단순히 계층구조를 지키기 위해서 인가요???
-
미해결스프링 프레임워크는 내 손에 [스프1탄]
registerCheck과 getMember은 같은건가요?
MemberMapper인터페이스의 public Member registerCheck(String memID); public Member getMember(String memID); MemberMapper.xml의 <select id="registerCheck" resultType="kr.board.entity.Member"> select * from mem_tbl where memID=#{memID} </select> <select id="getMember" resultType="kr.board.entity.Member"> select * from mem_tbl where memID=#{memID} </select> 요거 두개는 동일한게 맞을까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
도메인 getName이 null이라고 test 실행이 안돼요
(사진)
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
Spring import 문제 해결을 못하겠습니다...
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]영상대로 따라하다가 도저히 해결을 못하겠어서 질문드립니다...실행되다가 아래 오류 메세지가 나오면서 실행이 안되네요 ㅠㅠ 어떤 오류인지 모르겠습니다.원래는 이클립스로 먼저 했었는데 똑같이 실행하다가 시작할 수 없다는 문구가 나오고 8080을 이미 사용중? 이라는 문구가 나왔네요 부탁드립니다. 아래는 인텔리제이 실행화면입니다.
-
미해결스프링 부트 웹 개발 입문 - 따라하며 배우기
안녕하세요 Ajax강의 잘듣고있습니다. 다름이 아니라 Ajax로 검색할떄 시작일이나 종료일 고객명과 같은 검색조건을 어떻게 구현해야하는지 고민을해보다 질문드립니다.
package com.boot.sailing.v3.controller; import com.boot.sailing.v3.service.MemberSvc; import com.boot.sailing.v3.vo.Cust_info; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.List; @Slf4j @RestController @RequestMapping ("/v3") public class MemberAjax { @Autowired MemberSvc memberSvc3; @RequestMapping("/member_searchAjax") public List<Cust_info> list( @RequestParam("start_date") String strStartDate, @RequestParam("end_date") String strEndDate, @RequestParam("name") String strName, Model model ) { List<Cust_info> list = memberSvc3.doSerch(strStartDate,strStartDate,strName ); return list; } } $(document).ready(function(){ // 조회버튼클릭 $.ajax({ url : "/v3/member_searchAjax", // 파일경로 method : "GET", // GET, POST contentType : "application/x-www-form-urlencoded", //data : _data, // 서버에 전달할 Parameter dataType: "json", // 서버에서 전달받을 Data 형식 async: false, // 비동기사용여부 true , false success : function(data) { // 성공시 실행 (java try) , JSON.parse 자동적용 RespData console.log(data) let _contents=null; for(let i in data) { _contents += '<tr>\n' + ' <td><input type="checkbox" name="chkCoffeeNo" value="' + data[i].no + '"></td>\n' + ' <td>Ajax' + data[i].no + '</td>\n' + ' <td>' + data[i].cust_id + '</td>\n' + ' <td>' + data[i].name + '</td>\n' + ' <td>' + data[i].email + '</td>\n' + ' <td>' + data[i].role + '</td>\n' + ' <td>' + data[i].reg_day + '</td>\n' + ' </tr>' } $("#t_body").html(_contents); }, error:function(request,status,error){ // 오류시 실행 (java catch) console.log("code = "+request.status +"message = "+ request.responseText +"error = "+ error); }, complete : function (){ // 성공/실패와 상관없이 실행 (java finally) console.log("Finish") } }); }); 고객정보부분에 제가 따로 검색기능을구현시도해보았습니다.
-
해결됨스프링 DB 1편 - 데이터 접근 핵심 원리
JDBC 인터페이스와 데이터 소스
둘다 java.sql에 있고"JDBC 인터페이스는 커넥션을 생성하는 방법을 추상화" "데이터소스는 생성된 커넥션을 획득하는 방법을 추상화 " 이 차이가 맞나요??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
실행이 안되네요
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]빌드까지 성공했는데 실행이 안되요
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
ExceptionResolver1 강의 error.bad
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)ㅇ2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)ㅇ3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)ㅇ[질문 내용]messages.properties에error.bad=잘못된 요청 오류입니다. 메세지 사용이라 하고 postman 호출하니영어로 나옵니다 왜 그럴까요?++application.properties에 추가도 했고intellij 인코딩도 utf-8로 했스빈당
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
커넥션 풀 설정 관련
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)네[질문 내용]강의 잘 보고 있습니다현업에서 보통 와스에서 커넥션 설정시 어떤 프로퍼티를 주로 설정하는지 알고 싶습니다. 그리고 maximumPoolSize = minimumIdle 같은값으로 명시적으로설정하나요?? minimumIdle 을 설정하지 않으면 default 가 maximumPoolSize 와 같으니 설정을 안하는게 맞는지요??(제가 개발자가 아니라 테스트는 못해보고 문의드립니다 .)
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
인터셉터 로그 순서 문의
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]아래 캡처처럼 로그가 나오는데, LogInterceptor다음에 LoginCheckInterceptor의 로그가 나와야 하는거 아닌가요? (/item url 을 접속했을 때 나오는 로그들 입니다.) LogInterceptor preHandle의 REQUEST를 쏘고나서 바로 LoginCheckInterceptor의 preHandle의 로그들이 나와서 문의 드립니다. 제가 잘못 알고 있는 거 같은데 다시 한번 설명 부탁 드립니다. 그리고 postHandle의 로그는 왜 안나온건지 궁금합니다.
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
리터럴 대체문법
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]리터럴 대체문법이라고 말씀하셨는데 => ||자바스크립트 `` 백틱 같은 맥락이라고 보면 될까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
왜 파일이 안나오는지 모르겠어요;;
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]경로를 들어가고싶은데 안들어가져요참고로 관리자계정으로 했는데도 똑같아요
-
해결됨스프링 DB 1편 - 데이터 접근 핵심 원리
[제안] H2 데이터베이스 설정
JDBC 이해.pdf 강의 자료 중 H2 데이터베이스 설정 부분에 대해 다음과 같이 추가 제안드립니다. h2 설치 파일을 다운로드 하면 h2.sh 파일을 바로 확인할 수 없어 당황했는데, 강의 영상에서 터미널 path를 보고 bin 디렉토리 안에 파일이 있다는 것을 유추할 수 있었습니다. 이에, 아래와 같이 명시적으로 디렉토리 이동에 대한 내용을 추가하면 다른 수강생분들에게 도움이 될 것 같습니다:)[기존]MAC, 리눅스 사용자 권한 주기: chmod 755 h2.sh 실행: ./h2.sh[추가]MAC, 리눅스 사용자 디렉토리 이동 : cd bin 권한 주기: chmod 755 h2.sh 실행: ./h2.sh
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
인텔리제이 맥 단축키
갑자기 단축키 입력할때 엔터치면 됐었는데 지금은 탭해야 눌러져요그리고 단축키가 입력된 후에도 밑에 설명창이 안사라집니다밑에뜨는 연관 설명창이 너무 많아서 자동으로 사라지지 않고 직접 점 세 개 표시 누르지 않으면 타자를 칠 수가 없어요
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
맥 스프링화면 초기화 오류
잠깐 다른창 보고오면 스프링화면이 모두 초기화 됩니다 ㅜㅜ(위에 잘못된 코드 수정했습니다~)이렇게 코드치다가 돌아가는거 확인하려고 크롬창 잠깐 보고오면이런식으로 초기화가 됩니다 ㅜㅜ너무불편한데 뭐가 잘못된건가요??그리고 run 중지하면 아래와 같이 뜨는데 괜찮은건가요? 실행하면 아래와 같이 뜹니다4:06:54 AM: Executing ':ServletApplication.main()'...> Task :compileJava> Task :processResources UP-TO-DATE> Task :classes> Task :ServletApplication.main(). ____ _/\\ / ___'_ __ (_)_ _ \ \ \ \( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \\\/ ___)| |_)| | | | | || (_| | ) ) ) )' |____| .__|_| |_|_| |_\__, | / / / /=========|_|==============|___/=/_/_/_/:: Spring Boot :: (v2.7.16)2023-10-18 04:07:02.984 INFO 30258 --- [ main] hello.servlet.ServletApplication : Starting ServletApplication using Java 11.0.2 on userui-MacBookPro.local with PID 30258 (/Users/user/Desktop/SpringMVC/servlet/build/classes/java/main started by user in /Users/user/Desktop/SpringMVC/servlet)2023-10-18 04:07:02.987 INFO 30258 --- [ main] hello.servlet.ServletApplication : No active profile set, falling back to 1 default profile: "default"2023-10-18 04:07:04.469 INFO 30258 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)2023-10-18 04:07:04.477 INFO 30258 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]2023-10-18 04:07:04.477 INFO 30258 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.80]2023-10-18 04:07:04.578 INFO 30258 --- [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext2023-10-18 04:07:04.578 INFO 30258 --- [ main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1445 ms2023-10-18 04:07:05.209 INFO 30258 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''2023-10-18 04:07:05.224 INFO 30258 --- [ main] hello.servlet.ServletApplication : Started ServletApplication in 7.989 seconds (JVM running for 8.448)HelloServlet.service현재 자바 11war 확인 완료나머지 설정 완료스프링부트 2.7사용 os = macbuild and run = gradle로 설정(인텔리제이 무료버전이라서) 매번 창이 사라져서 그때그때마다 바로 코드 못고치고 다시 서블릿누르고 메인누르고 자바누르고 베이직누르고 이과정을 계속 반복합니다
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
select에서 sequence로 반복할경우 선택된 값이 보여지게 할려면 어떤식으로 해야할까요?
<select name="where" title="초급" class="sel_auto" th:field="*{beginnerCount}"> <option value="0">초급</option> <option th:each="num: ${#numbers.sequence(1, 10)}" th:text="${num + '명'}" th:value="${num}">1</option> </select>위와같이 numbers.sequence로 1~10까지 select로 만들었는데서버에서 th:field=*{beginnerCount} 값을 받아와서 만약 받아온 값이 5라고 하면 5가 선택되어지도록 하고 싶은데이럴 경우에는 어느부분을 수정을 해야 서버에서 받은 값이 선택이 되어질까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
중복회원가입 가능
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]회원 가입을 할 때 중복 회원 가입이 안 되어야 하는데 데이터를 살펴보면 중복으로 회원가입이 됩니다. 코드 상으로는 문제가 없어 보였는데 확인 한 번 부탁드리겠습니다!
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
@InitBinder
@InitBinder 를 사용하면어떤 매핑이 들어와도 @InitBinder 안의 검증기가 적용된다고 하셨는데이전에 mvc 설명에서 @modelattribute로 써주면 안의 내용이 모든 곳에서 다 적용되는것과 다른 개념인가요 ? 둘의 차이는 @InitBinder 를 사용하면@Validated 인자가 들어간 곳에서만 작동하는것 의 차이인가요 ?