목록분류 전체보기 (212)
개발자 끄적끄적
- 플랫폼의 독립성 : 자바로 작성된 프로그램은 하부의 플랫폼과는 상관없이 자바의 가상 머신 위에서만 운용한다 - 객체지향 언어 : C++보다 더욱 막강하고 완벽한 객체 지향성을 보장한다 - 멀티 쓰레드 지원 - 자동 메모리 관리 : 자바 가상 머신이 작동으로 사용되지 않는 메모리를 찾아 해제해 준다 - 동시성능 확장 제공 : 프로그램의 성능이 확장되었거나 개선되었을 때 네트워크를 통해 자동으로 다운로드 되어 설치될 수 있다 - 네트워크와 분산처리 지원 : 비교적 짧은 시간에 분산처리 지원 프로그램을 개발할 수 있다 - 자바는 컴파일을 실행하면 기계어가 아닌 '바이트 코드'라는 중간 단계의 컴파일 결과를 생성한다 이 코드는 하드웨어나 O/S와는 무관하게 작동되며 이는 자바가 설치되어 있으면 재 컴파일 없..
- 실행시 외부에서 전달되는 데이터 타입을 의미 - 기본형, 객체형을 가질 수 있다 - 사용자 정의 객체인 경우, 패키지명과 함게 클래스명을 기술하면 된다 [기본형] select pwd from member where mid=#{mid} String pwd = sqlSession.selectOne("board.getPwd", "hong"); [객체형] select subject from member where worker=#{worker} and pwd = #{pwd} BoardVo vo = ... String pwd = sqlSession.selectOne("board.getPwd", vo); - 데이터를 Database에 입력할 때 사용되는 요소 - parameterType은 대부분 자바 VO객체형 ..
- 모든 MyBatis 애플리케이션은 SqlSessionFactory 인스턴스를 사용 - 개발자가 지정한 SQL, 저장 프로시저 및 고급 매핑을 지원한느 '퍼시스턴스 프레임 워크'이다 - 데이터베이스 레고드에 원시타입와 Map 인터페이스, POJO를 설정하고 매핑하기 위해 XML과 애너테이션을 사용할 수 있다 - mybatis는 자동으로 리소스를 찾는 방법을 제공하지 않는다 ☆중요☆ blog.mybatis.org 또는 mvnrepository.com을 방문하여 라이브러리 다운로드 후 압축해제 MyBatis>Products>MyBatis 3 (Description : SQL Mapping Framework for Java)다운 다운 압축 풀기>mybats-3.5.10.jar>WEB-INF/lib폴더에 복사..
SQL(Structured Query Language) : 데이터베이스의 데이터를 조회, 입력, 수정, 삭제, 저장하는데 사용하는 질의언어 mysql쿼리 작성 규칙 - 대소문자를 구분하지 않는다(단, 비교문의 문자열은 대소문자를 구별하여 비교) - 문자열은 작은 따옴표를 사용 - 날짜는 문자열로 비교 가능 - 숫자 비교는 문자열로 비교해도 된다 - '같다'라는 의미는 '='기호를 사용 - 논리 연산자는 not, and, or를 사용 - 쿼리 문장의 끝은 ';'로 끝낸다 SQL명령의 분류 1. DDL(Data Definition Language) : CREATE(생성), ALTER,(구조 변경) DROP(삭제) 2. DCL(Data Control Language) : GRANT(권한 부여), REVOKE(..
Aspect Oriented Programming(관점지향 프로그래밍) - 관점 : 프로젝트 전체에서 주요 관심사항(로그출력, 로그인여부) - 주요 관심사항이 프로젝트 여러곳에 존재한다 => 횡단적 관심사 - 관심사의 분리 : 관리자에게만 CRUD(select, update, delete, insert)를 부여 즉, '관리자인가 체크' 를 '분리' 하는 것 - AOP에서 사용하는 용어 - Aspect : 공통 핵심사항(관점, 횡단적 관심사) - Weaving : 분리된 관심사를 지정된 위치에서 실행주는 행위 - Advice(시간적 개념) : Before Advice, After Returning Advice, Around Advice 즉, Weaving하는 시점 - JoinPoint(공간적 개념) : 어..
Project 생성>other>Spring Starter Project>Packaging : WAR, Java Version 확인, Group과 Package 명은 com.my>Next>Spring Boot DevTools, Spring Web 선택 step1. DI를 전혀 구현하지 않은 형태 문제점 1) 접근방법이 상이 2) 항상 new 사용 step2. DI를 POJO(Play Only Java Object) 로 구현한 형태 1) interface를 구현 2) 외부에서 객체를 생성하여 매개변수로 전달 ( 외부에서 객체를 생성하는 클래스(=외부 조립기 : assembler) ) step3. DI를 Spring으로 구현한 형태 - 싱글톤 형식으로 관리(하나의 객체만을 생성하여 관리)
- 경량화된 프레임워크(javaEE) - 스프링의 3대 요소 - DI(Dependency Injection) : 의존성 주입 - 다른 프레임워크와 차별화되어 제공하는 의존관계 주입기능으로, 객체를 직접 생성하는게 아니라 외부에서 생성한 후 주입시켜주는 방식이다 - 모듈 간의 결합도가 낮아지고 유연성이 높아진다 - AOP(Aspect Oriented Programming) : 관점지향 프로그래밍 - 어떤 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나누어서 보고 그 관점을 기준으로 각각 모듈화 *모듈화 : 어떤 공통된 로직이나 기능을 하나의 단위로 묶는 것 - MVC(Model, View, Controller의 분리) - Spring에서 제공하는 웹 모듈로 Model, View, Controller ..
[미션] index.jsp 페이지의 layout을 grid 속성을 사용하여 배치하시오 href='./css/index4.css?version= box-sizing은 padding 속성때문에 설정해야한다 position:absolute, bottom:5px, right:3px->web browser를 기준(0,0)으로 display:block 설정O->CSS 앵커태그에 가지 않고 근처에 가도 손가락 모양으로 바뀐다(앵커태그를 감싸는 효과) display:block 설정X->CSS 앵커태그에 가야 바뀐다 (책에 없는 내용) [미션2] html, css와 관련된 컨텐츠를 통합 페이지에 표시 할 때 불필요한 css가 적용되는 파일을 찾아 원인 분석 및 조치 ------------------------------..
- 속성 - flex : Block 특성의 Flex Container를 정의 - inline-flex : Inline 특성의 Flex Container를 정의 : Flex Items의 주 축(main-axis)을 설정 - row : Items를 수평축(왼쪽에서 오른쪽으로)으로 표시 - row-reverse : Items를 row의 반대 축으로 표시 - column : Items를 수직축(위에서 아래로)으로 표시 - column-reverse : Items를 column의 반대 축으로 표시 : Flex Items의 여러 줄 묶음(줄 바꿈) 설정 - nowrap : 모든 요소들을 한 줄에 정렬 - wrap : 요소들을 여러 줄에 걸쳐 정렬 - wrap-reverse : 요소들을 여러 줄에 걸쳐 반대로 정렬 ..
CSS 선택자 1) 태그{ }=>p{ } 2) 클래스명{ }=>.here{ } 3) 아이디명{ }=>#here{ } 4) 상위선택자>자손선택자{ }==>div>span{ } ex)(기준) hong -1(깊이가 1단계) gil -2(깊이가 1단계) -3(깊이가 1단계) dong -4(깊이가 2단계) - div태그 안에 자식span은 선택이 된다(1, 2)->div>span{ }/3도 선택가능 - div태그에서 4은 후손이기 때문에 적용이 되지 않는다=>p>span{ }은 가능 5) 상위선택자 후손선택자{ }==>div span{ }=>깊이가 1단계 이상 6) 선택자+선택자{ }==>div+span{ } : div태그 바로 뒤에 있는 span=>1 7) 선택자~선택자{ }==>div~span{ } : div..
동적삽입 - 오늘 할 일 1) index.jsp 파일 추가 생성 2) html, css_exam에 들어 있는 파일들을 부메뉴 형태로 제작 3) 반응형 웹 구현 - 서버 랭귀지(page language)는 java로 이루어져 있다 - contentType의 유형(=mine유형)은 html로 만들어진 text이다 - 문자들은 UTF-8로 구성되어있다 - pageEncoding은 UTF-8으로 구성되어있다 파라메터(parameter) - 어떤 도메인(jotc.kr)이 있을 때, 파라메터는 '?'로 시작한다 ex) ?p1=hong&p2=111 - 'p1'=파라메터변수 - 'hong, 1111'=파라메터 변수값(파라메터 값) - '?'=파라메터의 시작을 의미 - '&'=파라메터의 연결을 의미 변수=값을 담을 수 ..
.main>div{ [border:4px solid #00f; width:400px; height:200px; margin:20px;] } ----- C! C2 C3 C4 C5 - main이라는 class 안에 있는 자식 div에 [...]가 적용된다->class=c1,c2,c3,c4,c5가 작용 - .abs>div : class가 abs안에 있는 자식 div가 적용된다(단, 손자는 아님 다시 지정해줘야한다) ------------------------------------------------------------------------ box-shadow:20px 40px 0 #77f; - x축 그림자의 길이->20px - y축 그림자의 길이->40px - 퍼진 정도->0 - 그림자의 색깔->#77f ..
background-image 고양이 ------------------- - background-image:url(../images/pink.jpg);->이미지가 반복된다(이게 기본속성) - background-repeat:no-repeat;->이미지가 반복되지 않고 1개반 이미지 삽입(position은 (0,0)에 위치한다) - background-position:right(bottom/left/top/center);->이미지 위치시키기 - backgorund-position: right(or left);->중앙의 right, left로 위치한다 - background-postion:50px 100px;->x축으로 50px만큼, y축으로 100px만큼 이동해서 위치시킨다 - background-size..
SELECTOR MID hong gil dong 010-1111-1111 -------------------------------------------------------------- div.c1과 .c1의 차이점 div.c1==div들 중에서 class가 c1인 요소 .c1==class가 c1인요소 ex) 이라는 태그가 있고 -'x'라 가정 이라는 태그가 있다고 가정 할 때 -'y'라 가정 css정의는 div.c1{color : red;} == div등 중 class가 c1인 요소들이 적용 대상자 따라서 x는 적용하지 않으며, y는 적용 c1.{font-weigt : border;} == class가 c1인 요소들이 적용 대상자 따라서 x, y함께 적용 id속성과 class속성의 차이점 - id는이름..
[공지] 2/15(화) - 요구사항 확인(평가) : 14:30~15:20 - 미대면 상담(설문지) - 개인톡으로 답변 * 모두의 HTML...(PDF)다운 용량은 100MG(흑백으로) - 타인에게 배포 금지(불법) [복습] form태그 - 역할 : 서버에게 값을 전달하기 위해 쓰인다 - 특징 : 하나의 페이지에서 여러 개 사용 가능하지만 중첩 사용은 불가(form 태그 안에 form 추가가 불가) - method a. post : 전달 값이 보이지 않으며 길이 제한이 없다 b. get : 전달 값이 보이며 길이 제한이 있다 - n개 중에 n개를 선택할 때 name값이 동일하면 그룹이 생성 - 서버에 값이 전달 될 때는 체크된 요소만 전달 - checked 속성을 사용하여 기본적으로 체크되도록 한다 ex)..
*파일 가져오는 방법 - import->workspace 경로 찾아가기->나 같은 경우 'aaa'->반드시 프로젝트 목록에 내가 원하는 프로젝트가 보여야한다 (if 목록이 안나온다면, 폴더 잘못 선택 or 프로젝트가 깨진경우(치명적인 경우)) - 프로젝트를 USB, 외장HDD(SSD)에 workspace를 지정(USB는 비추천) *웨장하드에 워크스페이스 지정방법 - Switch Workspace->other->새로운 폴더를 만든다('my workspace'폴더명은 가능하면 영어로)->재부팅->my workspace폴더에 프로젝트 aaa복사 import project->General->existing projects into workspace->select root directory->my workspac..
build path->project facets 1.8버전이면 3.0으로 선택 *Null Point Except-Java에서 가장 많이 차지하는 오류(70%~80%) 정의 : NullPointerException is a runtime exception in Java that occurs when a variable is accessed which is not pointing to any object and refers to nothing or null. *Runtime Exception ->실행 중 발생, 시스템 환경적이나 인풋 값이 잘못된 경우, 프로그래머가 잡아내가 위한 조건등에 부합할 때 발생 html 기본골격을 지키지 않고 "이해선"이라고 쓰면 브라우저에 표시는 되지면 글자가 깨짐(비정상->웹 ..
tomcat은 window에서 설치불가 내 컴퓨터의 ip주소 확인 방법 >cmd>ipconfig실행 프로그래밍 파일 삭제 ->설정 앱에서 삭제->클릭->삭제->제거 학생 관리 프로그램 1)요구조건 분석(마인드 맵) 2) 4대 기능 1.Create(입력) 2.Read(조회) 3.Update(수정) 4.Delete(삭제) newproject-dynamic web project select a wizard->web->dynamic web project dynamic web module version(4.0) X표시는 무시 New-html-파일이름my_info 학생관리-usecase 사람,기계,프로세스 기능function:입력,수정,삭제,조회 엑터actor(사용자,누가 사용하는가):학생,관리자,프린터,스캐너 레..
1. OSI 7계층(Open System Inerconnction) - 개방형 시스템의 네트워크 효율적인 이용을 위하여, 모든 데이터 통신 기준으로 계층을 분할하고, 각 계층간의 필요한 프로토콜을 규정 - ISO(international Organization for Standardization)표준 지정 2. OSI 7계층 목표 - 정보가 전달되는 Framwork를 제공, 네트워크 형태에 차이가 발생해도 데이터 통신을 지원 *Framework : 작업(Task)를 처리하기 위한 기본적인 틀을 의미하고 상세한 부분까지는 정의하지 않는다 1. 상위계층 : 애플리케이션~트랜잭션 계층 - 애플레이션 계층 : 사용자의 프로그램이 존재하는 영역으로, 파일 업로드 및 다운로드, 인터넷 표준은 FTP 네트워크 모니터..
- 프로그램(Program)이 실행되어서 프로그램이 메모리에 올라가는 것 - 리눅스가 부팅될 때 실행된다면 그것은 init 프로세스가 기동시키는 것 - 데몬(Daemon) 프로세스란, 리눅스 서버가 부팅될 때 백그라운드에서 실행되고 있으며 클라이언트의 요구에 서비시를 수행하는 프로그램 1. standalone 방식 - 백그라운드에서 항상 실행되고 클라이언트에게 서비스를 요청하면 즉시 처리를 수행 2. inetd 방식 - 메모리에 상주되지 않고 sleep 상태로 있다가 클라이언트 요청 시에 Wake up되어 서비스를 수행 - 리눅스 상에서 동작하는 모든 프로세스 - /etc/inittab 파일을 읽고 해당 파일에 설정된 프로세스를 실행 - 부팅 시 init 프로세스 생성 후 init 프로세스가 필요한 다른..