목록분류 전체보기 (123)
도슐랭스타
public class MemberForm { private String email = "test@example.com"; // getter, setter}@GetMapping("/register")public String register(Model model) { model.addAttribute("memberForm", new MemberForm()); return "register-form";}이런 상황일 때 th:field일 경우 실제로 브라우저에서 보여지는 HTML (렌더링 결과) 자동으로 name도 붙고, value도 들어가고, 나중에 form 전송되면 email 값도 넘어감. th:value일 경우 실제로 브라우저에서 보여지는 HTML (렌더링 결과) ..

지금까지 잘 경로 찾아서 갔으면서 왜 못 찾겠다는 거야?!static과 다른 폴더에 있는 상태긴했다. 💡 왜 오류가 났던 걸까?그냥 주소창에 /members/register 치면 static 폴더에 있지 않은 파일들은 볼 수 없다!templates 폴더는 Spring이 직접 렌더링해서 보여줄 때만 사용됨.즉, templates 폴더에 있는 파일은 그냥 주소창에서 못 연다! 지금 static/members/register.html 인 상태. ✅ 해결법: @Controller로 연결한다@Controller는 "얘가 웹 요청을 처리할 수 있는 클래스야!" 라고 Spring한테 알려주는 역할임.templates/members/register.html 파일을 찾아서 브라우저에 보여줌.

위의 상태바가 겹침android:fitsSystemWindows="true"추가해주면 됨.

State컴포넌트의 상태state 값이 변경될 경우 컴포넌트도 재렌더링이 됨.state는 컴포넌트를 개발하는 개발자가 직접 정의함.주의사항렌더링이나 데이터 흐름에 사용되는 값만 state에 포함시켜야함.→ 데이터 흐름에 상관없는 경우 불필요한 렌더링 발생으로 성능이 저하됨.특징state는 직접적인 변경이 불가능함.변경할 때는 반드시 setState() 함수나 개별 set함수를 이용해야 함.import React, { useState } from 'react';function Counter() { // useState를 사용하여 count라는 상태와 이를 갱신할 수 있는 setCount 함수를 선언 const [count, setCount] = useState(0); return ( ..
항목제2정규형(2NF)BCNF시작 조건1NF 만족해야 함3NF 만족해야 함핵심 조건부분 함수 종속 제거모든 결정자가 후보 키여야 함대상복합 기본키일 때 주로 발생후보 키가 여러 개일 때 주로 발생포함 관계BCNF ⊃ 2NFBCNF가 더 강력함 상황제2정규형BCNF🧩 기본키가 두 조각인데한 조각만으로 어떤 정보가 결정됨 → ❌(해당 없음)🧑 누가 결정자인지 봤더니기본키 일부였어 → 문제!후보 키가 아니었어 → 문제! 예시학생ID강의명교수명1001DB김교수1001OS이교수1002DB김교수기본키: {학생ID, 강의명}강의명 → 교수명 존재제2정규형 위반인가?기본키는 {학생ID, 강의명} (복합)그런데 강의명 → 교수명은 기본키 일부에만 종속됨→ 제2정규형 위반!BCNF 위반인가?강의명 → 교수명은 강의명이..
보호되어 있는 글입니다.

여기서 add1의 자료형은 let add1: (Int, Int) -> Int정의를 뒤에 할 수 있음.//1result = math(x: 10, y: 20, cal: {(a: Int, b: Int) -> Int in return a + b}) //클로저 소스를 매개변수에 직접 작성//2result = math(x: 10, y: 20) {(a: Int, b: Int) -> Int in return a + b} //후행 클로저(trailing closure)둘의 작동은 똑같지만 후행 클로저가 보기 편하기 때문에 2번째를 선호함.1번째는 함수 실행과 정의를 동시에 하는 것처럼 보여서 이상함.(작동은 잘 되긴 함.)

오토레이아웃의 개념정의: 오토레이아웃은 iOS의 UI 구성 요소(View) 간의 관계를 정의하여, 화면 크기나 방향이 변경될 때 자동으로 레이아웃을 조정하는 기능입니다. 이를 통해 다양한 화면 크기와 해상도에 적합한 UI를 만들 수 있습니다 기본 원리: 오토레이아웃은 제약(Constraints)을 사용하여 UI 요소 간의 상대적인 위치와 크기를 정의합니다. 예를 들어, 한 버튼이 다른 버튼의 오른쪽에 위치하도록 설정할 수 있습니다 다른 파일에서 내용 가져오고 싶으면 뷰와 controller 가져오면 됨.연결함.

Remove Reference로 지우면 파일은 남아있고 숨기기만 됨.그러니 Move to Trash로 해야 완전히 지워짐!!(만약 Remove로 했다면 finder에서 삭제하면 됨.)새로운 Tab bar를 만들었으면 Controller를 설정해줘야함.이 친구를 identity inspector라고 함.(시험에 나옴)중요한 함수 중 하나임. 시험에 잘 나옴.버튼을 누르면 동영상이 재생되도록 하는 코드.present() 메서드는 iOS의 UIKit 프레임워크에서 제공하는 메서드로, 현재의 뷰 컨트롤러에서 다른 뷰 컨트롤러를 모달 방식으로 표시하는 데 사용됨.(시험에 자주 나옴.)if로 옵셔널을 풀면 if문 안에서만 언래핑한 값을 쓸 수 있음.하지만 guard let은 해당 블록을 벗어나도 언래핑한 값을 쓸 ..

iOS에서 오토레이아웃(Autolayout)은 사용자 인터페이스(UI)의 레이아웃을 자동으로 조정해주는 시스템. 이 시스템을 사용하면 화면 크기, 방향, 해상도 등 다양한 조건에 맞춰 뷰(View)의 위치와 크기를 자동으로 변경할 수 있음.outlet 잡기이런식으로 코드를 짜면 값이 nil일 때도 옵셔널을 풀어서 큰일이남.if문을 사용하여 안전하게 수정함.정렬은 여기서 하거나 [Ctrl] + [i] 하면 됨.이렇게 좀 꾸밈.//// ViewController.swift// BMI_kdh//// Created by 1 on 2024/11/13.//import UIKitclass ViewController: UIViewController { // 텍스트 필드 (체중 입력) @IBOut..