엄마 밥해주기
아.. 우리집 밥공기는 너무너무 커, 배불렁
2/3 공기가 일반 한공기 가득이란거......
'취미 ㅋㅋ' 카테고리의 다른 글
생채비빔밥 (0) | 2015.09.15 |
---|---|
두가지생채 돼지고기고추장찌개 임연수구이 가지볶음 (0) | 2015.09.15 |
사과참치샌드위치 (0) | 2015.09.15 |
레몬라임 제스트 쿠키 (0) | 2015.09.10 |
황태국 야채전(애호박) (0) | 2015.09.10 |
엄마 밥해주기
아.. 우리집 밥공기는 너무너무 커, 배불렁
2/3 공기가 일반 한공기 가득이란거......
생채비빔밥 (0) | 2015.09.15 |
---|---|
두가지생채 돼지고기고추장찌개 임연수구이 가지볶음 (0) | 2015.09.15 |
사과참치샌드위치 (0) | 2015.09.15 |
레몬라임 제스트 쿠키 (0) | 2015.09.10 |
황태국 야채전(애호박) (0) | 2015.09.10 |
든든한 아침
사과참치샌드위치 : 식빵, 홀그레인머스타드(빵에 바를거), 참치+사과+양파+마요네즈2큰술+호추(속재료), 잎채소, 치즈
참치보다 사과 더 많이 많잉
두가지생채 돼지고기고추장찌개 임연수구이 가지볶음 (0) | 2015.09.15 |
---|---|
야채전 부채살볶음 (0) | 2015.09.15 |
레몬라임 제스트 쿠키 (0) | 2015.09.10 |
황태국 야채전(애호박) (0) | 2015.09.10 |
카레갈치구이 (0) | 2015.09.10 |
쌀가루 통밀 박력분을 적당히 섞어서..
레몬청이랑 라임청 만들고 남은 부분으로 제스트만들어서 쿠키를 구웠는데..
재료 : 쌀가루, 통밀가루, 발력분, 베이킹파우더, 설탕, 오일, 레몬/라임 제스트, 계란
식감도 좋고 바닐라빈향이 적당히 나서 맛있긴 하지만,
제스트를 좀 과하게 넣었음. 그래서 많이는 못먹겠음 ㅜㅜ
말린황태 뼈뽑아주고 살살 볶아주고
뽀얀국물 나오게 콩나물이랑 푸욱~ 황태는 싫은데 국물은 맛있당당
애호박 하나하나 부치기 귀찮을때.. 걍 다다닥 썰어서 짜투리야채들 넣어주고(양파는 필수),
부침가루 솔솔 섞어서 부치면 금방 끝!
황태국 : 황태, 콩나물, 파, 고추, 국간장, 소금, 마늘, 국물멸치, 다시마
부침개 : 애호박, 양파, 자투리야채, 고추, 부침가루, 간장+후추
냉장고 정리
갈치한팩사면
갈치조림도 먹고,, 갈치구이도 먹고..
카레갈치구이 : 갈치, 소금(밑간), 부침가루+카레가루, 종이호일*
레몬라임 제스트 쿠키 (0) | 2015.09.10 |
---|---|
황태국 야채전(애호박) (0) | 2015.09.10 |
밑반찬 (0) | 2015.09.10 |
닭강정 (0) | 2015.09.10 |
초간단 대왕초코칩쿠키 (0) | 2015.08.23 |
감자볶음 곤약조림 콩자반 콩나물무침
마시따... 나물도 무치고싶당
감자채볶음 : 양파, 감자, 마늘, 소금, 후추, 꺠소금, 통깨, 파
곤약조림 : 곤약, 간장, 마늘, 검은통깨
콩자반 : 검은콩이나 약콩, 간장, 매실청, 올리고당, 설탕, 올리브유 1방울, 통깨
콩나물 무침 : 콩나물, 파, 마늘, 고춧가루, 소금, 간장, 참기름, 깨소금, 통깨
황태국 야채전(애호박) (0) | 2015.09.10 |
---|---|
카레갈치구이 (0) | 2015.09.10 |
닭강정 (0) | 2015.09.10 |
초간단 대왕초코칩쿠키 (0) | 2015.08.23 |
순두부찌개 (0) | 2015.08.23 |
냉장고에 닭다리살이 없어서 닭가슴살로 만들긴 했지만..
역시 정말 맛이따
재료 : 닭고기, 고기재우기(우유, 후추), 간장, 케챱, 고추장, 고춧가루, 매실청, 설탕, 올리고당, 튀김가루, 견과루/아몬드가루
냠냠
카레갈치구이 (0) | 2015.09.10 |
---|---|
밑반찬 (0) | 2015.09.10 |
초간단 대왕초코칩쿠키 (0) | 2015.08.23 |
순두부찌개 (0) | 2015.08.23 |
버섯덮밥이랑 캬라멜 맛탕 (0) | 2015.08.16 |
#
#
1. view
test_view.html 파일
2. model, view에서 넘어오는 데이터를 저장하는 DTO 클래스 작성
test_model_DTO.java
3. DB 생성 및 테이블 생성
4. model, DTO에서 데이터를 전달받아 실제 데이터베이스와의 작업을 처리하는 DAO 클래스 작성
test_model_DAO.java
5. controller, 사용자의 입력정보를 DTO에 담고, 해당 데이터를 DAO클래스의 관련 메서드에 전송하고
그 결과에 따라 이동할 페이지를 결정하여 제어하는 서블릿 클래스를 작성
test_controller.java
6. 처리에 대한 결과를 출력하는 view 페이지 작성
test_result_view.html
HTTP와 웹 아키텍처 (0) | 2015.11.02 |
---|---|
서블릿 (0) | 2015.08.30 |
이클립스 스프링 개발환경 (0) | 2015.08.27 |
[JQuery] plug-in top 100 (0) | 2015.05.27 |
[웹서비스] 기초 4 - QnA, Web Client (0) | 2015.05.01 |
#
#
1. 톰캣\conf\server.xml 웹서버 구동과 관련한 설정
2. 톰캣\conf\web.xml 모든 프로젝트에 공통적인 환경
톰캣\common\lib 모든 프로제트에 공통된 라이브러리
3. 프로젝트\WEB-INF\web.xml 프로젝트별로 적용되는 환경설정
4. 프로젝트\WEB-INF\lib 프로젝트별로 적용되는 라이브러리
5. 프로젝트\WEB-INF\classes 프로젝트별로로 적용되는 서블릿 파일을 인식하고 설정에 따라 init()/destroy()메서드를 실행
# 서블릿은 매핑과정이 필요. 2가지로 매핑이 가능
1. 어노테이션
2. web.xml
- web.xml
<servlet>
<servlet-name>ServletHello</servlet-name> // 서블릿 클래스를 임의의 이름으로 정의하여, 이름을 가지고 사용
<servlet-class>kr.co.test.ServletHello</servlet-class> // 해당 클래스
</servlet>
<servlet-mapping>
<servlet-name>ServletHello</servlet-name>
<url-pattern>/ServletHello</url-pattern>
</servlet-mapping>
# 서블릿 라이프사이클
0. 서블릿은 클래스이고 HttpServet을 상속받아서 구현
1. init() 메서드에 의해여 초기화되면서 실행
web.xml이 실행이 되면서 실행되거나 최초 접속하는 클라이언트에 의해 실행
2. service(HttpServletRequest request, HttpServletResponse response) ...
클라이언트 요청으로 실행되며 main()에 해당
- doGet()
- doPost()
3. destroy() 메서드는 웹서버가 종료될 때 실행되며, 메모리 해제를 수행
// 12,3은 서블릿(GenericServet)을 오버라이해서 정의
4. PostConstruct : init 선처리
5. PreDestroy : destroy 선처리
// 4,5는 임의의 메소드명을 내가 지정해주고, 어노테이션으로 명시해줘야함
@PostConstruct
public void initPostConstruct() {}
@PreDestroy
public void destroyPreDestroy() {}
1-1.
- init(ServletConfig)
- init()
# 초기화 매개변수
: 특정 서블릿이 생성될 때 초기에 필요한 데이터들을 위해(특정 경로 및 아이디 정보) 사용
서블릿도 클래스이므로 컴파일해 사용해야하는데, 매개변수가 바뀔떄마다 컴파일 하지않고 좀 더 효율적인 측면에서
매개변수를 바꾸어 사용할 수 있도록 하기위해 사용
초기화 파라미터 사용 방법
1. web.xml에 기술 후, servlet파일에서는 ServletConfig 클래스를 이용하여 접근이 가능
2. Servlet(클래스)파일에 직접 기술
1.
- 서블릿 클래스 제작
- web.xml에서 서블릿 등록 시, init-param태그를 사용하여 초기화 매개변수를 등록. servlet태그 안에다가 정의
<servlet>
<servlet-name>ServletHello</servlet-name>
<servlet-class>kr.co.test.ServletHello</servlet-class>
<init-param>
<param-name>id</param-name>
<param-value>userid</param-value>
</init-param>
</servlet>
- 서블릿 클래스에서 getInitParameter(),로 가져와서 사용.
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String id = getInitParameter("id");
}
* ServletConfig 클래스는 HttpServlet에서 상속하고있는데 내 servlet클래스는 이미 HttpServlet을 상속하여 생성하였으므로 따로 생성할 필요는 없고
바로 사용하면 됨
2.
ServletConfig를 상속받은 다른 클래스나 ServletConfig 객체 생성 후 매개변수 가져와 사용
@WebInitParam 어노테이션에 초기화 파라미터를 기술한 후,
: @WebServlet(urlPatterns={"ServletHello"}, initParams=[@WebInitParam(name="id,value="aaaa")})
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String id = getInitParameter("id");
}
# response 객체, HttpServletResponse
- 에러처리 : sendError,
- URL 이동 : sendRedirect
# include, forward
- sendRidrect를 수행하면 버퍼가 비워짐.
- forward나 include를 사용하면 현재 페이지가 가지고 있는 값들을 유지하여 페이지를 이동할 수 있음
- RequestDispatcher 객체를 사용
- RequestDispatcher는 ServletContext에서 받아오면 됨
ServletContext context = ServletConfit객체.getServletContext();
RequestDispatcher dispatcher = context.getRequestDispatcher(페이지주소_상대경로);
dispatcher.include(request,response);
dispatcher.forward(request,response);
# 데이터 저장 영역
- Request, Session 객체
- 쿠키데이터 사용
- Request, Session 객체
1. request(servletRequest of HttpServletRequest)
- request.setAttribute(key,value);
- request.getAttribute(key,value);
- request.removeAttribute(key,value);
2. session(HttoSession)
- session.setAttribute(key,value);
- session.getAttribute(key,value);
- session.removeAttribute(key,value);
3. application(ServletContext)
- application.setAttribute(key,value);
- application.getAttribute(key,value);
- application.removeAttribute(key,value);
- 쿠키데이터 사용
1. Cookie 전송
Cookie cookie = new Cookie(key, java.net.URLEncoder.encode(value, "UTF-8");
cookie.setComment(주석);
cookie.setPath(도메인);
cookie.setMaxAge(유지시간(초단위));
cookie,.addCookie(cookie);
2. 개별 클라이언트의 Cookies폴더에 파일로 저장
3. Cookie 획득
Cookie[] cookies = request.getCookies();
for(int i=0l i<cookies.length; ++i);
if(key.equals(key)) {
String value = cookies[i].getValue();
}
}
# ServletContext
: 특정 데이터를 여러 서블릿클래스에서 다같이 사용할 수 있도록 지정. 여러 서블릿에서 공유하는 정보이므로 web.xml에서 servlet부분보다 위에 기술되어야함
- Context Parameter를 이용하여 web.xml에 데이터를 기술,
- servlet에서 공유하면서 사용
<context-param>
<param-name>id</param-name>
<param-value>aaaa</param-value>
</context-param>
String id = getServlet();
# Servlet 필터
웹상에서 사용자 요청페이지가 실행하기 전/후에 필요에 의해데이터를 가로채채 작업하고자 하는 경우 사용
- 전달받은 데이터를 인코딩하는 경우
- 세션 데이터를 인증하는 경우
- 이벤트나 공지 등 팝업을 추가하는 경우
- Filter 인터페이스를 구현하는 클래스로 작성한 후
- 프로젝트에 인식을 위해 web.xml에 작성(등록하기)
filter, filer-mapping(필터가 언제 실행될지의 정보) 태그
- Servlet 부분보다 위에 작성해야 함
# Servlet 이벤트
서버가 실행된 이후에 특정 이벤트를 감지하여 그 시점에 작업을 하고자하는 경우
- 컨텍스트가 초기화하는 경우
- 세션이 생기거나 소멸되는 경우
- 속성이 바뀌는 경우
- 서블릿 이벤트 리스너를 사용
1. ServletContext 객체 초기화/소멸
: ServletContextListener
2. ServletContext객체에 속성 추가/삭제/수정
: ServletContextAttributeListener
3. Session
...
4. Request
...
- 서블릿 이벤트를 등록 : web.xml
: Listener 태그를 사용
HTTP와 웹 아키텍처 (0) | 2015.11.02 |
---|---|
MVC 1 (0) | 2015.08.30 |
이클립스 스프링 개발환경 (0) | 2015.08.27 |
[JQuery] plug-in top 100 (0) | 2015.05.27 |
[웹서비스] 기초 4 - QnA, Web Client (0) | 2015.05.01 |
KLDP 등 여러 리눅스 커뮤니티에 공지를통해서
커널연구회라는 곳에서 세미나를 주최하여 진행하였음.
일시 : 2015.08.29(토) 14:00 ~ 17:00
내용 : Device Tree, 커널 4.0 포팅
1. 소개
- 강사소개 및 출판서적
커널연구회, 정재준대표님
Dedvice Tree 상세분석 in Linux Kernel 4.0
- 3.2커널이후부터는 디바이스 트리가 규약화 됨
- 디바이스 트리란? 디바이스 트리의 스크립트 부분만 수정하여(전체 커널소스는 수정하지 않아도됨) 다시 컴팡리하면 많은 하드웨어 디바이스를 지원이 가능하게하는 일종의 규약으로 탄생
- 임베디드 작품들 구경 및 설명
2. 컴퓨터 아키텍쳐
# 8bit microprocessor (AVR ATmega)
- Block Diagram of the AVR MCU Architecture
- 8bit 레지스터 * 32개
- 8bit : op + op1 + op2
ex. + 001 01 01
- program memory map, data memory map,
- the pararrel instruction fetches and instruction executions
- single cycle ALU Operation
- on-chip data sram access cycles
- Clock Distribution
# ARM cortex 제품 라인업
- cortex-A : s/w 위주 위주로 개발할 때
- cortex-R & M : h/w 위주로 개발할 때
# 32bit Architecture
: 2^32 = 4 GB
# 32bit Architecture Memory Map
# 2^64 = 1024 * 1024 * ...... * 2^4 = ??GB
# ARM Cortex-M (32bit)
참고하기. http://lifeseed.tistory.com/m/post/60
3. 리눅스 커널 소스
- 2.6..21~ : task_struct 구조체, Linked-list(pointer), 라운드로빈, RTS 알고리즘
- 2.6.35~ : CFS 자료구조, 레드블랙트리 알고리즘
# 소스 다이어그램
- linux kernel map : http://www.makelinux.net/kernel_map/
- kernel diagram : http://www.makelinux.net/kernel/diagram
- system
- networking
- storages, file system
- memory
- processing
- human interface
# 커널 자료구조
- Device Tree : /proc/device-tree
/arch/...
/devices/...
/net/...
/mm/...
/devices/...
/fs/...
http://ssup2.iptime.org/wiki/Device_Tree
# 커널 4.0 포팅하는 방법
- GIC : 분산처리해주는...
- DMC
http://forum.falinux.com/zbxe/index.php?document_srl=613440&mid=lecture_tip
<디바이스 트리>
- 타겟보드로 컴파일을 진행할땐 uboot로 진입해야함
- fastboot로 실행을 시킴
- 각 파티션으로 나누어져 있고 해당부분에 올려서 크로스컴파일로 진행
- root권한으로 진행
- DTB, DTC, DTS,
http://forum.falinux.com/zbxe/?document_srl=589850&mid=lecture_tip&page=3
http://forum.falinux.com/zbxe/?mid=lecture_tip&l=ru&document_srl=589850
<커널>
- ubuntu 버전에서
- kernel.org에서 리눅스 소스를 받으면 됨
https://www.kernel.org/pub/linux/kernel/v4.x/
- "make" 컴파일
"make build"
https://kldp.org/node/133775
http://mintnlatte.tistory.com/429
https://www.gnu.org/software/make/
Ramdisk
buildroot : http://buildroot.org/
* logic analizer
https://www.saleae.com/downloads
system(), fork() (0) | 2015.12.24 |
---|---|
[Unix V6] 시스템 부팅 (0) | 2015.12.19 |
메모리관리 (0) | 2015.08.18 |
인터럽트 / 트랩 (0) | 2015.08.16 |
VFS, Virtual File System (0) | 2015.08.16 |