묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨이펙티브 자바 완벽 공략 1부
Mock test 관련 질문입니다!
안녕하세요 선생님! 제가 이해를 한 내용이 맞는지 질문 드리고자 글을 남기게 되었습니다. (말씀드리기 앞서, 강의 너무 잘 듣고 있습니다 ㅎㅎ 좋은 강의 너무 감사드린다는 말씀 전하고 싶습니다!) 싱글톤 객체를 테스트마다 매번 생성하는게 Mock 객체를 생성하는 것 보다 operation 비용이 많이 든다고 설명해주셨는데요.제가 이 내용에 대해테스트 코드 상에서 싱글톤 객체를 생성할 때는 "필요한 모든 필드가 들어가있는 상태인 객체"를 생성하고, Mock객체를 생성할 때는 싱글톤 객체보다 필드가 적어서 상대적으로 비용이 적게 든다 라고 이해를 하고 있습니다. 혹시 이해한 내용이 맞을까요..?? (이해한 내용에 대해서 확실한지 검증하려고 여러 문헌을 찾아봤지만 찾을 수가 없었어요 ㅠㅠ)
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
Zybo-Z7 보드에 대한 기본 프로젝트 활용 문의
안녕하십니까?Vivado 프로젝트에 대해서 Zybo-Z7 보드에 대한 가장 기본 환경으로 프로젝트를 생성한 후 이를 저장하고, 다양한 예제를 작성할 때, 기본이 되는 프로젝트로 활용할 수 있을까요? Zybo-Z7-Base 라는 프로젝트를 만들어서 기본 환경 구축을 완료한 후LED 동작 예제, TIMER 동작 예제, PWM 출력 예제 등 다양한 예제를 제작할 때, 기본이 되는 프로젝트로 활용할 수 있을까요?Zybo-Z7-Base를 복사 or Export or Save as 등을 해서 다른 응용 예제로 사용할 수 있을까요?예제 진행 할 때마다 프로젝트를 새로 만들고, 하는 번거로움을 줄일 수 있을지 궁금합니다.(간단한 것은 괜찮지만, 기본 환경 구축에 대한 번거로움을 줄일 수 있을지 궁금하네요?)
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
@BeforeEach 사용할 때 트랜젝션 사이클 문의
안녕하세요!테스트 케이스에 @BeforeEach로 데이터 삽입 후 처리하는 중 오류가 발생해서 문의 드립니다.해당 오류 : java.util.NoSuchElementException: No value present통합 테스트에서만 발생하고 개별로 메소드마다 돌리면 문제 없음.제가 이해하기론 Test class에 @Transactional을 붙여주고 돌리면 테스트 메소드 1개 실행 후 정상 처리되면 롤백. 이렇게 이해하고 있습니다. 그래서 제 테스트가 돌아가는 사이클을@BeforeEach - > 좋아요_개수 Test -> 정상 처리 롤백@BeforeEach - > 좋아요_여부 Test -> 정상 처리 롤백@BeforeEach - > 좋아요_체크 Test -> 정상 처리 롤백@BeforeEach - > 좋아요_해제 Test -> 정상 처리 롤백위와 같이 이해하고 테스트들마다 정상 처리 롤백 후 비어있는 데이터에 다시 @BeforeEach로 데이터를 넣어주기에 넣어주는 데이터들의 ID값(GeneratedValue)이 1부터 시작하는 걸로 이해했습니다.그런데 등록된 데이터의 ID값으로 findOne을 하니 해당 ID가 없다고 뜹니다.무슨 문제인가..하고 디버깅을 돌리니1번 좋아요_개수 테스트의 business ID = 1번, 2번2번 좋아요_여부 테스트의 business ID = 3번, 4번3번 좋아요_체크 테스트의 business ID = 5번, 6번4번 좋아요_해제 테스트의 business ID = 7번, 8번이렇게 ID값이 부여가 됩니다. 롤백 자체가 되지 않았다면 1번을 조회했을 때도 데이터는 나와야 하는데 그건 나오지 않고 ID값만 다음 숫자로 넘어가는데 제가 무언가 놓치고 있을까요? 선생님의 강의는 전부 결제해서 트랜젝션 관련 부분을 아무리 들어봐도 아직 미숙해서 그런지 해당 부분의 문제를 모르겠습니다..클래스 레벨에 @Transactional을 붙여주면 내부에 before() 메소드 안에 트랜젝션들도 전파되고, 정상 처리되는 로직이라면 데이터 등록 후 좋아요_ㅁㅁ Test 로 넘어가고, 그 안에도 정상처리 되면 클래스 레벨에 물리 트랜젝션 커밋 처리 후 다음 테스트 로직이 실행 되는 걸로 이해 했는데 잘못 이해했다면 말씀 부탁드립니다ㅠ.ㅠ BusinessMarkServiceTest@SpringBootTest @Transactional public class BusinessMarkServiceTest { @Autowired BusinessMarkService businessMarkService; @Autowired MemberService memberService; @Autowired BusinessService businessService; @Autowired LoginService loginService; @BeforeEach public void before() { Member member = new Member(); member.setNickname("testMember"); member.setMail("testMember@test.com"); member.setPassword("test1234!"); member.setMember_type("B"); member.setMember_status("J"); member.setHint_password("hint_01"); member.setAnswer_password("answer"); member.setUpdated_at(now()); member.setCreated_at(now()); memberService.join(member); Member member2 = new Member(); member2.setNickname("testMember2"); member2.setMail("testMember2@test.com"); member2.setPassword("test1234!"); member2.setMember_type("B"); member2.setMember_status("J"); member2.setHint_password("hint_01"); member2.setAnswer_password("answer"); member2.setUpdated_at(now()); member2.setCreated_at(now()); memberService.join(member2); Business business = new Business(); business.setBusinessName("테스트밥집"); business.setHomepage("test.com"); business.setPhone("010-1234-5678"); business.setAddress("제주특별자치도 제주시 첨단로 242"); business.setLng((float) 33.450701); business.setLat((float) 126.570667); business.setCreated_at(now()); business.setUpdated_at(now()); businessService.join(business); Business business2 = new Business(); business2.setBusinessName("테스트밥집2"); business2.setHomepage("test2.com"); business2.setPhone("010-1234-5678"); business2.setAddress("제주특별자치도 제주시 첨단로 242"); business2.setLng((float) 33.450701); business2.setLat((float) 126.570667); business2.setCreated_at(now()); business2.setUpdated_at(now()); businessService.join(business2); } @Test public void 좋아요_체크() throws Exception{ //given Member loginMember = loginService.login("testMember2@test.com", "test1234!"); Business findBusiness = businessService.findOne(1L); //when BusinessMarkDto businessMarkDto = new BusinessMarkDto(loginMember,findBusiness.getId()); businessMarkService.pushBusinessMark(businessMarkDto); //then assertEquals(1, businessMarkService.getBusinessLikeInfo(businessMarkDto).getBusinessLikeNum()); } @Test public void 좋아요_해제() throws Exception{ //given Member loginMember = loginService.login("testMember@test.com", "test1234!"); Member loginMember2 = loginService.login("testMember2@test.com", "test1234!"); Business findBusiness = businessService.findOne(1L); //좋아요 표시하기 BusinessMarkDto businessMarkDto = new BusinessMarkDto(loginMember,findBusiness.getId()); businessMarkService.pushBusinessMark(businessMarkDto); BusinessMarkDto businessMarkDto2 = new BusinessMarkDto(loginMember2,findBusiness.getId()); businessMarkService.pushBusinessMark(businessMarkDto2); //when //businessMarkDto2가 한번 더 좋아요 눌러서 해제 시키기 businessMarkService.pushBusinessMark(businessMarkDto2); //then assertEquals(1, businessMarkService.getBusinessLikeInfo(businessMarkDto).getBusinessLikeNum()); } @Test public void 좋아요_개수() throws Exception{ //given Member loginMember = loginService.login("testMember@test.com", "test1234!"); Member loginMember2 = loginService.login("testMember2@test.com", "test1234!"); Business findBusiness = businessService.findOne(1L); //좋아요 표시하기 BusinessMarkDto businessMarkDto = new BusinessMarkDto(loginMember,findBusiness.getId()); businessMarkService.pushBusinessMark(businessMarkDto); BusinessMarkDto businessMarkDto2 = new BusinessMarkDto(loginMember2,findBusiness.getId()); businessMarkService.pushBusinessMark(businessMarkDto2); //when long businessMarkNum = businessMarkService.getBusinessLikeInfo(businessMarkDto2).getBusinessLikeNum(); //then assertEquals(2, businessMarkNum); } @Test public void 좋아요_여부() throws Exception{ //given Member loginMember = loginService.login("testMember@test.com", "test1234!"); Business findBusiness = businessService.findOne(1L); //when BusinessMarkDto businessMarkDto = new BusinessMarkDto(loginMember,findBusiness.getId()); businessMarkService.pushBusinessMark(businessMarkDto); Boolean check = businessMarkService.getBusinessLikeInfo(businessMarkDto).getCheck(); //then assertEquals(true, check); } } BusinessMarkService@Slf4j @Service @Transactional @RequiredArgsConstructor public class BusinessMarkService { private final BusinessMarkRepository businessMarkRepository; private final BusinessRepository businessRepository; //좋아요 및 취소 public Boolean pushBusinessMark(BusinessMarkDto businessMarkDto) { businessMarkRepository.BusinessMarkSearch(businessMarkDto.getMember().getMail(), businessMarkDto.getBusinessId()) .ifPresentOrElse(businessMark -> businessMarkRepository.deleteById(businessMark.getId()), ()-> { Business business = getBusiness(businessMarkDto); businessMarkRepository.save(new BusinessMark(businessMarkDto.getMember(), business)); }); return true; } //업체 게시글 찾기 @Transactional(readOnly = true) public Business getBusiness(BusinessMarkDto businessMarkDto) { return businessRepository.findById(businessMarkDto.getBusinessId()) .orElseThrow(() -> new IllegalArgumentException("해당 게시글은 존재하지 않습니다.")); } // 좋아요 개수 @Transactional(readOnly = true) public BusinessMarkResponseDto getBusinessLikeInfo(BusinessMarkDto businessMarkDto) { long businessLikeNum = getBusinessLikeNum(businessMarkDto); boolean check = checkPushedLike(businessMarkDto); return new BusinessMarkResponseDto(businessLikeNum, check); } @Transactional(readOnly = true) public Boolean checkPushedLike(BusinessMarkDto businessMarkDto) { return businessMarkRepository.BusinessMarkSearch(businessMarkDto.getMember().getMail(), businessMarkDto.getBusinessId()) .isPresent(); /*Optional<BusinessMark> businessMark = businessMarkRepository.BusinessMarkSearch(businessMarkDto.getMember().getMail(), businessMarkDto.getBusinessId()); if(businessMark != null){ return true; } return false;*/ } @Transactional(readOnly = true) public long getBusinessLikeNum(BusinessMarkDto businessMarkDto) { return businessMarkRepository.BusinessMark(businessMarkDto.getBusinessId()); } } MemberService@Slf4j @Service @Transactional(readOnly = true) @RequiredArgsConstructor public class MemberService { @Autowired private final MemberRepository memberRepository; @Autowired private PasswordEncoder passwordEncoder; /** 회원가입 **/ @Transactional public String join(Member member){ //비밀번호 암호화 후 레포지토리에 넘기기 String encodedPassword = passwordEncoder.encode(member.getPassword()); member.setPassword(encodedPassword); validateDuplicateMember(member);//중복회원검증 memberRepository.save(member); return member.getMail(); } /** 중복회원검증 **/ private void validateDuplicateMember(Member member) { List<Member> findMembers = memberRepository.findByMail(member.getMail()); if (!findMembers.isEmpty()){ throw new IllegalStateException("이미 존재하는 회원입니다"); } } private void validateDuplicateNickname(Member member) { Member findMembers = memberRepository.findOndByMail(member.getMail()); if (!findMembers.getNickname().equals(member.getNickname())){ throw new IllegalStateException("이미 존재하는 회원입니다"); } } /** 회원전체조회 **/ public List<Member> findMembers(){ return memberRepository.findAll(); } public Member findOne(String mail) { return memberRepository.findOndByMail(mail); } /** 회원 수정 **/ @Transactional public void update(String mail, String nickname, String answer_password){ Member member = memberRepository.findOndByMail(mail); if(nickname.equals(member.getNickname())) { validateDuplicateNickname(member); } member.setNickname(nickname); member.setAnswer_password(answer_password); member.setUpdated_at(now()); } /** 회원 탈퇴 **/ @Transactional public String delete(String mail, String password){ Member findUser = memberRepository.findOndByMail(mail); if(!passwordEncoder.matches(password,findUser.getPassword())){ //throw new IllegalStateException("비밀번호가 맞지 않습니다."); System.out.println("암호 실패"); return null; } findUser.setUpdated_at(now()); findUser.setMember_status("D"); return findUser.getPassword(); } } BusinessService@Slf4j @Service @Transactional(readOnly = true) @RequiredArgsConstructor public class BusinessService { @Autowired private final BusinessRepository businessRepository; @Autowired private final MemberRepository memberRepository; @Autowired private PasswordEncoder passwordEncoder; /** 중복업체검증 **/ private void validateDuplicateBusiness(Business business) { List<Business> findBusiness = businessRepository.findByBusinessName(business.getBusinessName()); if (!findBusiness.isEmpty()){ throw new IllegalStateException("이미 존재하는 업체명입니다"); } } /** 업체생성 **/ @Transactional public String join(Business business){ validateDuplicateBusiness(business);//중복회원검증 log.info("business {}", business); businessRepository.save(business); return business.getBusinessName(); } /** 업체 수정 **/ /** @Transactional public void saveBusiness(Business business){ businessRepository.save(business); } **/ @Transactional public void update(Long id, String BusinessName, String homepage, String phone, String address, float lat, float lng, String etc){ Business business = businessRepository.findById(id).orElseThrow(); if(!BusinessName.equals(business.getBusinessName())) { validateDuplicateBusiness(business); //중복 업체명 검증 } business.setBusinessName(BusinessName); business.setHomepage(homepage); business.setPhone(phone); business.setAddress(address); business.setLat(lat); business.setLng(lng); business.setEtc(etc); business.setUpdated_at(now()); } /** 업체 삭제 **/ @Transactional public String delete(Member member, Long id){ Member findUser = memberRepository.findOndByMail(member.getMail()); //Business business = businessRepository.findById(id).get(); Business business = businessRepository.findById(id).orElseThrow(); if(!passwordEncoder.matches(member.getPassword(),findUser.getPassword())){ //throw new IllegalStateException("비밀번호가 맞지 않습니다."); System.out.println("암호 실패"); return null; } business.setStatus("D"); business.setUpdated_at(now()); return findUser.getPassword(); } /** 업체 찾기 **/ public Business findOne(Long id) { Business business = businessRepository.findById(id).orElseThrow(); return business; } } LoginService@Service @Transactional(readOnly = true) @RequiredArgsConstructor public class LoginService { @Autowired private final MemberRepository memberRepository; @Autowired private PasswordEncoder passwordEncoder; public Member findOne(String mail){ return memberRepository.findOndByMail(mail);} /** 로그인 **/ @Transactional //public String login(Member member){ public Member login(String mail, String password){ List<Member> findMember = memberRepository.findByMail(mail); Member findUser = memberRepository.findOndByMail(mail); if (findMember==null){ //throw new IllegalStateException("해당 이메일의 유저가 존재하지 않습니다."); //System.out.println("이메일 실패"); return null; } if(!passwordEncoder.matches(password,findUser.getPassword())){ //throw new IllegalStateException("비밀번호가 맞지 않습니다."); return null; } System.out.println("로그인 완료 :"+findUser.getNickname()); //세션 표시를 위해 닉네임값 넘기기 return findUser; } /** 비밀번호 매치 **/ @Transactional public String passwordMatches(Member member){ Member findUser = memberRepository.findOndByMail(member.getMail()); if(!passwordEncoder.matches(member.getPassword(),findUser.getPassword())){ //throw new IllegalStateException("비밀번호가 맞지 않습니다."); System.out.println("암호 실패"); return null; } return findUser.getPassword(); } /** 비밀번호 변경 **/ @Transactional public void updatePassword(String mail, String editPassword){ Member member = memberRepository.findOndByMail(mail); if (editPassword.equals(member.getPassword())) { throw new IllegalStateException("이전 비밀번호와 동일합니다."); } member.setPassword(editPassword); member.setUpdated_at(now()); } }
-
미해결파이썬(Python)으로 데이터 기반 주식 퀀트 투자하기 Part1
한번에 여러개 코드 시행이 안될때
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! (스크린샷이 있으면 더더욱 좋습니다)- 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.수업중에 38번셀 코드를 실행하면 값이 3개다 나와야하는데 마지막 하나만 나오네요pre setting에 한줄에 코드 여러개가 같이 나오는 것을 먼저 하고도 이렇게 나오는데 이유가 뭔가요?s = pd.Series([10, 0, 1, 1, 2, 3, 4, 5, 6, np.nan])s[36]:0 10.0 1 0.0 2 1.0 3 1.0 4 2.0 5 3.0 6 4.0 7 5.0 8 6.0 9 NaN dtype: float64[38]:len(s)s.shapes.count() # not count `nan`[38]:9
-
해결됨웹 게임을 만들며 배우는 React에 TypeScript 적용하기
tsx파일에서 에러 표시
안녕하세요 제로초님현재 강의를 들으면서 tsx파일로 진행을 하고있는데위 사진과 같이 형식 주석은 Typescript 파일에서만 사용할수 있다고 나오고 아래에 input.focus() 부분은 밑줄조차 뜨지가 않는데 설정을 따로해줘야 하는 부분이 있는걸까요??혹시 setting 파일이위와 같이 되어있는데 이부분을 수정을 해야하는걸까요..?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
maven이 안됩니다.. 도움 부탁드립니다.
무직이라 가지고 있는 돈 큰 맘 먹고 책과 인강까지 구입했는데 첫 시작부터 막힙니다. 3~4시간동안했는데 안되니까 많이 속상하네요.. 도움 부탁드립니다...하...
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
domain 작성 후 프로그램 구동시 어떤 원리로 테이블이 생성되는건가요?
잘 따라하면서 테이블 H2 데이터베이스에 테이블생성 까지 완료되었습니다. 그런데, 어떻게 테이블이 생성되는건지 그 경로를 알고싶습니다. domain 을 작성하였을 뿐인데, 실행시키는 것 만으로 어떻게 테이블이 만들어지는건가요? @Entity 어노테이션이 붙어있으면 자동으로 인식해서 테이블을 만들어 주는 것인가요?
-
해결됨팀 개발을 위한 Git, GitHub 입문
수업 자료 부탁드리겠습니다!!
lcs3623@naver.com 입니다. 복습하고 싶어요!!
-
해결됨[리뉴얼] 코딩자율학습 제로초의 자바스크립트 입문
중첩 if문 사용하기 질문 있습니다
자바스크립트 책 98페이지 조언 부분에 first는false 이고 second는 true인 경우를 else if에 안넣으신 이유가 있을까요 ? 경우의 수가 총 4가지인데 3가지의 경우만 적혀 있어 이유가 궁금합니다 ! 밑 코드는 제가 생각하는 모든 경우의 수가 들어간 겁니다 ! let first = true;let second = false;if (first && second) { // first, second 둘다 true console.log('첫 조건 충족'); console.log('둘 조건 충족');} else if (first) { // first만 true console.log('첫 조건 충족'); console.log('둘 조건 불충족');} else if (second) {//second만 true console.log('첫 조건 불충족'); console.log('둘 조건 충족');} else { //둘다 false console.log('첫 조건 불충족'); console.log('둘 조건 불충족');}>첫 조건 충족> 둘 조건 불충족
-
미해결쉽고 자연스럽게 배워보는 Javascript 입문 - 코드스쿼드 마스터즈 코스 레벨1
세 번째 프로그램 관련 질문입니다
var size = 10;을 치고 그 다음 줄을 치려고 하는데 undefined가 나오는데 어떻게 해야 하는 건가요?
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
권한 요청드립니다
인프런 아이디: apple09072@vaiv.kr인프런 이메일: apple09072@vaiv.kr깃헙 아이디: apple09072@naver.com깃헙 Username: woobbi
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
4-A 질문
안녕하세요.http://boj.kr/4029d6ae4ae64f2f92598127f822baddmap에 넣지 않고 최소 비용이 갱신될 때마다 벡터를 clear하는 방식으로 풀이했습니다.최소 비용이 갱신되는 순간 지금까지 가지고 있었던 조합은 필요가 없어진다고 생각해서 그렇게 짰는데 여기서 문제가 생긴 것일까요?? (+) 이렇게 선생님 풀이와 방향은 비슷하게 짜는데 틀리거나 시간초과가 뜨는 경우, 원인을 찾기 위해서 시간을 충분히 투자하는 게 좋나요? 아니면 선생님 풀이를 최대한 숙지한 뒤 그냥 넘어가는 게 좋은지 궁금합니다. 보통 시간을 투자해도 뭐가 문제인지 원인을 찾지 못하거나 시간이 지나치게 많이 들게 되어 고민입니다. 최대한 고민해보고 해결이 안 되는 것만 여쭤보고는 있는데 이런 경우가 꽤 많아서요;
-
미해결한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
페이지 구현 - 홈 (/)
안녕하세요 🙋♂️한 입 크기로 잘라먹는 리액트 강사 이정환 winterlood입니다!물론 질문은 수강생 여러분들 편하게 해 주시면 되지만!아래의 몇 가지 규칙만 지켜주시면 더 빠르고 정확한 답변을 드릴 수 있습니다!- 페이지 구현 - 홈 (/)해당 강의 완료 코드를 확인할수 있을까요?우측 다이어리 리스트가 안뜨는데 어느부분이 오류인지 모르겠습니다.깃 레파지토리 링크같은걸 공유해주셔도 좋을것 같습니다
-
미해결Vue3 완벽 마스터: 기초부터 실전까지 - "기본편"
Bootstrap5 설치
Bootstrap5 설치 강의부분을 똑같이 따라 했는데요메뉴 위치와 드롭다운 부분이 마우스로 눌러도 동작되지 않습니다.기존 내용에서 변경이 된것 같은데 어떻게 해야 될까요?
-
미해결스프링 핵심 원리 - 기본편
NoUniqueBeanDefinitionException
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요.7.의존관계 자동 주입 에서 "@Autowired필드명, @Qualifier, @Primary" 수강중 다음과 같이 에러가 발생하였습니다. 일단 다음 강의 '어노테이션 직접 만들기' 까지 수강하면서 코드를 살펴보았는데도 어느 부분에서 문제가 발생한지 모르겠습니다. 혹시 몰라 압축 파일 같이 링크 올리겠습니다.공유 링크 : https://drive.google.com/file/d/1pHOEa_CIrv51DyxZSK9Lpqkqcef74iRt/view?usp=sharing감사합니다.
-
미해결화이트해커가 되기 위한 8가지 웹 해킹 기술
칼리리눅스 실행시 문제
칼리리눅스 설치에서 로그인 페이지가 안 들어가져요!
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
build가 되지 않고 에러가 뜹니다.
intelliJ무료 버전을 사용하고 있어서 아래와 같이 해당 코드를 주석처리하였습니다.2. gradle Setting에서 intellij 로 선택시 아직도 오류가 발생합니다.3. 오류화면Setting에서 gradle로 변경해도 오류가 발생합니다ㅠㅠ
-
미해결리눅스 입문 - 개념으로 탄탄히!!
block
설명을 너무 친절하게 잘해주셔서 감사합니다그런데 block 상태라는게 외부의 response를 기다리는 상태라고 이해가 가는데 맞나요 ? (현재 설명은 HDD 의 응답)
-
미해결처음 배우는 리액트 네이티브
KeyboardAwareScrollView import 시 오류 도움요청
제목과 같이 KeyboardAwareScrollView import 시 아래와 같은 에러가 뜹니다(진도 : 회원가입 화면 6:30 쯤 )어떻게 해결해야 되는지 모르겠습니다 도와주세요;ㅁ; 깃허브 주소 : https://github.com/BPNS-Prectice/JE_Task-ReactNative_app
-
미해결리눅스 입문 - 개념으로 탄탄히!!
6:14 ~
6:14 부터는 cpu가 프로세스를 어떻게 계산하는지여러 알고리즘 중 하나를 설명 해주신건가요 ??아니면 다 cpu가 이렇게 처리를 하나요 ?