목록
'전체 글' 743건
코드로 놀고, 언어로 성장하는 공방.
-
웹 페이지 연결 기능보통 웹 프로그램에서 사용되는 정보는 서블릿의 비지니스 로직 처리 기능을 이용해 데이터베이스에서 가져옵니다. 그러나 동시 사용자 수가 많아지면 데이터베이스 연동 속도도 영향을 받게 되므로 정보의 종류에 따라 어떤 정보들은 클라이언트 PC나 서버의 메모리에 저장해두고 사용하면 좀 더 프로그램을 빠르게 실행시킬 수 있습니다. 세션 트래킹실제 HTTP 프로토콜 방식으로 통신하는 웹 페이지들은 서로 어떤 정보도 공유하지 않습니다.사용자 입장에서는 웹 페이지 사이의 상태나 정보를 공유하려면 프로그래머가 세션 트래킹(Session Tracking)이라는 웹 페이지 연결 기능을 구현해야 합니다.아래 그림은 HTTP 프로토콜로 각각의 웹 페이지를 요청해서 클라이언트의 브라우저에 표시해주는 과정을 나타낸 것입니다. HT..
-
JTextArea, 텍스트 영역 컴포넌트JTextAreaJTextArea를 이용하면 여러 줄의 문자열을 입력받을 수 있는 창(텍스트영역)을 만들 수 있습니다. 창의 크기보다 많은 줄과 문자를 입력할 수 있지만 스크롤바를 지원하지 않습니다. JTextArea 컴포넌트를 JScrollPane에 삽입되어야 스크롤바 자원을 받을 수 있습니다. JTextArea 컴포넌트의 생성텍스트명의 컴포넌트의 생성자는 다음과 같습니다.JTextArea() // 빈 텍스트입력JTextArea(int rows, int cols) // 입력 창이 rows x cols 개의 문자 크기만 텍스트 입력JTextArea(String text) // text 문지열로 초기화된 텍스트 영역JTextArea(String text, int rows, int cols) // 입력 창이..
-
req, res 객체 살펴보기익스프레스의 req, res 객체는 http 모듈의 req, res 객체를 확장한 것입니다. 기존 http 모듈의 메서드도 사용할 수 있고, 익스프레스가 추가한 메서드나 속성을 사용할 수도 있습니다. 예를 들어 res.writeHead, res.write, res.end 메서드를 그대로 사용할 수 있으면서 res.send나 res.sendFile 같은 메서드도 쓸 수 있습니다. 다만, 익스프레스의 메서드가 워낙 편리하므로 기존 http 모듈의 메서드는 잘 쓰이지 않습니다.익스프레스가 많은 속성과 메서드를 추가했지만, 여기서는 자주 쓰이는 것 위주로만 알아보겠습니다. req 객체부터 살펴봅니다.• req.app: req 객체를 통해 app 객체에 접근할 수 있습니다. req.app.get('port')와 ..
-
load-on-startup 기능 사용하기서블릿은 브라우저에서 최초 요청 시 init() 메서드를 실행한 후 메모리에 로드되어 기능을 수행합니다. 따라서 최초 요청에 대해서는 실행 시간이 길어질 수밖에 없습니다. 이런 단점을 보완하기 위해 이용하는 기능이 load-on-startup입니다.load-on-startup의 특징은 다음과 같습니다.톰캣 컨테이너가 실행되면서 미리 서블릿을 실행합니다.지정한 숫자가 0보다 크면 톰캣 컨테이너가 실행되면서 서블릿이 초가화됩니다.지정한 숫자는 우선순위를 의미하며 작은 숫자부터 먼저 초기회됩니다.애너테이션을 이용하는 방법1. sec06.ex02 패키지를 생성하고 마우스 오른쪽 버튼을 클릭한 후 New > Servlet을 선택합니다. 2. 클래스 이름으로 LoadAppConfig을 입력하고 Next를 클릭합니..
-
JTextField, 텍스트필드 컴포넌트JTextFieldJTextField를 이용하면 한 줄은 문자열을 입력받는 창(택스트필드)을 만들 수 있습니다. 입력 가능한 문자 개수와 창의 크기는 응용프로그램에서 변경할 수 있습니다. 텍스트필드에 문자열 입력 도중 키가 입력되면 Action 이벤트가 발셍합니다. JTextField 컴포넌트의 생성텍스트필드 컴포넌트의 생성자는 다음과 같습니다.JTextField() // 빈 텍스트필드JTextField(int cols) // 입력 창의 열의 개수가 cols 게인 텍스트필드JTextField(String text) // text 문자열로 초기화된 텍스트 필드JTextField(String text, int cols) // 입력 창의 열의 개수는 cols개이고 text 문지열로 초기화된 텍스트핑드 텍스트..
-
Router 객체로 라우팅 분리하기app.js에서 app.get 같은 메서드가 라우터 부분입니다. 라우터를 많이 연결하면 app.js 코드가 매우 길어지므로 익스프레스에서는 라우터를 분리할 수 있는 방법을 제공합니다. routes 폴더를 만들고 그 안에 index.js와 user.js를 작성합니다. routes/index.jsconst express = require("express");const router = express.Router();// GET / 라우터router.get("/", (req, res) => { router.send("Hello, Express");});module.exports = router; routes/user.jsconst express = require("express");const router = ..