묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
Error: ClientException: XMLHttpRequest error.
플러터 앱에서는 발행하지는 않구요 웹에서 발생합니다.Error: ClientException: XMLHttpRequest error. 검색해보니 우회 하는 방법이 있지만 올바른 방법은 아닌거 같구요 https://nomadcoders.co/community/thread/7643 최종해결방법은 api서버를 https로 구성해야 하는것일까요?그렇게하면 한PC에서는 사용은 할수 있는건지 궁금합니다.
-
미해결일러스트로 나만의 로고디자인 만들기
목업에 입혀지지 않아요.
6:22초에 저장을 누르면 로고가 목업에 입혀지는것을 볼 수 있다고했는데,"저장"이라는 글자는 안보이고 "X"를 눌렀을 때 저장이 뜨긴합니다. 그래서 저장을 누르면목업에 입혀지지 않고, 그냥 닫혀버립니다.... 강사님께서 가져오신 목업의 자료도 올려놓지 않고 어떤 목업이라는 사이트에 어떤걸 가져오셨는지 언지도 하지않고 갑자기 시작해버려서 어떤 목업을 사용했는지는 모르겠지만저는 목업월드에서 Business card 검색해서 나온것으로 가져왔습니다.결론적으로 질문은 저장을 눌렀을 때 목업에 입혀지지 않고, 그냥 닫혀버리는것이 질문입니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
@JoinColumn 엔티티 객체 반환
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. package hellojpa; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.EntityTransaction; import javax.persistence.Persistence; public class JpaMain { public static void main(String[] args) { EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello"); //persistence.xml에 설정한 UnitName을 인자로 넣어주면 해당 persistence.xml 읽어서 // 팩토리 생성 완료. (내부적으로 jdbc 써서 DB와의 connection도 완료된 상태) EntityManager em = emf.createEntityManager(); EntityTransaction tx = em.getTransaction(); tx.begin(); try{ Team team = new Team(); team.setName("TeamA"); em.persist(team); Member member = new Member(); member.setUsername("member1"); member.setTeam(team); em.persist(member); em.flush(); em.clear(); ///////////////////////////////////////////// Member findMember = em.find(Member.class, member.getId()); Team findTeam = findMember.getTeam(); System.out.println(findTeam.getName()); tx.commit(); } catch(Exception e) { tx.rollback(); } finally { em.close(); } 수업 듣다가 궁금한 점이 생겨 질문 남깁니다! em.clear() 하면 영속성 컨텍스트 초기화 되니까그 다음 em.find() 는 DB서버에 쿼리문 날려서내부적으로 객체 필드 초기화해서 반환합니다. 그런데 DB에는 TEAM_ID 컬럼에 그냥 숫자가 들어가있는데 어떻게 findMember의 Team 필드가 해당하는 Team객체로초기화 될 수 있었던건가요?? <가설>/////////////////////////////////////////// 표시한 부분 바로 아래의 Member findMember = em.find(Member.class, member.getId()); Member 엔티티 객체의 team 필드와 Member 테이블의TEAM_ID가 @JoinColumn 연관 관계 및 FK 설정 되어있다. referencedColumnName 의 default 값으로 인해MEMBER 테이블의 FK가 TEAM 테이블의 PK를 참조한다. em.find(Member.class, member.getId()); 하면JPA가 TEAM_ID(FK)로 MEMBER 와 TEAM을 JOIN해서얻은 데이터로 원하는 Member 객체와 연결된 Team 객체를 초기화할 수 있다. Team 객체 초기화한 것을 Member 객체의 team 필드에넣어서 Member 객체 초기화를 완료한다. 이를 반환한다. 이렇게 생각하는 것이 맞는건가요??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테스트 코드와 DataSourceUtils
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]Transactional이 작동을 안 하길래 찾아보다가, DataSourceUtils.getConnection을 사용하지 않고, (DataSource 객체).getConnection을 써서 그런간가 싶어서 이것을 수정하려 했는데, 이러니까 테스트 코드가 작동이 안되네요... 테스트 코드와 DataSourceUtils가 어떠한 연관이 있는 건가요? (DataSource 객체).getConnection으로 DB를 연동하면 테스트 코드가 잘 되는데, DataSourceUtils.getConnection으로 하면 실행할땐 잘 되지만, 테스트 코드로 하면 데이터베이스 연동에 오류가 나는 것 같네요...
-
미해결함수형 프로그래밍과 JavaScript ES6+
reduce 예제 코드 제안!
const reduce = (f, iter, acc) => { if (acc === undefined) { iter = iter[Symbol.iterator]() acc = iter.next().value } for (const v of iter) { acc = f(acc, v) } return acc }console.log(reduce(add, [1, 2, 3, 4, 5], 0)) console.log(reduce(add, [1, 2, 3, 4, 5]))강의 언제나 즐겁게 듣고 있습니다!reduce 파트 듣다가 js reduce에 가까운 구현은 이쪽이 아닐까 싶습니다!초기 값이 존재하지 않을 때, 배열의 첫번째 요소를 사용하는 사례를 더 잘 표현한 것 같습니다.
-
미해결Microservice 설계(with EventStorming,DDD)
DDD 현실적 적용
DDD 공부하면서 느낀 점이 현실적으로 완전한 DDD를 하는 것은 어렵지만 부분적으로도 적용시켜볼 수 있겠다라는 생각이 들었습니다. 예를 들면 전략적 설계는 MSA 로 전환할 때, 전술적 설계는 JPA를 사용할 때 활용해 볼 수 있겠다 싶은데 맞게 이해한 걸까요?
-
해결됨핸드폰으로 내 음악 만들기 FL STUDIO 기초편
4부 도레미파솔라시도 (?도음의 의미)
2-5-1 코드 진행 설명하실 때 1도음의 메이져 코드가 CM7이라고 하셨는데, 1도음이 무엇인가요? 1도음 = 1번째 음인건가요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링 통합테스트중 회원가입에서 에러가납니다.
코드는 전부 같게한것같고, 이런식으로 에러가 나면서 실제 h2 db에서 확인결과 가입이 안되고 있습니다.이유가 뭔지 못찾고 있습니다 ㅠㅠ
-
미해결처음 만난 리액트(React)
chap05) 저는 왜 폰트가 사진에 딱 붙어서 나올까요?
CSS 코드는 올바르게 짠 것 같은데저는 사진에 착 달라붙어서 폰트가 출력되네요..뭐가 문제일까요?
-
미해결C# WPF .NET Core(7.0)
7강에서 마지막 이미지 추가하는 부분...
안녕하세요. 강의 잘 보고 있습니다. 다름이 아니라 7강 마지막에서 이미지 추가하는 부분에 해당 이미지 속성창에서"빌드 작업" -> "없음"을 "리소스" 로 변경하면실행 시 적용되는 부분에 대해 설명 추가하면 좋았을 것 같습니다.(해당 속성을 "리소스"로 변경하지 않으면 실행 시 이미지가 나타나지 않습니다.) 약간 아쉬움이 남는 부분인 것 같아서 의견을 드려 보았습니다. 좋은 강의 감사합니다. ^^
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
MemberRepositoryTest 오류가 발생합니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]MemberRepositoryTest 코드 실행하는데 C:\bootex\spring01\mvc\src\main\java\com\sbgb\mvc\domain\member\MemberRepository.java:23: error: cannot find symbol member.setId(++sequence); ^ symbol: method setId(long) location: variable member of type Member 라고 오류가 발생합니다.소스코드 비교해도 다른게 없고 아예 복사붙여넣기 해도 작동이 안됩니다Lombok도 잘 돼있고 Getter Setter도 다 돼있는데 안되네요
-
미해결홍정모의 따라하며 배우는 C언어
int*
int* ptr 이거랑 int *ptr 이거랑 다른건가요? 다르다면 어떻게 다른건지 알려주세요 너무 헷갈리네요..
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
Json으로 데이터를 관리하는 방법에 대해 질문이 있습니다.
안녕하세요, 루키스님.강의에서 다뤄주신 부분은 아니지만,학교에서 다른 학생분들과 프로젝트를 하는 중에 Json으로 데이터를 관리하려는데 궁금한 부분이 생겨서 혹시나 싶어 여쭤봅니다...구글 스프레드시트에 데이터를 관리하면서 Json으로 불러와서 사용하고 있는데요.현업에서도 Json으로 데이터 관리를 많이 하시나요?기본타입이 아닌 Enum이나 Class타입인 데이터같은 경우, 시트에 문자열로 작성하고 Unity에서 사용할 때에는 리플렉션을 사용하여 동적으로 변환시키나요?다른 분들 작업하신 시트를 봤을 때에는 모든 시트에 첫 열을 index값으로 설정하셨던데, 어차피 Dictionary로 읽어온다면 유닛의 이름이나, 몬스터의 이름같은 값으로 첫 열을 설정하면 사용하기 더 편하지 않나요? 데이터의 첫 열을 index로 설정하는 이유가 궁금합니다.강의에서 다루시지 않은 부분에 대해 질문드려서 죄송합니다..구글에 검색해보면 "이렇게 이렇게 한다"라는 내용 뿐이지 왜 이렇게 하는지 납득할만한 내용을 찾을 수가 없더군요.
-
미해결실전! Querydsl
QueryDSL내부 동작관련 질문입니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 직접적인 관련은 없습니다2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]QueryDSL은 내부적으로 JPQL을 사용해서 DB와 통신을 하느건가요?
-
미해결실전! Querydsl
contextLoad에 작성하신 테스트 관련 질문입니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]현재 본 강의까지 H2설정을 application.yml에 하지 않았는데 contextLoads()에 작성한 테스트가 어떻게 성공적으로 수행되는 건가요?
-
미해결홍정모의 따라하며 배우는 C언어
*
9.15 10:28 질문입니다 파란색 바탕 밑줄 표시된 위아래 if절에서요 아래 if절이 왜 있는건가요? 그리고 위아래 if절이 무슨 차이인지 헷갈려요
-
미해결타입스크립트 입문 - 기초부터 실전까지
마우스 갖다대면 리턴값 설명 나오는 거 질문드려요
마우스 갖다대면 리턴값 없다고 떠야하는데 뜨지않네요. 어디를 설정해야할까요? 아래 캡쳐(강의모습)처럼 떠야하는데 그렇게 안뜨네요 ㅠ
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
회원가입 status 500 findOne 오류
안녕하십니까 제로초님 회원가입 구현 관련 질문드립니다.강의를 보며 코딩을 하였고 오타도 없는 것을 확인을 했습니다.그런데 response로 계속 500이 들어오며 findOne 관련 오류가 납니다.. 혹시 해결책을 알수있을까요?models/user.js//model은 mysql의 테이블과 같은 개념이다. module.exports = (sequelize, DataTypes) => { const User = sequelize.define( //여기서 User는 모델이름 => 자동으로 소문자화되고 복수형이 된다. ex)users "User", { //id는 mysql에서 자동으로 넣어주기 때문에 필요없다. email: { type: DataTypes.STRING(30), //STRIN, INTEGER, BOOLEAN, FLOAT, DATATIME 등이 자주 사용된다. //이메일은 문자열이고 30글자 이내여야한다. allowNull: false, //false면 필수 -> 무조건 입력해야함. unique: true, //이메일은 고유한 값이어야함. 중복값이 있으면 안된다. }, nickname: { type: DataTypes.STRING(30), allowNull: false, //false면 필수 -> 무조건 입력해야함. }, password: { type: DataTypes.STRING(100), //비밀번호는 암호화를 하게되면 길이가 늘어나기 때문에 여유있게 100글자 allowNull: false, //false면 필수 -> 무조건 입력해야함. }, }, { charset: "utf8", collate: "utf8_general_ci", //한글 저장 } ); User.associate = (db) => { db.User.hasMany(db.Post); //한 사람이 포스트를 여러개 가질 수 있음 db.User.hasMany(db.Comment); //한 사람이 댓글 여러개 가질 수 있음 db.User.belongsToMany(db.Post, { through: "Like", as: "Liked" }); //게시글 좋아요와 유저는 다대다 관계, 중간 테이블으 이름은 Like db.User.belongsToMany(db.User, { through: "Follow", as: "Followers", foreignKey: "FollowingId", }); db.User.belongsToMany(db.User, { through: "Follow", as: "Followings", foreignKey: "Followerid", }); //내가 팔로잉하는 사람을 찾으려면 나를 먼저 찾아야 한다. }; return User; };routes/user.jsconst express = require("express"); const { User } = require("../models"); const router = express.Router(); const bcrypt = require("bcrypt"); router.post("/", async (req, res, next) => { // POST /user/ try { const exUser = await User.findOne({ where: { email: req.body.email, }, }); if (exUser) { return res.status(403).send("이미 사용 중인 아이디입니다."); //여기서 리턴을 해주지 않으면 밑에 있는 res.json() 과 더불어서 응답이 두번이라 안된다. } const hashedPassword = await bcrypt.hash(req.body.password, 12); await User.create({ //순서를 맞춰주기 위한 Await //테이블안에 데이터 넣기 email: req.body.email, nickname: req.body.nickname, password: hashedPassword, //여기서 req.body가 프론트엔드 Signup에서 보낸 action.data와 같다. }); res.status(201).send("ok"); } catch (error) { console.error(error); next(error); // status 500 } }); module.exports = router;back/app.jsconst express = require("express"); const cors = require("cors"); const postRouter = require("./routes/post"); const userRouter = require("./routes/user"); const app = express(); const db = require("./models"); db.sequelize .sync() .then(() => { console.log("db 연결 성공"); }) .catch(console.error); app.use(express.json()); app.use(express.urlencoded({ extended: true })); //여기서 use는 express서버에서 뭔가 장착한다는 뜻 //또한 이 두 문장이 프론트에서 받아온 action.data를 req.body에 넣어준다는 뜻 app.get("/", (req, res) => { res.send("hello express"); }); app.get("/api", (req, res) => { res.send("hello api"); }); app.get("/api/posts", (req, res) => { res.json([ { id: 1, content: "hello" }, { id: 2, content: "hello2" }, { id: 3, content: "hello3" }, ]); }); app.use( cors({ origin: "*", //모두 허용 credentials: false, }) ); app.use("/post", postRouter); //"/post"가 중복되므로 앞으로 뽑아줄 수 있다. app.use("/user", userRouter); app.listen(3065, () => { console.log("서버 실행 중"); });
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
cascade = CascadeType.ALL을 설정하지 않고, orphanRemoval = true만 설정하였을때 DELETE 쿼리가 나가지 않는 이유
@Entity public class Parent { @OneToMany(mappedBy = "parent", orphanRemoval = true) private List<Child> childList = new ArrayList<>(); public void addChild(Child child) { childList.add(child); child.setParent(this); } }부모객체의 cascade는 설정하지 않고, orphanRemoval옵션만 true로 설정하였습니다.Child child1 = new Child(); Child child2 = new Child(); Parent parent = new Parent(); parent.addChild(child1); parent.addChild(child2); em.persist(parent); em.persist(child1); em.persist(child2); em.flush(); em.clear(); Parent findParent = em.find(Parent.class, parent.getId()); findParent.getChildList().remove(0); tx.commit();cascade = CascadeType.ALL을 설정하지 않았으므로 parent, child1, child2 모두 persist해주었고,영속성 컨테이너를 비운 다음 find로 DB에서 데이터를 가져와 findParent 객체를 만든 후, 0번 인덱스의 child1를 제거하였습니다.여기서 부모와의 연관관계가 끊어진 child1은 DB에서 삭제될 것으로 생각하였습니다. 하지만데이터가 아직 존재하는걸 확인하였습니다. [추가] em.flush를 마지막에 넣어주면 삭제가 되는 것을 확인하였습니다. 그냥 commit과 commit전에 flush를 한번 더 해주는 것과 어떤 차이가 있는 걸까요..?
-
해결됨두고두고 써먹는 유니티 VR
윈도우 빌드를 했는데 퀘스트랑 연동이 안됩니다.
윈도우 빌드로 빌딩을 하고 퀘스트를 써서 해보려고 하는데진행이 안되서 다른 설정을 해줘야 하는지 궁금합니다.관련된 사이트 링크라도 아시면 공유 해주시면 감사하겠습니다. 빌드 이후에 어떻게 해야하는지 자료가 없네요 다 APK로 빌드를 뺴네서 하는데 제가 하고 싶은것은 PC로 빌드해서 퀘스트에서 진행 하는것입니다.