묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결웹 개발자와 정보보안 입문자가 꼭 알아야 할 웹 해킹 & 시큐어 코딩
강의자료는 어디서 보나요?
강의자료는 어디서 보나요? 파일로 같이 보고 싶어서요!
-
미해결VBA 빅픽처
선생님 1강에서 나눔고딕 코딩으로 변경하기 위한 오른쪽 목록표시가 뜨지않아서 문의드립니다!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 이렇게 뜨는데 확인 부탁드려요, 그리고 vba기초자인데 이와관련하여 들을만한 강의나 책이 있을까요 프로시저와 같은 말이 생소하여 따라가는데 조금 버거워서요
-
미해결15일간의 빅데이터 파일럿 프로젝트
mv 명령 후 파일 삭제...
단순 질문 입니다만... mv 명령어로 파일을 옮기면 파일이 없어지네요 ... 혹시 원인을 알 수 있을까요 ?? [root@server02 working]# cd SmartCar/ [root@server02 SmartCar]# ls SmartCarStatusInfo_20220320.txt [root@server02 SmartCar]# ls -ltrh total 3.0M -rw-r--r-- 1 root root 3.0M Mar 21 04:30 SmartCarStatusInfo_20220320.txt [root@server02 SmartCar]# mv ./SmartCarStatusInfo_20220320.txt /home/pilot-pjt/working/car-batch-log/ [root@server02 SmartCar]# cd /home/pilot-pjt/working/car-batch-log/ [root@server02 car-batch-log]# ls [root@server02 car-batch-log]# ls -ltr total 0 [root@server02 car-batch-log]# cd .. [root@server02 working]# cd ./SmartCar/ [root@server02 working]# ls -ltr total 1396 -rwxrwxrwx 1 root root 1417133 Mar 9 15:31 bigdata.smartcar.loggen-1.0.jar drwxrwxrwx 2 root root 4096 Mar 9 15:32 driver-realtime-log -rwxrwxrwx 1 root root 0 Mar 21 04:54 ${sys:logFilename} drwxrwxrwx 2 root root 4096 Mar 21 04:54 SmartCar drwxrwxrwx 3 root root 4096 Mar 21 04:55 car-batch-log [root@server02 SmartCar]# ls p.s. 강의 기간이 오늘까지인데... 혹시 일주일 정도 더 연장이 가능할까요 ...?
-
미해결iOS/Android 앱 개발을 위한 실전 React Native - Basic
node js 10.15.1 설치가 안됩니다
안녕하세요. nvm설치를 성공적으로 한 후 10.15.1 install 하려니 요청한 url에서 에러 404를 리턴했다고 계속 뜹니다. 어떻게 해결해야할까요? curl: (22) The requested URL returned error: 404
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
BatchSize와 OneToMany에 대해 질문드립니다.
안녕하세요. 좋은 강의 정말 잘 듣고있습니다. 컬렉션 조회 최적화 - 페이징과 한계 돌파편을 보다가 궁금한 점이 생겨서 질문드립니다. BatchSize = 100 설정 시 다대일 관계에서는 BatchSize에 설정한 만큼 100개의 데이터를 조회하는데 일대다 관계에서는 컬렉션의 크기에 따라 조회되는 데이터 크기가 굉장히 많을 수도 있어 보입니다. 이전에 예제로 사용하셨던 Team과 Member 클래스로 예를 들면 [ ManyToOne 매핑 ] [ 사용 시 ] 위 처럼 Member 엔티티로 다대일 관계를 갖는 team에 접근하는 경우 BatchSize에 의해 최대 100개의 팀을 조회합니다. 쿼리도 생각한대로 실행되고.. 그런데 아래처럼 Team 엔티티로 일대다 관계인 members 컬렉션에 접근하면 [ OneToMany 매핑 ] [ 사용 시 ] 이런 쿼리가 실행되더라구요. 만약 해당 팀에 소속된 회원이 10000명이라 치면 10000명이 다 조회되는건가요? 애초에 실무에선 저렇게 설계하면 안되는건지, 그런건 Member를 조회하며 페이징해서 사용해야 되는지, 아니면 다르게 튜닝하는 법이 있는지 궁금해서 질문드립니다. ( 관계를 반대로 써놨었네요. 수정했습니다. )
-
미해결[D.P.(DappProject)] 디앱 프로젝트(NFT 생성, NFT 구매 및 판매)
안녕하세요! 질문있습니다.
Java Spring 기반으로 NFT 마켓 API 서버를 만드는 것도 가능할까요? 혹시 가능하다면 무엇을 봐야할지 알려주시면 감사하겠습니다.
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
선생님, 질문이 있습니다.
강의와는 다소 관련이 없을 수는 있는데요, 행렬 미분에 관한 질문입니다. 가령 어떤 이미지 배열 I가 [[0.4488189 0.41338583 0.43307087 0.44094488 0.43700787] [0.44094488 0.44094488 0.4015748 0.42125984 0.42913386] [0.4015748 0.4488189 0.4015748 0.42913386 0.43700787] [0.42519685 0.47637795 0.42519685 0.42519685 0.42913386] [0.42125984 0.45275591 0.4015748 0.42913386 0.40944882]] 이렇게 주어져 있을 때, 이에 대한 row-direction으로 forward differenceI[x+1,y] - I[x,y] 를 구한다는 말이 무슨 말인지 이해가 되지 않습니다. 그러니까 row 방향이라는 말은 가로 벡터를 기준으로 미분을 구한다는 소리같은데 미지수 x를 정해놓고 미분을 하는 것도 아니고 이게 헷갈립니다. 저 표현식만 놓고보면 가령 I[2,1] - I[1,1], I[3,1] - I[2,1] ... 이런 계산을 각각 하라는 말같은데, 이렇게 되면 그 차를 각각 구한 행렬은 4 * 5크기가 되지 않나요?I[x+1,y] - I[x,y] 정확히 이 식이 무엇을 의미하는지 잘 모르겠습니다. 언뜻 봐서는 F(x)가 만약 존재한다면 행렬 I에 대해서 x가 1일 때의 미분값을 각각 구하라는 뜻인데 스칼라 값 기준으로 구하게 되면 4*5가 되어서 뭔가 원행렬 I와 크기가 다르게 되니 그거는 또 아닌거같고.. 정확히 잘 모르겠습니다ㅜㅜ!!
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
안녕하세요 state 관련 질문이요
export const initialState = { mainPosts: [ { id: 1, User: { id: 1, nickname: "제로초", }, content: "첫 번째 게시글 #해시태그 #익스프레스", Images: [ { src: "https://bookthumb-phinf.pstatic.net/cover/137/995/13799585.jpg?udate=20180726", }, { src: "http://gimg.gilbut.co.kr/book/BN001958/rn_view_BN001958.jpg", }, { src: "https://gimg.gilbut.co.kr/book/BN001998/rn_view_BN001998.jpg", }, ], Comments: [ { User: { nickname: "nero", }, content: "우와 개정판이 나왔군요~", }, { User: { nickname: "hero", }, content: "얼른 사고 싶어요!", }, ], }, ], imagePaths: [], postAdded: false, }; mainPosts,Comments에서 [{}] 이런구조로 작성하셨는데 제가 생각하기에 []배열로 감싸지 않고 {}객체로 바로 써도 괜찮을 거 같았는데 [{}] 이 구조로 작성하신이유가 map함수때 이용하기 위해서인가요?
-
미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
FieldError at /instagram/post/
안녕하세요, 선생님! 오늘도 신기한 기능 알려주셔서 감사합니다. 그런데 model.py와 view.py 수정 후 migrate까지 했는데도, FieldError가 발생합니다. create_at에 문제가 있다고 추측만가능하고, 해결방법을 찾지 못했습니다. 정확하게 이 에러가 어떤 상황에서 발생하는지, 어떻게 해결할 수 있는지 조언해주실 수 있으신가요? 에러화면 view.py from datetime import timedeltafrom django.contrib import messagesfrom django.contrib.auth import get_user_modelfrom django.contrib.auth.decorators import login_requiredfrom django.db.models import Qfrom django.shortcuts import render, redirect, get_object_or_404from django.utils import timezonefrom .forms import PostFormfrom .models import Post@login_requireddef index(request): timesince = timezone.now() - timedelta(days=3) post_list = Post.objects.all()\ .filter( Q(author=request.user) | Q(author__in=request.user.following_set.all()) )\ .filter( created_at__gte=timesince ) suggested_user_list = get_user_model().objects.all()\ .exclude(pk=request.user.pk)\ .exclude(pk__in=request.user.following_set.all())[:3] return render(request, "instagram/index.html", { "post_list": post_list, "suggested_user_list": suggested_user_list, }) models.py import refrom django.conf import settingsfrom django.db import modelsfrom django.urls import reverse# Create your models here.class BaseModel(models.Model): created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) class Meta: abstract = Trueclass Post(models.Model): author = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE) photo = models.ImageField(upload_to = "instagram/post/%Y/%m/%d") caption = models.TextField(max_length=500) tag_set = models.ManyToManyField('Tag', blank = True) location = models.CharField(max_length=100) def __str__(self): return self.caption
-
미해결[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
북마크 탭에서 삭제기능을 추가하려고합니다
북마크 탭에서 삭제기능을 추가하려고합니다 삭제기능을 추가해 북마크 아이콘을 누르면 삭제된 콘텐츠빼고 새롭게 다시북마크 탭에 드가게되는데 이거를 처음 북마크상태가 남아있어 계쏙 계쏙 쌓이게 됩니다 기존의 레이아웃에 계쏙 초기화시키는 방법밖에 없을까요?.. BookmarkFragment.kt ``` package com.example.communityapp.fragmentsimport android.os.Bundleimport android.util.Logimport androidx.fragment.app.Fragmentimport android.view.LayoutInflaterimport android.view.Viewimport android.view.ViewGroupimport androidx.databinding.DataBindingUtilimport androidx.navigation.findNavControllerimport androidx.recyclerview.widget.GridLayoutManagerimport androidx.recyclerview.widget.RecyclerViewimport com.example.communityapp.Rimport com.example.communityapp.contentlist.BookmarkRVAdapterimport com.example.communityapp.contentlist.ContentModelimport com.example.communityapp.databinding.FragmentBookmarkBindingimport com.example.communityapp.utills.FBRefimport com.example.communityapp.utills.FBauthimport com.google.firebase.database.DataSnapshotimport com.google.firebase.database.DatabaseErrorimport com.google.firebase.database.ValueEventListener// TODO: Rename parameter arguments, choose names that matchclass BookmarkFragment : Fragment() { private lateinit var binding: FragmentBookmarkBinding lateinit var rvAdapter: BookmarkRVAdapter val bookmarkIdList = mutableListOf<String>() val items = ArrayList<ContentModel>() val itemKeyList = ArrayList<String>() private val TAG = BookmarkFragment::class.java.simpleName override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) } override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle? ): View? { binding = DataBindingUtil.inflate(inflater, R.layout.fragment_bookmark, container, false) //2 getBookmarkData() //3 rvAdapter = BookmarkRVAdapter(requireContext(), items, itemKeyList, bookmarkIdList) val rv: RecyclerView = binding.bookmarkRV rv.adapter = rvAdapter rv.layoutManager = GridLayoutManager(requireContext(), 2) binding.hometap.setOnClickListener { it.findNavController().navigate(R.id.action_bookmarkFragment_to_homeFragment) } binding.tiptap.setOnClickListener { it.findNavController().navigate(R.id.action_bookmarkFragment_to_tipFragment) } binding.storetap.setOnClickListener { it.findNavController().navigate(R.id.action_bookmarkFragment_to_storeFragment) } binding.talktap.setOnClickListener { it.findNavController().navigate(R.id.action_bookmarkFragment_to_talkFragment) } return binding.root } private fun getCategoryData() { val postListener = object : ValueEventListener { override fun onDataChange(dataSnapshot: DataSnapshot) { for (dataModel in dataSnapshot.children) { Log.d(TAG, dataModel.toString()) val item = dataModel.getValue(ContentModel::class.java) if (bookmarkIdList.contains(dataModel.key.toString())) { items.add(item!!) itemKeyList.add(dataModel.key.toString()) } } rvAdapter.notifyDataSetChanged() } override fun onCancelled(databaseError: DatabaseError) { // Getting Post failed, log a message Log.w("ContentListActivity", "loadPost:onCancelled", databaseError.toException()) } } FBRef.category1.addValueEventListener(postListener) FBRef.category2.addValueEventListener(postListener) FBRef.category3.addValueEventListener(postListener) FBRef.category4.addValueEventListener(postListener) FBRef.category5.addValueEventListener(postListener) FBRef.category6.addValueEventListener(postListener) FBRef.category7.addValueEventListener(postListener) FBRef.category8.addValueEventListener(postListener) } private fun getBookmarkData() { val postListener = object : ValueEventListener { override fun onDataChange(dataSnapshot: DataSnapshot) { bookmarkIdList.clear() for (dataModel in dataSnapshot.children) { bookmarkIdList.add(dataModel.key.toString()) }//1 rvAdapter.notifyDataSetChanged() getCategoryData() } override fun onCancelled(databaseError: DatabaseError) { // Getting Post failed, log a message Log.w("ContentListActivity", "loadPost:onCancelled", databaseError.toException()) } } FBRef.bookmarkRef.child(FBauth.getUid()).addValueEventListener(postListener) }}```BookMarkRVAdapter.kt``` package com.example.communityapp.contentlistimport android.content.Contextimport android.content.Intentimport android.util.Logimport android.view.LayoutInflaterimport android.view.Viewimport android.view.ViewGroupimport android.widget.ImageViewimport android.widget.TextViewimport android.widget.Toastimport androidx.recyclerview.widget.RecyclerViewimport com.bumptech.glide.Glideimport com.example.communityapp.Rimport com.example.communityapp.utills.FBRefimport com.example.communityapp.utills.FBauthclass BookmarkRVAdapter(val context: Context,val items: ArrayList<ContentModel>,val keyList:ArrayList<String>,val bookmarkIdList:MutableList<String>) : RecyclerView.Adapter<BookmarkRVAdapter.ViewHolder>() { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BookmarkRVAdapter.ViewHolder { val v = LayoutInflater.from(parent.context).inflate(R.layout.content_rv_item, parent, false) return ViewHolder(v) } override fun onBindViewHolder(holder: BookmarkRVAdapter.ViewHolder, position: Int) { holder.bindItem(items[position],keyList[position]) } override fun getItemCount(): Int { return items.size } inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { fun bindItem(item: ContentModel,key:String) { itemView.setOnClickListener { Toast.makeText(context, item.title, Toast.LENGTH_SHORT).show() val intent = Intent(context, ContentshowActivity::class.java) intent.putExtra("url", item.webUrl) itemView.context.startActivity(intent) } val contentTitle = itemView.findViewById<TextView>(R.id.textArea) val imageViewArea = itemView.findViewById<ImageView>(R.id.imageArea) val bookmarkArea=itemView.findViewById<ImageView>(R.id.bookmarkArea) bookmarkArea.setImageResource(R.drawable.bookmark_color) bookmarkArea.setOnClickListener{ Toast.makeText(context, key, Toast.LENGTH_SHORT) Log.d("BookmarkRVAdapter", FBauth.getUid()) FBRef.bookmarkRef .child(FBauth.getUid()) .child(key) .removeValue() notifyDataSetChanged() } contentTitle.text = item.title Glide.with(context) .load(item.imageUrl) .into(imageViewArea) } }}``` 자신이 북마크한 콘텐츠를 다시 bookmarkFragment 에서 삭제하려고할때 bookmarkIdlist 에서는 원활하게 삭제되는데 화면상으로 레이아웃에서 기존에 bookmarkIdlist 가 남아있는데 화면상에서 기존에있는 bookmarkIdlist를 어떻게 삭제해야할까요 ?...ㅠㅠㅠ
-
해결됨프론트엔드 개발자를 위한, 실전 웹 성능 최적화(feat. React) - Part. 2
정말유익해요
좋은 정보 정말 감사합니다! 돈이 아깝지 않네요ㅎㅎ
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
Object Start함수 실행 순서 관련 질문있습니다.
몬스터 가짓 수를 늘리던 도중에 CurrentGrid가 null로 떠서 보니까 씬이 로드되면서 CurrentGrid가 채워지는데 채워지기도 전에 먼저 MonsterController의 Init이 실행되면서 생기는 문제였습니다. 구글링 해보니까 컴포넌트 Start함수의 실행순서를 변경할 수 있다기에 그렇게 해서 오류를 해결하긴 했는데 뭔가 시한폭탄을 하나 숨겨둔 느낌이라 좀 찜찜한 느낌이 듭니다. 원래 유니티 Start함수의 실행순서에 관련한 오류가 종종 있는 편이셨는지 여쭙고 싶습니다!
-
해결됨자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
강사님 질문있습니다.
강의에서 HTML파일로 문제를 푸는데, js파일로 문제를 풀지는 못하나요? 만약 풀 수 있다면 섹션1, 1번 문제를 js 방식으로 적어주셨으면 합니다.
-
미해결React 기반 Gatsby로 기술 블로그 개발하기
다른 부분에서 오류가 안나는데 {post.map 부분이 계속 오류가 납니다.
-das import React, { FunctionComponent } from 'react' import styled from '@emotion/styled' import PostItem from 'components/Main/PostItem' import { PostListItemType } from 'types/PostItem.types' export type PostType = { node: { id: string frontmatter: { title: string summary: string date: string categories: string[] thumbnail: { publicURL: string } } } } type PostListProps = { posts: PostListItemType[] } const PostListWrapper = styled.div` display: grid; grid-template-columns: 1fr 1fr; grid-gap: 20px; width: 768px; margin: 0 auto; padding: 50px 0 100px; @media (max-width: 768px) { grid-template-columns: 1fr; width: 100%; padding: 50px 20px; } ` const PostList: FunctionComponent<PostListProps> = function ({ posts }) { return ( <PostListWrapper> {posts.map( ({ node: { id, frontmatter }, }: PostType) => ( <PostItem {...frontmatter} link="https://www.google.co.kr/" key={id} /> ), )} </PostListWrapper> ) } export default PostList 색칠한 부분이 Argument of type '({ node: { id, frontmatter }, }: PostType) => JSX.Element' is not assignable to parameter of type '(value: PostListItemType, index: number, array: PostListItemType[]) => Element'. Types of parameters '__0' and 'value' are incompatible. Type 'PostListItemType' is not assignable to type 'PostType'. The types of 'node.frontmatter.thumbnail' are incompatible between these types. Property 'publicURL' is missing in type '{ childImageSharp: { gatsbyImageData: IGatsbyImageData; }; }' but required in type '{ publicURL: string; }'. 이런 에러를 띄웁니다... 계속 처음부터 따라해봤는데 요부분만 해결이 안되요...
-
미해결[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발
put 과제
제가 너무 부족해서 이것 저것 구글링 해보느라 오래걸렸는데 결국에는 stream().foreach() 문으로 해결해봤습니다! 강의 하나 하나 너무 재밌습니다, 좋은 강의 만들어주셔서 감사합니다
-
미해결Vue.js + TypeScript 완벽 가이드
error overlay를 감추는 필드를 추가하면 에러가 발생합니다.
"점진적인 타입스크립트 적용 방식 2단계 - 컴포넌트, API 함수" > "API 파일에 타입스크립트 적용 및 호출 로직 구현"의 [1분 24초 경] error overlay를 감추는 방식이 변경된 것 같습니다. 저의 경우, vue cli로 프로젝트를 생성하면 vue.config.js가 기본으로 생성되고 있고, 약간의 내용(i.e. "transpileDependencies: true,")이 포함되어있습니다. 일단 무시하면서 진행하고 있는데, 아래의 에러가 발생하고 있습니다. 변경된 방법을 아시나요? [package.json] "dependencies": { "axios": "^0.26.1", "core-js": "^3.8.3", "vue": "^2.6.14", "vue-router": "^3.0.1", "vuex": "^3.0.1" }, "devDependencies": { "@typescript-eslint/eslint-plugin": "^5.4.0", "@typescript-eslint/parser": "^5.4.0", "@vue/cli-plugin-babel": "~5.0.0", "@vue/cli-plugin-eslint": "~5.0.0", "@vue/cli-plugin-typescript": "~5.0.0", "@vue/cli-service": "~5.0.0", "@vue/eslint-config-typescript": "^9.1.0", "eslint": "^7.32.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-prettier": "^4.0.0", "eslint-plugin-vue": "^8.0.3", "prettier": "^2.4.1", "typescript": "~4.5.5", "vue-template-compiler": "^2.6.14" } [vue.config.js] const { defineConfig } = require("@vue/cli-service"); module.exports = defineConfig({ transpileDependencies: true, lintOnSave: false, devServer: { overlay: false, }, }); [에러 메시지] ----- C:\test\vue-news-ts>npm run serve > vue-news-ts@0.1.0 serve C:\test\vue-news-ts > vue-cli-service serve INFO Starting development server... ERROR ValidationError: Invalid options object. Dev Server has been initialized using an options object that does not match the API schema. - options has an unknown property 'overlay'. These properties are valid: object { allowedHosts?, bonjour?, client?, compress?, devMiddleware?, headers?, historyApiFallback?, host?, hot?, http2?, https?, ipc?, liveReload?, magicHtml?, onAfterSetupMiddleware?, onBeforeSetupMiddleware?, onListening?, open?, port?, proxy?, server?, setupExitSignals?, setupMiddlewares?, static?, watchFiles?, webSocketServer? } ValidationError: Invalid options object. Dev Server has been initialized using an options object that does not match the API schema. - options has an unknown property 'overlay'. These properties are valid: object { allowedHosts?, bonjour?, client?, compress?, devMiddleware?, headers?, historyApiFallback?, host?, hot?, http2?, https?, ipc?, liveReload?, magicHtml?, onAfterSetupMiddleware?, onBeforeSetupMiddleware?, onListening?, open?, port?, proxy?, server?, setupExitSignals?, setupMiddlewares?, static?, watchFiles?, webSocketServer? } at validate (C:\test\vue-news-ts\node_modules\webpack-dev-server\node_modules\schema-utils\dist\validate.js:115:11) at new Server (C:\test\vue-news-ts\node_modules\webpack-dev-server\lib\Server.js:232:5) at serve (C:\test\vue-news-ts\node_modules\@vue\cli-service\lib\commands\serve.js:183:20) at processTicksAndRejections (internal/process/task_queues.js:93:5) npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! vue-news-ts@0.1.0 serve: `vue-cli-service serve` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the vue-news-ts@0.1.0 serve script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\sundlee\AppData\Roaming\npm-cache\_logs\2022-03-20T14_22_26_938Z-debug.log C:\test\vue-news-ts> ----
-
미해결
[전자정부] 한 화면에 폼 입력,저장 리스트화면을 구현하려고합니다
ajax를 쓰지않고 그냥 저장누르면 새로고침되면서 리스트에 추가되게 만들고있는데 java초보라 어렵네요오류코드를 보니 sql에서 에러난거같은데 아무리봐도 제대로 넣은거같습니다.DB에서 직접넣은 데이터는 리스트에 잘나옵니다... 근데 form에서 입력하면 아래 오류가 뜨네요..혹시 다른문제가 있을까요? 몇시간을 삽질하고있는건지 모르겠습니다 ㅠㅠ 에러코드 2022-03-20 22:09:15,731 INFO [org.springframework.beans.factory.xml.XmlBeanDefinitionReader] Loading XML bean definitions from class path resource [org/springframework/jdbc/support/sql-error-codes.xml] sql.xml <sqlMap namespace="CodeSpace"> <typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/> <typeAlias alias="codeVO" type="egovframework.example.sample.service.CodeVO"/> <insert id ="codeDAO.insertCodes"> INSERT INTO codes(codegid,codegnm,code,codenm,useat) VALUES(#codegid#,#codegnm#,#code#,#codenm#,#useat#) </insert> <select id="coodDAO.selectCodesList" resultClass="egovMap"> SELECT codegid,codegnm,code,codenm,useat FROM codes ORDER BY codegid ASC </select> </sqlMap> Controller @Controller public class CodeController { @Resource(name="codeService") private CodeService codeService; @RequestMapping(value="/codeList.do") public String selectCodesList(@ModelAttribute("Codevo") CodeVO vo, ModelMap model) throws Exception{ List<?> list = codeService.selectCodesList(vo); System.out.println("list ===>>" + list); model.addAttribute("resultlist",list); return "code/codeList"; } @RequestMapping(value="/codeWriteSave.do") public String insertCodes(@ModelAttribute("Codevo") CodeVO vo) throws Exception{ String result = codeService.insertCodes(vo); if (result == null) { System.out.println("저장성공"); } else { System.out.println("저장실패"); } return "foward:/codeList.do"; } } jsp <form:form action="/codeWriteSave.do" method="post" commandName="Codevo"> <label>그룹코드<form:input path="codegid"/> <label>그룹명<form:input path="codegnm"/> <label>코드<form:input path="code"/> <label>코드명<form:input path="codenm"/> <label>사용여부 <form:radiobutton path="useat" value="Y" label="Y"/> <form:radiobutton path="useat" value="N" label="N"/> </label> <button type="submit" onclick="fn_submit(); return false">저장</button> <button type="reset">취소</button> </form:form>
-
미해결스프링 핵심 원리 - 기본편
프로토타입 인스턴스 생성 질문
[질문 내용]스프링이 생성해주는 싱글톤 빈은 static이니 jvm static 영역에 생성되는 걸로 이해하고 있습니다. 1. 그렇다면 프로토타입 빈은 static 영역에 저장되나요 heap 영역에 저장되나요? 2. 스프링은 프로토타입 빈의 생성, 초기화까지만 관여하고 더이상 관여하지 않는다고 했는데 그렇다면 프로토타입 인스턴스가 메모리에서 해제되는 시점은 언제인가요? 사용자가 destory하지 않고 프로토타입을 계속 생성할 경우 문제되는 일이 없을까요? 3. ApplicationContext에 스프링 빈이 등록이 되고, 의존성 주입 시점에서 ApplicationContext를 조회해서 주입하는 걸로 이해했습니다. (주입받을 빈이 프로토타입 빈이라면 해당 빈은 이때 생성될테고요.) 그렇다면 ApplicationContext는 jvm static 영역에 전역적으로 공유되는 값일까요?감사합니다!
-
해결됨설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
8장 질문
8장에서 PS 영역을 위해 바이티스에 들어간 후 main.c 파일을 복붙하였습니다. 첫번째, main.c 파일 설명을 듣다보니 궁금한 점이 생겼습니다. 만약 제가 원하는 동작을 하게 하기 위해 제가 main.c를 짜야하는 상황에서 하드웨어 헤더들?을 전부 알아야 할 거 같은데 맛비님은 어떻게 공부하신건지 궁금합니다 영상을 예로들어 myip.h는 우리가 만든 AXI니 헤더가 있다고 생각할 수 있지만 xparameter.h 라던가 xil_io.h 같은 헤더는 존재를 모르면 쓸 수 없는 헤더처럼 보입니다 이와 같이 PS영역에서 제가 원하는 동작을 하기 위해 main.c에 추가해야하는 하드웨어적인? 헤더는 어떻게 알 수 있는지 궁금합니다. 두번째, 번외의 질문입니다.현재 저는 vivado를 VMware를 통해 우분투 18.04에서 작동시켜보고 있습니다 Generate Bitstream을 누르면 local host와 remote host 두 종류가 뜹니다 VMware위의 우분투에서 비바도를 실행중이므로 1번 경우 local host == VMware 위에 있는 우분투 remote host == 본래 컴퓨터인 윈도우 인지 2번 경우 local host == 본래 컴퓨터인 윈도우 remote host == VMware 위에 있는 우분투 위 경우 중에 어떤 것인지 궁금합니다. 특히 local host를 누르면 vivado가 강제종료되지만 remote host의 경우 강제종료되지 않는 현상이 발생하고 있습니다. 세번째, 아직 11~13장을 보지 못했지만 6~8장까지는 AXI를 이용하면서 AXI안에 자체적으로 있는? register(slave register)를 이용했던 것 같은데 11~13장은 slave register와의 소통이 아니라 BRAM 같은 메모리와 데이터 이동을 다루는 강의가 맞나요? 또한 11~13장처럼 BRAM 같은 메모리와 데이터 이동을 다룰 때에는 AXI안에 존재하는 slave register들은 필요가 없는 것인가요?
-
해결됨Slack 클론 코딩[백엔드 with NestJS + TypeORM]
배포 후 쿠키 전송 문제
기존 로컬 환경에서는 잘 작동하던 passport 로그인이 쿠키가 전송이 되지 않는 문제가 생겼습니다. header에 set cookie가 포함이 되어 있지 않은 상태로 response가 옵니다. 현재 Nginx(Reverse Proxy) + Front Server / Nginx + Backend Server 총 EC2 2개를 사용하고 있습니다. 로컬 환경에서 Front, Backend Server를 키고 했을 때는 작동이 잘 되고 있었는데 로그인 시 쿠키가 전송이 안되고 있어서 질문드립니다. 혹시나 cookie가 전송이 안되는 게 이상해서 제가 response에 cookie를 넣어서 같이 redirect 를 해봤는데 그건 잘 작동되는 걸 확인했습니다. passport login을 제가 잘못한건지 어떤 설정이 잘못됐는지 잘 모르겠습니다.