[TIL] HTML: Form, Table / Java: Reference type
Form 태그
- action 속성
- method 속성
<form action="서버 url" method="get || post"> </form>
action 속성
사용자와 상호작용으로 입력받은 값들을 전송할 서버의 url 주소
method 속성
입력받은 값을 서버에 전송할 때 송신 방식
get 혹은 post(보안이 요구될 때)
Input 태그
- type 속성
- name 속성
- value 속성
입력받는 요소를 생성할 때 사용 (ex) 로그인 시, 아이디와 비밀번호
- disabled : 인풋 박스를 비활성화
- autofocus : 해당 인풋 박스를 처음부터 활성화
<input type="종류" name="이름" value="초깃값" disabled autofocus>
type 속성
속성값 | 설명 |
---|---|
text | 한 줄 텍스트 입력. placeholder=”박스 안에 설명문” |
password | 비밀번호 입력 |
number | 숫자만 입력 |
checkbox | |
radio | |
button | |
submit | form의 action을 호출 |
- radio
- name=”같은group이름” : 같은 그룹으로 묶어 그룹 내에서 하나의 값만 선택 가능
<input type="radio" name="gender_group" value="female" checked>
<label>여성</label>
<input type="radio" name="gender_group" value="male">
<label>남성</label>
- checkbox VS radio 모양
- button VS submit 모양
<input type="button">
<input type="submit" name="submit" id="">
label 태그
form 태그 안에서 사용하는 상호작용 요소에 이름을 붙일 때 사용
<label for="id">ID</label>
<input type="text" name="userId" placeholder="id를 입력해주세요.">
fieldset, legend 태그
fieldset 태그로 그룹을 지으면 그룹별로 박스 모양의 테두리가 생김
<form action="#">
<fieldset>
<legend>그룹 이름</legend>
<label for="id">id</label>
<input type="text" name="id" id="">
</fieldset>
</form>
textarea 태그
여러 줄의 입력을 받을 때 사용
<textarea name="contents" id="" cols="30" rows="10"></textarea>
select, option, optgroup 태그
<select name="city" id="city" size="3" multiple>
<optgroup label="서울시">
<option value="강북구">강북구</option>
<option value="강남구">강남구</option>
<option value="강서구">강서구</option>
<option value="서초구">서초구</option>
</optgroup>
<optgroup label="경기도 성남시">
<option value="분당구">분당구</option>
<option value="중원구">중원구</option>
</optgroup>
</select>
select : 콤보박스
optgroup(label) - option
multiple : 여러 개 선택 가능
<select name="city" id="city" size="3" multiple>
<optgroup label="서울시">
<option value="강북구">강북구</option>
<option value="강남구">강남구</option>
<option value="강서구">강서구</option>
<option value="서초구">서초구</option>
</optgroup>
<optgroup label="경기도 성남시">
<option value="분당구">분당구</option>
<option value="중원구">중원구</option>
</optgroup>
</select>
<select name="city" id="" multiple>
<option value="강북구" selected>강북구</option>
button 태그
<button type="submit">
등록하기 버튼<img src="url">
</button>
button 태그 VS input type=’button’
button 태그는 시작, 종료 태그가 있어서 내부에 이미지와 같은 컨텐츠 작성 가능
Table
tr, th, td 태그
tr 태그 : 한 행, row
th : 표 제목 행, 굵은 글씨로 표현됨, table head
td : 열의 요소 1개, data
caption : 표 제목
border 속성
표의 테두리 지정
colspan, rowspan 속성
- rowspan : 행을 합친다.
- colspan : 열을 합친다.
<table border="1">
<caption>학습목표</caption>
<tr>
<th>1</th>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
</tr>
<tr>
<td>6</td>
<td>7</td>
<td>8</td>
<td>9</td>
<td>10</td>
</tr>
</table>
회원가입 폼 만들기
<form action="#" method="get">
<table border="1">
<tr>
<td colspan="2">회원가입</td>
</tr>
<tr>
<td>아이디</td>
<td><input type="text" name="userid" id=""></td>
</tr>
<tr>
<td>비밀번호</td>
<td><input type="password" name="userpw"></td>
</tr>
<tr>
<td>성별</td>
<td>
<select name="gender" id="">
<option value="female">여성</option>
<option value="male">남성</option>
</select>
<input type="radio" name="gender_group" value="female" checked>
<label>여성</label>
<input type="radio" name="gender_group" value="male">
<label>남성</label>
</td>
</tr>
<tr>
<td>전화번호</td>
<td>
<input type="number" name="" id="" style="width: 40px;">
-
<input type="number" name="" id="" style="width: 40px;">
-
<input type="number" name="" id="" style="width: 40px;">
</td>
</tr>
<tr>
<td colspan="2">
<input type="submit" value="확인"><input type="reset" name="취소" id="">
</td>
</tr>
</table>
</form>
Java
이것이 자바다 5장 참조 타입
~193쪽까지
데이터 타입
- 기본 타입
- 변수는 값을 저장함
- 스택 영역에 저장됨
- 참조 타입
- 객체가 생성된 메모리의 주소값(레퍼런스 값)을 저장함
- 힙 영역에 저장됨
메모리 사용 영역
- 메소드 영역
- 힙 영역
- 스택 영역
JVM은 OS로부터 할당받은 메모리 영역을 사용하여 값을 저장, 프로그램 수행
메소드 영역
바이트코드 파일(.class)을 읽은 내용이 저장됨
모든 스레드가 공유하는 영역
객체와 변수를 생성하는 용도로 사용
클래스별로 상수, 정적 필드(static), 메소드 코드, 생성자 코드 등이 저장됨
- 정적 필드 (클래스의 static 멤버 변수)
- 상수
- 생성자
- 메소드
힙 영역
수명이 긴 변수들이 저장됨
객체가 생성되는 영역
객체와 배열이 저장된다.
메소드 영역과 스택 영역의 상수와 변수에서 힙 영역의 객체(레퍼런스값)을 참조할 수 있다.
스택 영역
수명이 짧은 변수들이 저장됨
기본 타입의 변수, 레퍼런스 변수의 실제 값을 저장
메소드를 호출할 때마다 생성되는 프레임이 저장됨
메소드 호출이 끝나면 프레임이 자동 제거됨 (GC, Garbage Collector)
프레임 내부에는 로컬 변수 스택이 있다.
각 스레드마다 하나씩 존재하며 스레드가 시작될 때 할당된다.
클래스를 new로 생성하여 instance 생성한다.
함수/메서드
변수/필드
멤버 = 필드+메서드
참조 타입 변수의 ≠, == 연산
참조 타입 변수는 객체의 주소값을 저장한다. 따라서 ==, ≠연산은 주소값을 비교한다.
String 타입 변수는 .equals()을 통해 문자열을 비교한다.
null, NullPointerException
참조 변수는 null을 기본값으로 가진다.
null로 초기화된 참조 변수는 스택 영역에 저장된다.
Refs
데이터 타입 분류
https://kingpodo.tistory.com/54
메모리 사용 영역