[MSSQL] 반복문(WHILE)사용법 & 예제
WHILE문 MS SQL에서도 반복문을 지원합니다. 반복문을 사용해서 변수에 문자열을 계속 붙이거나 숫자를 더하는 등 다양한 방식으로 응용하여 사용할 수 있습니다. 반복문을 사용하는 다양한 예제를 포스팅합니다. 1. 숫자더하기 DECLARE @NUM INT, @SUM INT,@TIME INT --변수선언 SET @NUM = 1 SET @SUM = 0 SET @TIME = 10 WHILE @NUM
키자드에 등록된 총 1000개의 포스트를 확인하실 수 있습니다.
WHILE문 MS SQL에서도 반복문을 지원합니다. 반복문을 사용해서 변수에 문자열을 계속 붙이거나 숫자를 더하는 등 다양한 방식으로 응용하여 사용할 수 있습니다. 반복문을 사용하는 다양한 예제를 포스팅합니다. 1. 숫자더하기 DECLARE @NUM INT, @SUM INT,@TIME INT --변수선언 SET @NUM = 1 SET @SUM = 0 SET @TIME = 10 WHILE @NUM
서브 쿼리란? 하나의 쿼리문 안에 포함되어 있는 또 하나의 쿼리문을 말합니다. 서브 쿼리는 메인 쿼리가 서브 쿼리를 포함하는 종속적인 관계입니다. 여러 번의 쿼리를 수행해야만 얻을 수 있는 결과를 하나의 중첩된 SQL 문장으로 간편하게 결과를 얻을 수 있게 해 줍니다. 쉽게 말해서 쿼리 문안에 쿼리문을 또 쓴다고 생각하면 됩니다. ※ Sub Query를 Inner Query라고도 합니다. 주의사항 서브 쿼리를 괄호로 묶어서 사용해야 한다. 서브 쿼리 안에서 Order By 절은 사용할 수 없다. 연산자 오른쪽에 사용하여야 한다. 서브 쿼리의 반환값에 따른 서브쿼리 단일 행 서브쿼리 : 서브쿼리의 결과가 1행 다중 행 서브쿼리 : 서브쿼리의 결과가 여러 행 다중 칼럼 서브 쿼리 : 서..
프로시저란? 데이터베이스에서의 프로시저란 프로그래머가 생성해놓은 쿼리문을 마치 하나의 메서드 형식으로 관리하는 것입니다. 실무에서는 굉장히 복잡한 쿼리문을 많이 사용해요. 많은 컬럼을 조회하고 여러 테이블을 조인하고 거기다가 WHERE조건까지... 심한 것은 하나의 쿼리를 만드는데 1000라인이 넘어가는 경우도 종종 있어요. 이렇게 장문의 쿼리를 사용할 때마다 써줘야 한다면 굉장히 불편할 거예요. 그러므로 이 장문의 쿼리를 프로시저에 저장해주고, 쿼리문이 저장된 프로시저를 호출하여 프로그래밍을 하는 것이 훨씬 효율적입니다. 프로시저 사용법 프로시저 생성 문법 CREATE PROC [프로시저명] AS [쿼리문] 프로시저 생성 예제 CREATE PROCEDURE UP_EXPRO ( @P_COMPANY NVA..
조인이란? 두개이상의 테이블이나 데이터베이스를 연결하여 데이터를 검색하는 방법입니다. 자신이 검색하고 싶은 컬럼이 다른 테이블에 있을 경우 주로 사용하며 여러 개의 테이블을 마치 하나의 테이블인 것처럼 활용하는 방법입니다. 보통 Primary key혹은 Foreign key로 두 테이블을 연결합니다. 테이블을 연결하려면 적어도 하나의 칼럼은 서로 공유되고 있어야 합니다. 고등학교 수학 시간 때 배웠던 벤다이어그램을 활용하면 쉽게 이해할 수 있습니다. INNER JOIN 쉽게말해 교집합이라고 생각하시면 됩니다. 기준 테이블과 Join 한 테이블의 중복된 값을 보여줍니다. 결과값은 A의 테이블과 B테이블이 모두 가지고 있는 데이터만 검색됩니다. --문법-- SELECT 테이블별칭.조회할칼럼, 테이블별칭.조회..
Union이란? Union은 여러 개의 SQL문을 합쳐 하나의 SQL문으로 만들어주는 방법입니다. 두 개의 쿼리의 합집합을 만들어준다고 생각하면 될듯합니다. Union과 UnionAll의 차이점 Union과 UnionAll은 두 쿼리문을 하나로 합쳐준다는 것에 공통점이 있습니다. 하지만 Union은 두 쿼리의 결과의 중복값을 제거해서 보여주고, UnionAll은중복된 값도 전부 다 보여준다는 차이점이 있습니다. 속도는 당연히 중복 값 제거를 위해 연산을 한번 더 해야 하기 때문에 UnionAll이 Union보다 더 빠르겠죠? Union 사용 시 주의점 칼럼명이 같아야 한다. (같지 않을 경우 AS를 사용하여 같게 만들어주면 됩니다.) 칼럼 별 데이터 타입이 같아야 합니다. UNION / UNION..
ALIAS란? ALIAS 는 값에 별칭을 주어 접근을 별칭 형태로 할 수 있도록 하는 역할을합니다. 데이터,칼럼,테이블,서브쿼리,WHERE절 등에 사용할 수 있습니다. 대표적으로 알아보기 힘든 칼럼에 AS(별칭)을 많이 사용합니다. 예약어는 AS입니다. ALIAS(문법) ColumnName AS 컬럼명칭 --컬럼에 별칭 부여하기 TableName AS 테이블명칭 --테이블에 별칭 부여하기 ALIAS(예제) 1. 칼럼명에 별칭(AS)짓기 SELECT NO_NUM AS 사원번호,NO_NAME AS 사원명,AGE AS 나이 FROM EX_TABLE 2. 칼럼 NUM1+NUM2의 값을 TOTAL이라는 별칭(AS)짓기 SELECT NUM1 + NUM2 AS TOTAL FROM EX_TABLE 3.EX_TABLE이..
집계 함수 집계 함수는 계산을 수행하고 단일 값을 반환합니다. Count() 함수를 제외한 집계 함수는 Null 값을 무시하며 SELECT문 혹은 HAVING 절에만 사용할 수 있습니다. 집계 함수 종류 COUNT() : 수량 계산 --테이블(MY_TABLE)에 남아있는 칼럼수 조회-- SELECT COUNT(*) AS 칼럼수 FROM MY_TABLE --테이블(MY_TABLE) 이름(MY_NAME)값이 있는 ROW 수 조회-- SELECT COUNT(MY_NAME) AS ROW수 FROM MY_TABLE AVG(): 평균 --테이블 (MY_TABLE)의 평균나이(AGE) 조회-- SELECT AVG(AGE) AS 평균나이 FROM MY_TABLE --테이블(MY_TABLE)의 수량(QT)의 전체 평균(..
GROUP BY절이란? 테이블 SELECT시 조회 결과를 그룹으로 묶어서 그 결과를 가져오는 역할을 한다. DISTINCT절이란? DISTINCT는 GROUP BY절과 마찬가지로 조회결과를 그룹으로 묶어서 그 결과를 가져온다. 주로 UNIQUE한 컬럼을 조회할 경우 사용되는 구절이다. GROUP BY절과 DISTINCT의 차이점 두 구절은 똑같이 그룹을 지어준다는것에 대해 공통점이 있다. 하지만 두 구절의 차이는 GROUP BY는 결과물을 정렬해서 표현하고 DISTINCT는 결과물을 정렬하지 않는다. 즉 정렬이 필요하다면 GROUP BY절을 사용하면 되고 그것이 아니라면 DISTINCT절을 사용하면 된다. 정렬이 필요하지않다면 DISTINCT절을 사용하는것이 속도면에서 GROUP BY절보다 빠르다. 문법..
데이터베이스 MS_SQL Update문 사용법 및 예제입니다. Update문은 굉장히 위험한 명령어이므로 꼭 트랜잭션 안에서만 사용해주셔야 합니다. 특히 Update문구에 실수로 Where 절을 쓰지 않고 실행을 하게 되면 테이블에 있는 칼럼 모두가 바뀌게 되는데 이런 큰 실수를 하게 되면 되돌릴 수도 없고 바로 사직서를 써야 하는 상황이 연출됩니다...... ㅠㅠㅠ 그러므로 먼저 Update에 하기 앞서서 Select문으로 자신이 바꿔야 할 데이터를 조회한 뒤 꼭 트랜잭션 안에서 Update문을 실행해주도록 합시다. 트랜잭션이란? 하나의 처리를 여러 단계로 다루는 기능을 트랜잭션(Transaction)이라고 합니다. 하나의 처리를 Commit이라는 명령어를 수행하기전 마지막으로 한번 더 확인할 수 있는..
데이터베이스 MS_SQL Delete문 사용법 및 예제입니다. Delete문은 굉장히 위험한 명령어이므로 이왕이면 트랜잭션 안에서 실행해주는것이 좋습니다. 트랜잭션이란? 하나의 처리를 여러 단계로 다루는 기능을 트랜잭션(Transaction)이라고 합니다. 하나의 처리를 Commit이라는 명령어를 수행하기전 마지막으로 한번 더 확인할 수 있는 기회를 줌으로써 좀 더 안정적인 데이터베이스 작업을 가능하게 합니다. 트랜잭션의 실행결과를 데이터베이스에 반영하는 것을(Commit)이라고 하고 반영하기 전으로 되돌리는 것을 롤백(RollBack)이라고 합니다. BEGIN TRAN--트랜잭션 시작 ROLLBACK TRAN --트랜잭션 이전상태로 ROLL BACK COMMIT TRAN --트랜잭션 완료 Delete ..
데이터베이스 MS_SQL 데이터 삽입(Insert) 사용법 및 예제입니다. Insert 문법 INSERT INTO 테이블명(칼럼1,칼럼2,칼럼3,....) values(데이터1,데이터2,데이터3,......) INSERT INTO My_Table(no_emp,nm_kor,age) values('dz000','홍길동',20) Insert문의 사용법은 다음과 같습니다. 하지만 위 방법은 일일이 수작업으로 데이터를 한줄한줄 넣는 방식이므로 테이블에 다량의 데이터를 삽입하려고 하면 굉장히 번거롭고 비효율적입니다. 여기서 만약 삽입해야 할 데이터가 다른 테이블에 이미 삽입되어 있다면..?? 새로 데이터를 일일이 넣는 것보다 이미 삽입되어있는 테이블의 데이터를 가지고 오는 방법이 더 효율적이지 않을까요? 이럴 때 ..
SELECT는 테이블에 있는 데이터를 조회하는 명령어입니다. Select(검색) --My_Table로 부터 모든 칼럼 조회 SELECT * FROM My_Table --My_Table의 No_Emp,Nm_Kor,Age 칼럼 조회 SELECT No_Emp,Nm_Kor,Age FROM My_Table Where(조건문) --이름이 '홍길동'인사람 검색 SELECT * FROM My_Table WHERE Nm_Kor ='홍길동' --나이가 25살인 사원의 한국이름과 나이 조회 SELECT Nm_Kor,Age FROM My_Table WHERE Age=25 --나이가 25살이 아닌 사원 조회 SELECT * FROM My_Table WHERE Age25 --사원번호가 '0315' 이고 나이가 25살보다 작거나 ..
DBMS란? 데이터베이스를 직접 응용 프로그램들이 조작하는 것이 아니라 데이터베이스를 조작하는 별도의 소프트웨어가 있는데 이를 데이터베이스 관리 시스템(DBMS : DataBase Management System)이라고 합니다. 즉 데이터베이스 관리 시스템이란 데이터베이스를 관리하며 응용 프로그램들이 데이터베이스를 공유하며 사용할 수 있는 환경을 제공하는 소프트웨어입니다. DBMS 종류 및 장단점 분석 대표적인 DBMS는 Oracle사의 Oracle, My_SQL MicroSoft사의 MS_SQL이 있다. 세계 DB시장 점유율 링크 Oracle 오라클에서 만들어 판매 중인 상업용 데이터베이스 윈도우, 리눅스, 유닉스 등 다양한 운영체제에 설치를 할 수 있다. MS_SQL , MY_SQL보다 대량의 데이터..
데이터베이스 DDL에는 Create(생성), Alter(수정), Drop(삭제)를 시킬 수 있는 명령어가 있습니다. 이 테이블의 구조를 생성, 변경, 삭제를 하는 것이 DDL입니다. 이번 포스팅에서는 여러 DBMS 중에서 MSSQL의 DDL에 대해서 포스팅하려 합니다. CREATE TABLE(테이블 생성) --문법 CREATE TABLE 테이블명( 컬럼명 타입(크기) NOT NULL, --널값이 들어갈 수 없음 컬럼명 타입 NULL DEFAULT(값), --초기값 지정 CONSTRAIN PK이름 PRIMARY KEY(컬럼명) --PK설정 ) --예제 CREATE TABLE MY_TABLE( NO_EMP NVARCHAR(10)NOT NULL, -- NULL 값이 들어갈 수 없음 NM_KOR NVARCHAR..
자바를 공부하다 보면 자연스레 알고리즘 문제도 풀게 되는데요. 알고리즘 문제에 단골손님으로 등장하는 것이 바로 두 숫자의 최대공약수와 최소공배수를 구하는 문제가 꼭 있습니다. 이번 포스팅에서는 두 수의 최대공약수와 최소공배수를 구하는 방법에 대해서 알아보도록 하겠습니다. 예제는 두 개의 숫자를 입력받아서 두 개의 숫자의 최대공약수와 최소공배수를 구하는 알고리즘을 준비했습니다. 최대공약수와 최소공배수 구하기 첫번째 방식 import java.util.Arrays; import java.util.Scanner; class TryHelloWorld { public int[] gcdlcm(int a, int b) { int[] answer = new int[2]; int temp=1; int gcd=a*b; w..
Dev C++이란? Dev-C++이란 GNU 라이선스로 보급되는 사용이 자유로운 무료 C/C++ 언어의 통합 개발도구입니다. 오픈소스이자 강력한 컴파일러인 MinGW 컴파일러를 포함하고 있습니다. Dev-C++은 델파이로 구현되어있으며 윈도우 환경에서만 사용할 수 있습니다. C 계열 개발도구로는 Visual Basic을 많이 사용하고 기능도 Dev-C++ 보다 압도적으로 많지만 공부 목적으로의 다운로드가 아니면 부분적으로 유료인 부분이 있고 Dev-C++ 보다는 상대적으로 무거운 부분도 존재합니다. 그냥 가볍게 C언어를 공부하고 싶으신 분들에게 추천하는 프로그램입니다. Dev C++다운로드/설치 1. DEV-C++ 설치바로가기 위 경로로 접속해주세요 그런 뒤 빨간 박스 안 다운로드 버튼을 눌러줍니다. 2..
이번 포스팅에서는 프로그래머라면 필수적으로 알고 있어야 할 데이터베이스(DataBase)란 무엇이며 왜 사용하는지 또 지금 현재 쓰고 있는 DBMS(DataBase Management System)들은 어떤 것이 있는지에 대해 알아보도록 하겠습니다. DataBase란? 여러 사람에 의해 공유되어 사용될 목적으로 통합하여 관리되는 데이터의 집합을 말합니다.. 자료항목의 중복을 없애고 자료를 구조화하여 저장함으로써 자료 검색과 갱신의 효율을 높이죠. 현대적인 의미의 데이터베이스 개념을 확립한 사람은 당시 제너럴일렉트릭사(社)에 있던 C.바크만으로 그는 1963년 IDS(Integrated Data Store)라는 데이터베이스 관리시스템을 만들었습니다. 논리적으로 연관된 하나 이상의 자료의 모음으로 그 내용을..
스트링 값에 있는 문자를 좀 더 세밀하게 활용하기 위하여 스트링에 담겨있는 값을 배열에 저장하고 싶을 때가 가끔 있습니다. (ex : 가운데 글자만 출력하기, 글자 뒤집기) 이번 포스팅에서는 스트링에 담겨 있는 값을 한 글자씩 끊어서 배열에 저장하는 방법에 대해 알아봅니다. String값 한글자씩 배열에 저장하기 Split 함수를 활용하여 단어를 String배열에 한 글자씩 저장하기 String word = "POWER"; //스트링 문자 POWER String[] array_word; // 스트링을 담을 배열 //사실상 가장 간단함 array_word = word.split(""); //배열에 한글자씩 저장하기 for(int i=0;i
아스키코드 미국에서 표준화가 추진된 정보교환용 7bit 부호로 정의합니다. 1962년 안시(ANSI)가 정의한 미국 표준 정보교환 코드이며 1963년 미국표준협회(ASA)에 의해 결정되어 미국의 표준 부호가 되었습니다. 이 코드는 7비트의 이진수 조합으로 만들어져 총 128개의 부호를 표현합니다. 아스키코드의 처음 32개(0~31)는 프린터나 전송 제어용으로 사용되고 나머지는 숫자와 로마 글자 및 도량형 기호와 문장 기호를 나타냅니다. 아스키코드는 7자리의 2진 코드인데 1비트의 패리티 비트를 추가하여 8비트로 많은 컴퓨터에 사용되고 있습니다. 아스키코드 표 유니코드 시간이 지나가면서 영어나 숫자 그리고 기본적인 기호뿐만 아니라 그 나라, 그 언어에서 쓰는 다양한 문자들을 처리하려면 1바이트로 정의된 아..
이전 포스팅에서 JSP MVC패턴의 구조와 개념에 대해서 공부를 해보았는데요 이번에는 본격적으로 예제 소스를 예로 들어 MVC2 패턴에 심도 있게 공부를 해보도록 하겠습니다. 첫 번째 예제로는 웹페이지에서 회원가입 및 로그인을 준비했습니다. 어느 웹사이트에 들어가도 회원가입과 로그인 기능은 꼭 있을 정도로 광범위하게 쓰이는 기능입니다. MVC 패턴 회원가입 및 로그인 1. 우선 예제파일 올려드릴게요. 이 파일을 압축 해제하셔서 Import 해주세요. 2. 위 사진과 같이 데이터베이스를 하나 만들어주세요. Master은 관리자 여부를 관리하는 칼럼인데 0이면 관리자이고 1이면 일반회원입니다. 3. context.xml에 들어가셔서 방금 생성한 테이블을 연결해줍니다. 그런 뒤 index.jsp를 실행시켜주시..
저번 포스팅 MVC2 패턴으로 만드는 회원가입 및 로그인에 이어서 이번에는 MVC2 패턴으로 만드는 게시판을 공부해보겠습니다. 회원가입 , 로그인 기능과 마찬가지로 게시판도 어느 웹사이트에서나 꼭 하나씩은 있는 필수적인 기능입니다. 어차피 웹사이트 기능들은 다 거기서 거기입니다. (데이터 추가, 출력, 수정, 삭제) 이 게시판을 응용하면 웹사이트에 존재하는 모든 기능들을 다 구현할 수 있다고 해도 될 정도로 중요한 부분이며 웹사이트를 제작하려는 사람이라면 꼭 알고 가야 하는 기능입니다. MVC 패턴 게시판 1. MVC2 패턴 게시판 소스 올려드리겠습니다. 이 파일을 Import해주시기 바랍니다. 2. 그런 뒤 위의 테이블 구조와 같이 게시판 데이터베이스를 만들어주겠습니다. 3. META-INF -> co..
옛날에 공부했던 소스들을 정리하면서 발견한 별찍기 소스입니다. 자바 공부를 처음할때 열심히 밤새면서 돌리던게 기억나네요 ㅎㅎㅎ 혹시나 참고하실분 계실까 싶어 올립니다. FOR문 연습에는 별찍기가 최고~ 별찍기 Java 1. 간단한 2차원 배열 별찍기입니다. for(int i=0;i
MVC패턴이란? Model , View , Controller의 합성어로 소프트웨어 공학에서 사용되는 소프트웨어 디자인 패턴입니다. Model : 백그라운드에서 동작하는 로직을 처리합니다. View : 사용자가 보게 될 결과 화면을 출력합니다. Controller : 사용자의 입력처리와 흐름 제어를 담당합니다. MVC패턴에는 모델1방식과 모델 2방 식이 있는데 특히 모델 2 구조 기반의 MVC패턴 구현은 JSP 개발자라면 무조건 알고 있어야 할 개발 방식입니다. JSP 웹사이트 구조는 크게 모델 1 방식과 모델 2 방식으로 나뉩니다. 간단하게 분류하자면 JSP에서 출력과 로직을 전부 처리하느냐(모델 1) JSP에서 출력만 처리하느냐(모델 2)로 분류할 수 있습니다. Model1 방식 모델 1 구조는 사용..
저번 포스팅에서는 MpAndroidChart 라이브러리를 활용해 원그래프(PieChart)를 만드는 방법을 알아봤습니다. 이번에는 MpAndroidChart 라이브러리를 활용하여 안드로이드 꺾은선 그래프(LineChart)를 만드는 방법에 대해서 알아보겠습니다. 안드로이드 꺽은선 그래프 만들기 build.gradle repositories{ maven {url "https://jitpack.io"} } dependencies { compile 'com.github.PhilJay:MpAndroidChart:v3.0.2' } 먼저 MpAndroidChart 라이브러리 사용을 위해 build.gradle에서 아래에 있는 두줄을 추가해주도록 하겠습니다. XML JAVA public class MainActivi..
2017. 11 .17일 금요일 지스타를 다녀왔습니다. 제가 사는동네에서 지스타가 열리는 부산 센텀시티 벡스코까지가는데 1시간 남짓걸리더군요. 벡스코앞에서 점심을 해결하고 1시반쯤 입장을 했습니다. 평일 오후에가서 그런지 입장하는데는 얼마 걸리지않았어요 내 생에 태어나서 처음가보는 지스타!! 너무나 설랬습니다. 들어가니 사람들로 꽉꽉 차있더군요...... 게임 체험을 한번 해보고싶어도 기본 1시간씩은 기다려야되는 기막힌 상황에 너무나도 슬펐습니다... 하지만 눈으로만 봐도 즐겁더군요.. 코스프레 하시는 모델분들도 굉장히 많았습니다. 실제로보니 엄청 잘생기시고 이쁘셨다는... 비율이 장난이아니세요 모델이 괜히 모델이 아닌가봐요 ㅎㅎ 여기는 넥슨의 피파온라인4 부스인데요. 솔직히 피파온라인3유저로써 기대를 ..
이번에는 유니티에서 만든 프로젝트를 안드로이드 스튜디오에서 Import 하는 방법에 대해서 알아보도록 하겠습니다. 안드로이드 스튜디오의 프로젝트가 주력 프로젝트이고 부가적으로 유니티 기능을 활용하고 싶은 분들에게 좋은 포스팅이 되리라고 생각합니다. 유니티 프로젝트 안드로이드 스튜디오에 연동시키기 1. 먼저 시작하기전에 안드로이드 SDK와 JDK의 경로가 잘 설정되어있는지 확인합니다. (설정이 제대로 안되어있을경우 Export 안됨) Edit -> Preferences 2. External Tools에서 SDK , JDK의 경로를 설정해줍니다. SDK경로 = C:/Users/내 이름/AppData/Local/Android/sdk 안드로이드 설치 시 기본 설정으로 설치를 했다면 대부분 경로는 이렇게 되어 있..
개발 도중 차트를 만들일이 있어 쉽게 만드는 방법을 알아보다가 재미있는 라이브러리를 발견하였습니다. 바로 MpAndroidChart이라는 라이브러리인데요 이 라이브러리를 사용하면 차트를 굉장히 쉽게 만들 수 있습니다. 이번 포스팅에서는 MpAndroidChart를 이용하여 원그래프(PieChart)를 만드는 방법에 대해 알아보겠습니다. 안드로이드 원 그래프 만들기 build.gradle repositories{ maven {url "https://jitpack.io"} } dependencies { compile 'com.github.PhilJay:MpAndroidChart:v3.0.2' } 라이브러리 사용을 위해 build.gradle에서 아래에 있는 두줄을 추가해주도록 하겠습니다. XML Java p..
구글 애드센스란? 구글에서 운영하는 광고 프로그램으로, 웹사이트를 소유한 사람이 애드센스에 가입하면 구글에서 광고비를 지불하고 광고를 자동으로 그 사람의 웹사이트에 올려줍니다. 해당 웹사이트를 찾은 방문자가 그 광고를 클릭하면 구글이 광고주로부터 돈을 받아 그 일부를 웹사이트 소유자에게 나눠주는 방식입니다. 티스토리가 네이버 블로그보다 좋은 이유 중의 하나입니다. 티스토리 블로그의 장점이죠 바로 구글 애드센스를 넣을 수 있다는 거!! 사실 제가 네이버 블로그를 하지 않고 티스토리를 시작한 이유이기도 합니다. 구글 애드센스 신청하는 방법에 대해서 알아봅니다. 티스토리 블로그 구글 애드센스 신청하기 1. 신청하는 곳입니다. 아래에 링크된 URL로 들어가 주세요. 구글 애드센스 신청 링크 바로가기 그런 뒤 S..
리눅스 톰캣 서버를 사용하기 위해서는 우분 투안에서 미리 깔아놓은 이클립스와 톰캣을 연동하는 작업이 필요합니다. 이번 포스팅에서는 우분투 상에서 이클립스와 톰캣을 연동하는 방법에 대해서 알아보겠습니다. 우분투에서 이클립스 톰캣 연동 1. 먼저 이클립스를 실행시킨 뒤 Servers를 누르시고 밑에 보이는 No servers are available. Click this link to create a new server... 를 눌러주세요 2. 자신의 톰캣 버전에 맞는 버전을 선택해주세요 저는 톰캣 8.0버전이 설치되어있으므로 톰캣 8.0을 선택하도록 하겠습니다. 3. Browser...를 눌러서 경로를 설정해주도록 하죠 4. 수동으로 우분투를 설치하신분들은 설치경로를 지정해주시면 되고 톰캣을 터미널로 깔으..
유니티란? 유니티는 게임 엔진 기술이자 통합개발환경입니다. 게임 업계에서 스타트업으로 여겨졌던 유니티는 스마트폰이 등장하면서 크게 성장하였습니다. 2012년부터 유니티 가입자수는 100만 명이 넘었고 유니티를 이용해 만든 게임 중 상업적인 성과를 이룬 게임도 꾸준히 나오게 되었습니다. 대표적으로 앵그리버드, 템플런 등이 있으며 이러한 인기 덕에 최근 게임 개발 시장은 경쟁자인 에픽게임스의 언리얼 엔진과 유니티가 양대산맥으로 지배하는 구조가 되었습니다. 유니티의 장점 유니티의 가장 큰 장점은 다양한 플랫폼을 지원한다는 점이에요. 개발자는 모바일 기기, 웹브라우저, 데스크톱, 콘솔 구분 없이 원하는 형태의 게임을 쉽게 만들 수 있습니다. 개발환경 자체도 입문자가 쉽게 이해할 수 있을 만큼 직관적이고 간단합니..
우분투에서 오라클 설치방법에 대해 알아봅니다. 1. 우선 오라클 홈페이지에 접속하셔서 자신이 다운받고자하는 오라클 버전을 선택합니다.오라클 설치링크 바로가기저는 오라클 11g를 설치하겠습니다. 2. 동의를 해주시고 오라클 Linux버전을 눌러주세요 3. 오라클 설치를 위해서는 오라클 계정이 있어야합니다. 로그인해주세요 없으신분들은 계정을 만들어주시기 바랍니다. 4. 파일을 저장해줍니다. 5. Ctrl+Alt+T를 누르셔서 터미널로 들어가신뒤 root계정으로 접속해줍니다.sudo su root / 자신의 패스워드 6. 그런뒤 cd 다운로드 폴더로 들어가줍니다. (사람마다 경로가 조금다름) 7. 압축파일로 받았으니 압축을 풀어주세요.터미널에 unzip oracle* 라고 입력해주시면 됩니다. 8. 그런뒤 D..
리눅스 우분투상에서 하둡(hadoop)을 설치해보도록 하겠습니다. 하둡(hadoop)은 빅데이터 환경을 구축하기 위해서 필요한 필수 프로그램입니다. 이번 포스팅에서는 우분투에서 하둡의 설치방법에 대해서 알아보도록 하겠습니다. 빅데이터는 무엇인가? 디지털 환경에서 생성되는 데이터로 그 규모가 방대하고, 생성 주기도 짧고, 형태도 수치 데이터뿐 아니라 문자와 영상 데이터를 포함하는 대규모 데이터를 말합니다. 제4차 산업혁명시대를 맞이하여 그 중요성이 점점 커지고 있습니다. 하둡이란 무엇인가? 여러 개의 저렴한 컴퓨터를 마치 하나인 것처럼 묶어 대용량 데이터를 처리하는 기술이며 하둡은 수천 대의 분산된 x86 장비에 대용량 파일을 저장할 수 있는 기능을 제공하는 분산 파일 시스템과, 저장된 파일 데이터를 분산..
이번에는 우분투에서 아파치톰캣을 다운로드 및 설치하는 방법에 대해서 알아보겠습니다. 1. 우선 Ctrl+Alt+T를 누르셔서 터미널창으로 들어가줍시다. 그런뒤 Root로 접속을 해야하는데요 Root로 접속하는 방법은 sudo su root -> 자신이 설정한 비밀번호 -> cd 이런식으로 해주시면 root로 접속이 됩니다. 2. 아파치톰캣을 설치하기 위해서는 JDK가 설치되어있어야합니다. java -version을 입력하여 JDK가 설치가 되어있는지 확인해줍니다. 3. apt-get update을 입력하여 업데이트 패키지 목록을 읽어주세요. 4. 그런뒤 apt-get install tomcat8을 입력하여 설치를 해주도록 하겠습니다. 계속하시겠습니까 라는 문구가나오면 Y를 누르시면됩니다. 5. apt-g..
이번 포스팅에서는 저번에 설치했던 Vmware에서 우분투를 설치하는 방법에 대해서 다룹니다. 1. 우선 설치한 Vmware를 실행시키셔서 빨간박스안에있는 Create a New Virtual Machine을 클릭해주세요. 2. 3번째 라디오박스를 클릭해주시고 Next를 눌러주세요. 3. Linux와 Ubuntu64-bit를 선택하고 Next를 눌러주세요. 4. 위에 텍스트박스는 Virtual machine 이름이고 밑에는 경로입니다.설정해주시고 Next를 눌러주세요. 5. 메모리 할당 부분입니다. 원하는 만큼 할당하고 Next를 눌러줍시다. 6. 그 다음 빨간색 체크박스를 클릭해줍니다. 7. 그럼 위사진과 같은 화면이 나올텐데 빨간박스 안에 있는 3가지 장치를 제거합니다. 8. New CD/DVD를 누르..
리눅스에서 자바 기반의 개발을 진행하기 위해서는 JDK를 먼저 다운로드하여주셔야 합니다. 직접 사이트에서 JDK를 다운로드하여도 되지만 리눅스 터미널을 통해 간단히 다운로드할 수 있는 기능이 있습니다. 이번 포스팅에서는 우분투 터미널을 통해 JDK를 다운로드하는 법에 대해 알아보도록 하겠습니다. 우분투에서 JDK 설치하기(터미널 사용) 1. 우선 우분투 터미널에 들어갑니다. Ctrl+Alt+T를 누르시면 터미널창이 실행됩니다. 명령어 sudo add-apt-repository ppa:webupd8team/java 를 입력하시고 우분투 설치할 때 설정한 비밀번호를 입력하면 2. 이런식으로 터미널 창에 찍힐 겁니다. 엔터를 눌러 달라고 하니 엔터를 눌러주겠습니다. 그다음 sudo apt-get update를..
저번 포스팅에서는 JDK를 설치하였습니다. 이번에는 우분투에서 이클립스를 설치하는 방법에 대해서 알아보도록 하겠습니다. 1. 우선 이클립스 홈페이지의 다운로드 페이지로 들어가주세요. 이클립스 설치링크 바로가기 그런 뒤 빨간박스안에있는 다운로드 버튼을 눌러줍시다. 2. 다운을 받으셨으면 폴더에 오른쪽 클릭을하고 압축을 풀어주세요 3. 압축을 푸셨으면 이러한 폴더가 생길텐데요 이폴더안에 이 아이콘을 실행시켜줍니다. 4. 자신이 다운받으실 이클립스 버전을 선택해주시기 바랍니다. 저는 이클립스로 웹개발도 진행 할 것이므로 두번째에있는 EE버전을 선택하였습니다. 5. 설치경로를 선택해주시고 Install을 눌러서 설치를 시작해줍시다. 6. 설치가 잘 진행되고 있군요. 기다려줍니다. 7. 중간에 동의하라고 하면 동..
컴퓨터를 쓰다 보면 어쩔 수 없는 상황 때문에 포맷을 해야 하는 경우가 있습니다. 포맷을 하게 되면 오라클에 저장되어있는 데이터들이 모두 날아가 버리기 때문에 굉장히 골치가 아픈데요. 이럴 때 유용하게 쓸 수 있는 방법이 바로 SQL Developer의 export기능입니다. 이 기능을 이용하셔서 미리 테이블을 백업해놓고 포맷을 한 다음 export 한 sql문장을 불러오시면 됩니다. 오라클 테이블 export 방식으로 백업하기 1. 먼저 자신이 백업하고 싶은 테이블을 오른쪽 클릭하셔서 익스포트 버튼을 눌러주세요. 2. 필요한 기능을 체크해주시고 저장 경로를 설정해주시고 다음 버튼을 눌러주세요 3. 다음 버튼, 완료 버튼을 차례로 눌러주시면 아까 설정해두었던 경로에 이렇게 sql파일이 생성되게 됩니다. ..
가상 머신 Vmware 설치법에 대해서 알아봅니다. 리눅스를 사용하는 방식은 크게 두 가지가 있습니다. 1. 실제로 리눅스를 직접 설치하는 방법 리눅스 부팅 USB를 만든 뒤 리눅스 설치, 듀얼 운영체제로 사용하는 방법입니다. 실무에서 주로 쓰며 아래에서 소개하는 방법보다 속도가 빠릅니다. 2. 가상 머신에서 리눅스를 설치하여 사용하는 방식 가상 머신 프로그램 설치 후 생성된 가상 머신 안에서 리눅스를 설치하는 방법입니다. 익숙한 윈도 우안에서 리눅스를 돌리는 방식으로 리눅스에 익숙하지 않은 학생들이 많이 사용하는 방식입니다. 이 포스팅에서는 두 번째 방식을 다룹니다. 가상 머신 프로그램 Vmware란 : 가상 컴퓨터를 배치하고 서비스를 제공할 목적으로 VM웨어(회사)가 개발한 프로그램으로 하나의 물리적..
이번에는 안드로이드 스튜디오 설치 아이콘을 바꾸는 방법에 대해서 한번 알아보도록 하겠습니다. 안드로이드 앱을 다운로드할 경우 생기는 아이콘을 바꾸는 방법입니다. 이 아이콘을 바꾸지 않았을 경우에는 아래 사진의 왼쪽과 같은 아이콘이 나오는데요. 이 아이콘을 사진의 오른쪽처럼 바꾸는 방법입니다. 앞선 포스팅과 같이 이번에도 아주 간단한 방법이니 쉽게 따라 하실 수 있을 거라고 생각됩니다. 안드로이드 설치 앱 아이콘 바꾸기 1. 먼저 설치아이콘을 그림판이나 포토샵으로 한 땀 한 땀 만들어줍니다. 저는 이렇게 한번 만들어봤습니다. 2. 그다음 이 파일을 drawable에 icon.png라는 이름으로 넣어주도록 하겠습니다. Manifest.xml 3. Manifest.xml로 가셔서 위에 있는 소스 처럼 바꾸어줍..
어젯밤이죠 2017-10-29일 오후 8시에 부산 불꽃축제가 시작되었습니다. 이번 포스팅은 어제 다녀온 부산 불꽃 축제에 대한 후기를 써보려고 해요. 부산 불꽃축제는 매년 있는 행사고 어제 다녀온 것 까지 합치면 4번째가 되는군요. 갈 때마다 느끼는 거지만 인파가 정말 장난이 아녔습니다. 후.. 사람들 보세요.. 매년 느끼는 거지만 부산 불꽃축제가 하는 날이면 모든 부산사람들이 광안리로 다 모이는 것 같아요.... 나름 이른 시간에 움직였는데도 불구하고 사람들한테 끼여서 겨우겨우 광안리로 갔습니다. 광안리 해수욕장으로 가면 너무나 미련한 짓이겠죠? 거기로 가면 사람들한테 깔려 죽어요 ㅠㅠㅠ 저는 저만의 불꽃놀이 명당인 금련산 전망대 쪽으로 갔습니다. 하....... 등산 진짜 싫어하는데 ㅠㅠㅠ 한 시간 ..
저번 포스팅하고 이어지는 내용입니다. Fragment에서 Google Cloud Vision 사용법에 대해서 알아보겠습니다. 구글 클라우드비전을 사용할 줄 모르는 분들은 이전 포스팅을 참고해주세요 구글 클라우드 비전 사용법 Fragment에서 구글 클라우드비전 사용하기 개발을 하다보면 Fragment안에서 Google Cloud Vision을 적용시키고 싶은 경우가 있는데요. Acitivty랑 Fragment가 서로 문법이 많이 달라 고생을 좀 많이 했습니다. uploadImage 이 3개의 자바 파일 중 Google Cloud Vision에서 우리는 MainActivity만 Fragment로 바꿔주면 됩니다. dependencies { compile fileTree(dir: 'libs', include..
모든 앱은 처음 실행시킬 때 초기 세팅 시간이 꼭 필요합니다. 이 초기 세팅 시간을 활용하여 로딩 화면(스플래쉬 액티비티)을 보여줌으로써 사용자는 기다리는 지루함을 덜 수 있고 개발자는 이 앱의 로고나 간단한 설명 등을 스플래쉬 액티비티에 넣어 사용자에게 정보를 전달할 수 있습니다. 안드로이드 로딩 화면 구현하기 그럼 안드로이드 로딩 화면 스플래쉬 액티비티를 구현해보도록 하겠습니다. 굉장히 간단한 방법이니 쉽게 따라 하실 수 있을 것입니다. activity_loading.xml 1. 먼저 로딩 화면을 만들어야겠죠?? 로딩 화면 XML입니다. 이렇게 자신이 띄워줄 로딩 화면을 만들어줍니다. LodingActivity public class LoadingActivity extends Activity { @O..
구글 클라우드 비전이란? 구글 클라우드 비전이란 2016년 구글에서 공개한 기계 학습 기반 이미지 인식 API입니다. 이미지 파일에서 얼굴인식 , 텍스트 인식, 사물, 상품로고, 꽃, 랜드마크 인식 그리고 사람인 경우 기쁨, 슬픔, 분노 등 다양한 감정 식별도 가능합니다. 제가 직접 사용해본결과 인식률이 완벽하지는 않았으나 애플리케이션을 개발할 경우 굉장히 유용한 API인 것만은 틀림없는 듯합니다. 그럼 Google Cloud Vision API를 사용하는 방법에 대해서 한번 알아보도록 하겠습니다. 구글 클라우드비전 API 키 발급 1. 구글 클라우드 플랫폼 API를 사용하면 먼저 API 키를 발급받아야 합니다. 구글 클라우드 API받기 링크 바로가기 위 사이트에 들어가셔서 위에 보이시는 빨간색 박스 안..
이번 포스팅으로는 LayoutInflater의 사용법에 대해서 한번 알아보도록 하겠습니다. 보통 LayoutInflater은 동적으로 뷰를 컨트롤할 때 사용되고 ListView안에도 많이 쓰이는 기법입니다. 한번 알아두시면 여러 방면으로 응용해 사용하실 수 있으실 겁니다. LayoutInflater로 동적으로 레이아웃(뷰) 추가하기 아래 예제는 버튼을 누르면 레이아웃이 아랫부분에 계속 복제되는 토이 프로젝트입니다. MainActivity.java import android.os.Bundle; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widg..
안녕하세요 이번에는 리스트뷰를 팝업으로 만드는 방법에 대해서 한번 알아보도록 하겠습니다. 리스트뷰를 팝업창으로 만들어 UI를 구성하시면 좀 더 사용자가 사용하기 편리한 앱을 만들 수 있습니다. 생각보다 굉장히 간단한 방법이니 쉽게 따라 하실 수 있을 것입니다. ListView를 팝업창으로 만들기 바로 예제 소스 올려드리겠습니다. 먼저 팝업창으로 만들 리스트뷰를 간단하게 만들어주도록 하겠습니다. activity_main.xml MainActivity package com.example.user.popup_listview; import android.app.Activity; import android.os.Bundle; import android.widget.ListView; import android.wi..
안녕하세요 이번에는 리스트뷰에 EditText를 넣어보는 작업을 한번 해보도록 하겠습니다. 개발을 하다가 보면 사용자에게 정보를 입력하고 싶을 때 리스트 뷰안에 EditText를 넣고 싶은 경우가 생깁니다. 하지만 EditText를 ListView안에 집어넣으면 포커스가 뒤죽박죽이 되어버려 굉장히 곤란한 상황에 빠지게 되는데요. 그 이유는 ListView는 목록을 스크롤할 때 메모리를 아끼기 위해 ListItem의 뷰를 재사용하기 때문입니다. 그래서 포커스가 바뀌기 전에 입력한 값을 다른 변수에 저장을 해줘야 하는데 TextWatcher라는 함수를 통해서 이 방법을 구현할 수 있습니다. ListView에 EditText 넣기 예제 파일 올려드립니다. 예제 파일은 동적으로 추가 삭제되는 EditText리스..
이번 포스팅에서는 스프링 프로젝트에서 BootStrap을 연동하는 방법에 대해서 한번 알아보도록 하겠습니다. BootStrap이란 웹 사이트나 웹 응용 프로그램을 작성하기 위해 사용하는 무료 소프트웨어 도구 모음입니다. 기본적인 디자인이 다 되어있는 오픈소스로 되어있기 때문에 디자인 능력이 부족한 개발자이거나 단기간에 웹사이트를 만들어야 하는 경우 요긴하게 사용할 수 있습니다. 스프링에서 BootStrap적용하기 1. BootStrap을 쓰기 위해서는 자신이 원하는 소스코드를 다운로드하아야 합니다. BootStrap을 다운로드하는 홈페이지를 두 군데 소개해드리겠습니다. 부트스트랩 무료 오픈소스 링크 바로가기 1 부트스트랩 무료 오픈소스 링크 바로가기 2 위에 링크된 사이트에서 자신이 원하는 오픈소스를 다..
이번에는 안드로이드 웹뷰를 통해서 자신이 만든 개인 홈페이지를 핸드폰에 띄우는 방법을 한번 알아보도록 하겠습니다. 자기가 만든 홈페이지가 아닌 네이버나 다음 같은 사이트도 띄울 수 있습니다. 우선 자신이 안드로이드 상에서 띄울 웹사이트가 있어야겠죠? 웹사이트가 반응형이라면 자신의 핸드폰 해상도에 맞게 웹사이트의 컴포넌트가 자동으로 재배치되기 때문에 반응형 웹으로 만들어 놓으시면 더더욱 좋습니다. 저는 BootStrap을 활용하여 간단하게 웹페이지를 제작해봤습니다. (BootStrap에서 반응형 웹을 지원하거든요) BootStrap을 활용하실 분들은 앞선 포스팅을 참조해주세요. 스프링에서 부트스트랩 적용하기 ※반응형웹이란? : 반응형 웹 디자인을 기반으로 다양한 디바이스(PC, 태블릿 PC, 스마트폰, 스..
이번에는 안드로이드로 간단한 드럼을 만들어보도록 하겠습니다. 지금까지 SoundPool로 오카리나와 피아노를 만들어봤는데, Soundpool로 만드는 악기 앱 시리즈의 마지막 버전입니다. SoundPool로 만드는 드럼 앱 좌측 drawable에 드럼 이미지를 삽입합니다. 그다음 res 파일에 오른쪽 클릭하여 새로운 폴더 raw를 만들어줍니다. Directory를 클릭~! raw라고 폴더명을 입력해준 뒤 드럼 소리를 raw폴더 안에 넣어줍니다. 이까지 했으면 이제 소스코드를 입력해보겠습니다. XML 아래 사진과 같이 드럼을 배치하면 됩니다. java package com.example. user.music; import android.content.Intent; import android.media.Au..
공공 데이터 홈페이지라는 것이 있습니다. 국가 혹은 공공기관에서 만들어놓은 정보들을 국민들에게 개방해 둔 것인데 여기서 무료로 제공하는 공공 API를활용하여 쉽고 간단하게 유용한 앱을 만들 수 있습니다. 이번 글에서 공공기관 API를 파싱하고 검색하는 것까지 구현하는 방법에 대해 포스팅하려 합니다 공공기관 API는 아무거나 파싱 해와도 상관없는데 저는 전기차 충전소 정보를 파싱 해왔습니다. 공공 API 신청 및 파싱 & 검색 구현하기 1. 우선 위에 사진에 나와있는 것처럼 차례대로 공공기관 API를 신청해서 승인을 받습니다. 공공데이터를 신청하면 거기에 딸려있는 참고 문서가 있는데 참고 문서에 필수 요청 변수와 파싱 할 때 필요한 여러 가지 정보들이 있으니 꼭 챙겨보세요. https://www.data...
Controller - 메소드 파라미터의 종류 @RequestParam - RequestParam 매핑 1. HTTP 요청 파라미터를 메서드의 파라미터로 전달받을 때 사용 2. 어노테이션이 적용된 파라미터가 String이 아닐 경우 실제 타입에 따라 알맞게 타입 변환 수행 3. 필수가 아닌 파라미터인 경우 required 속성 값을 false로 지정 (기본 값은 true), 값은 null로 저장 4. 필수가 아닌 파라미터인 경우 defaultValue 속성 값으로 기본값을 지정 CookieValue - 쿠키 매핑 1. 쿠키 값을 파라미터로 전달 받을 때 사용 2. 해당 쿠키가 존재하지 않으면 500 응답 에러 코드 전송 3. 쿠키가 필수가 아닌 경우 파라미터와 같이 required 속성의 값을 false..
안드로이드 SOUNDPOOL 메서드를 활용한 피아노 앱을 만들어보았습니다. 완성한 피아노 앱의 모습입니다. SoundPool로 만드는 피아노앱 먼저 좌측 res 파일에 오른쪽 클릭하여 새로운 폴더 raw를 만들어주세요. Directory를 클릭! raw라고 입력해준뒤 피아노소리를 raw폴더안에 넣습니다. 이제 소스코드를 입력할 차례입니다. XML 흰건반위에 검은건반을 올려야하기때문에 위로 중첩이 가능한 FrameLayout을 활용하였습니다.. 또한 버튼 하나하나에 onClick을 주어 자바코드에서 활용 가능하게 만들어주세요. JAVA SoundPool pool; int d1; int d2; int re; int mi; int pa; int sol; int ra; int si; @Override prote..
이번 포스팅에서는 파일 웹상에서 파일 업로드하는 방법에 대해 포스팅하겠습니다. 우선 파일 업로드를 하기 위해서는 cos.jar파일이 필요합니다. 위에 첨부되어있는 cos.jar파일을 위와 같이 WEB-INF -> lib 폴더 안에 넣어줍니다. 아래는 웹페이지에서 파일 업로드하는 예제입니다. 웹에서 파일 업로드하기 fileUploadForm.jsp 파일 업로드 폼 올린 사람: 제목: 파일명1: 파일명2: fileUpload.jsp 업로드 확인 및 다운로드 페이지이동 fileCheck.jsp 올린사람 : 제목 : 파일명1 : 파일명2 : 그런뒤 위와 같이 jsp파일을 3개 만들어 해당 코드를 붙여 넣어줍니다. 실행방법은 FileUploadForm을 띄우고 다음 페이지에서 바로 보이는 a태그를 클릭해주시면 됩니다
자바빈이란? 자신이 사용하고싶은 데이터를 클래스화 시켜 그 클래스에 값을 넣어두고 활용하는 기법을 말합니다.. JavaBean 문법
저번 포스팅에서는 안드로이드와 jsp와 연결/통신하는 방법을 포스팅 했었죠. 이번에는 안드로이드와 서블릿을 연결/통신하는 방법을 소개해드리고자 합니다. 저번 포스팅에서도 알려드렸다시피 안드로이드는 보안 관련 문제로 외부 DB(오라클, MYSQL, 몽고 DB 등)과의 직접적인 연결이 불가능합니다. 그래서 사진과 같은 방식으로 안드로이드와 오라클 사이에 중간다리 역할을 하는 서버가 있어야 하는데 앞선 포스팅에서는 JSP로 중간다리역할을 하는 방법을 알려드렸다면 이번 포스팅에서는 서블릿 방식으로 안드로이드와 오라클을 연결하는 방법에 대해 포스팅하겠습니다. 안드로이드의 통신 값을 서블릿에서 받고 그 통신 값을 오라클에 넣어주는 전체적인 툴은 이전 포스팅과 동일합니다. Spring Server 1. 우선 서버부터..
자바 네트워크 부분을 활용하여 간단하게 서로 말을 주고받을 수 있는 채팅 프로그램을 한번 만들어보았습니다. 첨부파일을 통해 소스를 공유하니 필요하신분들은 다운로드하여 활용하셔도 됩니다. Java로 만드는 간단한 채팅 프로그램 1. 위 압축파일의 압축 해제하여 이클립스에 넣어주세요. 2. 위에있는 키티 사진을 저장한 뒤 MutiClient 27번째 라인에 저장 경로를 써줍니다. ↑ 이 부분입니다. 작동방법 1. 이렇게만 해주면 채팅 프로그램이 잘 작동될것입니다.. 이제 작동방법에 간단히 설명해드릴게요. 우선 서버를 먼저 돌립니다. MulitServer.java를 먼저 실행시켜주시면 됩니다. 실행을 시키면 위와 같이 콘솔창에 서버가 실행되었다는 메시지가 나옵니다. public void init() throw..
이클립스에서 준 값으로 오라클에 값을 넣고(insert) 값을 출력(select)하는 방법을 한번 알아보도록 하겠습니다. 이클립스에서 오라클 데이터베이스에 접근을 하기 위해서는 커넥션 풀 방식을 자주 사용합니다. 커넥션 풀(Connection)이란 객체를 여러 개 생성하여 풀에 담아놓고 필요할때마다 꺼내는 방식입니다. 커넥션 풀의 사용 이유 JDBC를 통해 DB에 연결하기 위해서는 DB드라이버를 로드하고 커넥션 객체를 받아와야 합니다. 하지만 DB에 연결할 때마다 매번 커넥션을 생성하고 드라이버도 로드하려고 하면 굉장히 귀찮고 메모리도 많이 먹을 거예요. (굉장히 비효율적인 코드가 되어버리고 말 것입니다.) 하지만 커넥션 풀을 사용하면 하나의 커넥션을 돌려가면서 사용하기 때문에 이런 비효율적인 작업이 없..
이번 포스팅에서는 안드로이드 스튜디오와 오라클을 연결하는 방법에 대해서 한번 알아보도록 하겠습니다. 안드로이드 스튜디오에 내부 DB인 SQLite와는 직접적으로 바로 연결이 가능하지만 Oracle과 MySQL 같은 외부 DB는 안드로이드에서 직접적으로 접근이 불가능합니다. 보안상의 이유 때문이라고 하네요. 그러므로 위 사진과 같이 JSP 혹은 서블릿등으로 오라클과 통신하기 위해서는 중간 다리를 만들어 줘야 하는데 이번 포스팅에서는 안드로이드를 JSP 서버를 이용하여 오라클과 연결할 수 있는 방법에 대해서 알아보도록 하겠습니다. 안드로이드에서 JSP로 통신 값을 보내고 그 통신 값을 JSP에서 오라클로 넣어주는 방식입니다. 먼저 안드로이드(클라이언트)부터 작업을 시작하도록 하겠습니다. Android Stu..
DB공부를 계속하다 보면 데이터베이스에 생성한 테이블이 너무 많아 정신이 없는 경우가 생깁니다. 저도 첫번째 계정 HR계정에 테이블이 너무 많아 테이블에 작업하기 굉장히 불편했는데요. (어지러워서 눈알이 핑글핑글 돌아갈지경...ㅠㅠ) 이에 새로운 계정을 하나 만들어서 깔끔한 계정에서 작업을 이어나가기로 했습니다. 물론 이미 있는 hr계정을 이용하여 이런 식으로 새 접속을 할 수도 있지만 깔끔하게 새로운 계정을 하나 만들어서 접속하도록 하겠습니다. 하지만 그냥 무턱대고 없는 계정으로 새 접속을 하게 되면 invalid username/password; logon denied라는 메시지가 뜨게 됩니다. 바로 계정이 없어서 생기는 에러 메시지인데 새 접속을 하기 위해서는 새로운 계정을 하나 만들어줘 야합니다...
오라클을 설치받았으면 이클립스와 연결해서 써먹어야겠죠? 이번에는 오라클과 이클립스를 연결하는 방법을 한번 알아보도록 하겠습니다. 오라클과 이클립스 JSP로 서로 연동/통신하기 1. 먼저 오라클과 이클립스를 연동하려면 jar파일이 필요합니다. jar파일은 오라클을 설치한 폴더 lib폴더에 있고. lib폴더는 JDBC안에 있습니다.참고로 저의 lib 경로는 아래와 같습니다. C:\oraclexe\app\oracle\product\11.2.0\server\jdbc\lib 2. 여기서 2번째 jar파일 ojdbc6.jar파일을 복사한 뒤 이클립스 lib폴더에 넣어줍니다. Connection jdbc/OracleDB javax.sql.DataSource Container 3. web.xml 밑에 가셔서 위 코드를..
안드로이드에서는 SoundPool이라는 사운드 함수를 지원합니다. SoundPool이라는 함수는 간단하게 소리를 입혀주는 함수인데, 이것을 이용해 간단한 악기 앱을 만들 수 있습니다. SoundPool로 만드는 오카리나 앱 mainpage.xml StartActivity.java package com.example.samsung.ocarina; import android.app.Activity; import android.content.DialogInterface; import android.content.Intent; import android.os.Bundle; import android.support.v7.app.AlertDialog; import android.view.View; import an..
웹 개발을 하다 보면 웹사이트에 공공기관 api를 파싱 해야 될 상황이 올 때가 있습니다. 저는 부산 여행 웹사이트를 제작하면서 부산 여행지 api를 가지고 와야 하는 부분이 있어 파싱을 하게 되었고, 다른 예로는 홈페이지에 날씨정보를 띄우고 싶어 기상청 정보를 들고 오고 싶을 때(?) 정도가 있겠군요. 이번 웹사이트를 만들면서 제일 어려웠던 부분이 파싱부분이였습니다. 제가 며칠 동안 밤을 지새우면서 알아낸 코드를 공유합니다. JSP에서 공공기관 API를 노드 형식으로 파싱 하는 코드입니다. 웹에서 공공기관 api파싱하기 위에 보이시는 strUrl에다가는 자신이 파싱하고싶은 공공기관 api의 URL을 넣으면 됩니다. (API를 신청하면 딸려오는 기술문서를 참고) 이렇게 파싱 해서 받아온 정보를 맵(Map..
1. input type = "text" , input type = "password" 이름 : 비밀번호 : 2. input type = "radio" 치킨 피자 짜장면 짬뽕 3. input type = "checkbox" CPU Memory 하드디스크 CDROM GRAPIC_CARD 4. select option 가장 재미있는 것을 선택해 주세요. HTML 자바스크립트 CSS HTML 자바스크립트 CSS 5. input type ="button" ,input type = "submit", input type = "reset" 6. input type ="image" 이미지: 7. input type ="file" 파일명:
대구 경북대학교에서 열리는 제4회 대한민국 SW융합 해카톤 대회를 다녀왔습니다. 저는 부산에 사는 닝겐이기에 꼭두새벽에 일어나 버스를 타고 동대구 버스터미널로 향했습니다. 부산에서 대구에서도 그리 멀지 않고 대구시외버스터미널에서 경북대까지도 택시로 기본요금거리이기 때문에 생각보다 일찍 도착했습니다. 아니 좀 많이 일찍 도착했습니다. 2시에 행사 시작인데 12시도 안돼서 도착해버렸다는....... 새벽에 좀 더 잘 걸 그랬어요 ㅠㅠㅠㅠㅠㅠㅠ 경북대 으리으리한 건물이 보입디다... 네 바로 저기가 저희가 대회하는 건물입니다. 경북대에서는 가장 신축건물인거 같더라고요 건물 내부 사진도 굉장히 멋있었는데 사진찍는걸 깜빡했습니다...ㅠㅠ 도착해보니 생각보다 큰 대회더라구요 가볍게 생각하고 갔는데 생각보다 사람도 ..
웹사이트를 만들다 보면 내가 쓴 글을 다른 사람이 스크랩하지 못하게 만들고 싶을 때 유용하게 사용할 수 있는 방법인 마우스 오른쪽 클릭과 내용 선택(드래그)을 막는 방법을 소개합니다. 마우스 우클릭 막기/ 내용 선택 막기 마우스 오른쪽 버튼과 내용 선택 막기 마우스 오른쪽 버튼과 내용 선택 막기 마우스로 오른쪽 버튼을 클릭하거나 드래그 해서 내용을 선택해 보세요 접속자가 스크랩을 시도할 경우 위와같은 경고창을 띄워줍니다.
웹사이트를 만들다 보면 현재시간을 간단하게 사용자들에게 보여주고 싶을 경우가 있는데, 그때 유용하게 쓸 수 있는 함수가 currentDate 함수입니다. currentDate를 활용한 현재시간 불러오기 현재시간 불러오기 위와 같은 텍스트형식으로 현재시간을 간단하게 웹사이트에 표시할 수 있습니다.
앞서 포스팅한 자바스크립트로 현재시간 불러오기의 응용 버전입니다. 이번에는 회원이 웹사이트에 접속한 후 몇 초가 지났는지 알려주는 예제입니다. [JavaScript] currentDate를 활용한 현재시간 불러오기 홈페이지 접속한시간 알려주기 Insert title here 위와 같이 사이트에 접속한 후 지난 시간이 뜨게 됩니다.
이번 포스팅에서는 스프링 프로젝트에 느낌표가 뜨는 에러를 해결하는 방법에 대해 알아보려 합니다. 저도 처음 스프링을 설치하고 프로젝트를 만들었는데 느낌표가 떠서 굉장히 애먹었습니다. 스프링 프로젝트를 만드니까 이런식으로 ! 스프링 프로젝트에 느낌표가 떳었습니다. 지금 와서 깨달았는데 아마 라이브러리를 제대로 찾지 못해 생기는 현상 같습니다. 스프링 프로젝트 느낌표 에러 해결 이걸 해결해주는 방법은 굉장히 간단합니다. 먼저 User폴더로 가주세요. User폴더에 보시면 위 사진과 같이. m2라는 폴더가 있는데 이 폴더가 라이브러리를 모아두는 그런 곳입니다. 이 폴더를 삭제해주면 됩니다..(이클립스를 끈 상태에서 삭제하시는 것을 추천드립니다. 충돌 날수도 있으니..) 그런 뒤 스프링 프로젝트를 다시 실행시키..
이번에는 자바스크립트를 활용해서 배열의 Push Pop Sort Reverse까지 구현해보도록 하겠습니다. 자바스크립트로 배열의 Push, Pop, Sort 구현하기 현재 배열의 값: 실행화면 배열에 값을 추가하고 여러 가지 기능을 사용해보시길 바랍니다.
자바스크립트를 활용하여 공학용 계산기를 만들어보도록 봤습니다. 자바스크립트를 공부하는 사람들이라면 계산기 정도는 만들 수 있어야 한다는 말에 한번 만들어 본 계산기 예제입니다. 자바스크립트 공학용 계산기 소스 완성한 계산기의 모습입니다. 유용하게 사용하세요.
이번 포스팅은 HTML을 활용한 회원가입 양식에다가 SUBMIT버튼을 누르면 전자메일도 구현되는 기능을 한번 구현해보도록 하겠습니다. 전자메일 기능은 폼 태그에서 mailto 함수를 걸어서 처리하였고, 회원가입 양식은 html으로 제작하였습니다. Form태그 회원가입양식 메일 보내기 회원 기본 정보 아이디 : 4~12자의 영문 대소문자와 숫자로만 입력 비밀번호 : 4~12자의 영문 대소문자와 숫자로만 입력 비밀번호확인 : 4~12자의 영문 대소문자와 숫자로만 입력 메일주소 : 예)[email protected] 개인 신상 정보 주민등록번호 : 예)1234561234567 생일 : 년 1 2 3 4 5 6 7 8 9 10 11 12 월 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1..
세션을 사용하다 보면 반드시 동일한 세션 이름으로 세션을 사용할 경우가 가끔 있습니다. 대표적인 예가 체크박스나 연속해서 값을 저장할 경우를 예로 들 수 있겠군요. 이럴 경우에 Session을 ArrayList나 vector에 담아서 사용할 수 있게 만들어줘야 합니다. 이런 방식을 사용하면 좀 더 효율적으로 Session값을 효율적으로 관리할 수 있겠죠? Session은 웹페이지가 꺼지지 않는 한 존속되기에 굉장히 활용성이 높은 방식입니다. 이번 포스팅에서는 Session을 ArrayList로 사용하는 방법에 대해 알아보겠습니다. Session을 ArrayList로 사용하기 선언부분 출력 부분 //리스트를 새로 생성해줘도 이어서 추가하게된다.
웹사이트를 만들다 보면 웹사이트 사용자를 팝업창 클릭 시 이전 페이지로 보내야 할 때가 종종 있습니다. 이럴 때 유용하게 사용할 수 있는 예제입니다. 예제는 alert창을 클릭할 시 이전 페이지로 돌아가는데, 다르게 사용할 수도 있습니다. 좀 더 응용하여 이전 페이지가 아니라 href.location을 이용하여 자신이 원하는 곳으로도 보내는 것도 가능합니다. alert창을 누르면 이전화면으로 되돌아가기 //body에 onload해준다.
스프링 프레임워크란? 스프링 프레임워크(Spring Framework)는 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크로서 동적인 웹사이트를 개발하기 위한 여러 가지 서비스를 제공하고 있는 프레임 워크이며 대한민국 공공기관의 웹 서비스 개발 시 사용을 권장하고 있는 전자정부 표준 프레임워크의 기반 기술로서 쓰이고 있습니다. 현시점 실무에서 굉장히 많이 쓰이고 있는 프레임워크입니다. 설치방법에는 크게 두가지가 있습니다. 첫 번째 방법 : 스프링 설치경로 바로가기 스프링 사이트에 가서 다운로드하는 방법. 두 번째 방법 : 이클립스에서 스프링 플러그인을 설치하는 방법. 이 두 가지 방법 중에 두 번째 방법이 좀 더 쉽고 간단하니 설치하시려고 하는분들은 두번째 방법을 사용하면 좀 더 쉽게 스프링을 설치할 ..
이번 포스팅에서는 Starting Tomcat v Server at localhost has encountered a problem이라는 톰캣 에러의 해결방법에 대해 알아보겠습니다. 웹 개발을 진행하다 보면 톰캣이 계속 말을 안 들어 난감한 상황이 참으로 많이 생기는데 그중에서 가장 많이 보게 되는 에러 메시지 중 하나가 Starting Tomcat v Server at localhost has encountered a problem라는 메시지입니다. 이 오류가 뜨는 이유는 여러 가지가 있겠지만 톰캣의 포트를 이미 어떤 프로그램이 사용하고 있거나 톰캣이 중복 실행되었을 경우가 대표적입니다. 'Starting Tomcat Server at localhost' 에러 해결방법 이 메시지를 쭉 읽어보시면 포트 ..
오라클이란? 오라클이란 미국의 오라클에서 제작한 데이터베이스 관리시스템이며 현재 유닉스 체제에서 가장 많이 사용되는 DBMS입니다. 오라클 설치 / 다운로드 1. 우선 오라클 다운로드 사이트로 접속해주세요. 오라클 설치 링크 바로가기 접속하게 되면 위와 같은 사이트가 나타나게 될 텐데 여기서 동의란에 체크하고, 자신이 원하는 버전을 다운로드해주면 됩니다. 저는 Windows상에서 오라클을 운영할 것이므로 첫 번째 파일을 선택하도록 하겠습니다. 2. 자신이 다운로드 할 버전을 선택하면 로그인을 하라고 하는 창이 뜹니다. 로그인해야만 다운로드를 할 수 있기에 회원이 아닌 사람들은 꼭 회원가입을 해야 합니다. 로그인을 하면 다운로드가 진행됩니다. 오래 걸리는군요....ㅠㅠㅠ 3. 파일을 다 받았으면 받은 파일..
이번 포스팅에서는 저번 포스팅에서 받았던 오라클의 HR계정을 Unlock 시켜주는 작업을 한번 진행 보도록 하겠습니다. HR계정이란 오라클에서 기본적으로 제공해주는 학습용 계정인데. HR계정 말고도 여러 개 있습니다. 하지만 이 HR계정은 기본적으로 잠겨있어서 HR계정을 사용하기 위해서는 계정을 Unlock 시켜주는 작업을 진행해야 합니다. 우선 이 포스팅은 오라클을 성공적으로 설치했다는 것을 전제로 합니다. 오라클 설치가 안되신분들이라면 아래 링크된 글을 참조하여 오라클을 설치해주시기 바랍니다. 오라클 설치하기 오라클 HR계정 사용하기 1. 먼저 Cmd창에서 sqlplus 라는 문구를 입력한 뒤 Enter를 누릅니다. 그런 뒤 HR계정으로 접속하려고 하면 the account is locked라는 문구..
이번 포스팅은 오라클을 좀 더 쉽게 사용할 수 있도록 만들어주는 오라클 Developer를 설치하는 방법에 대해서 알아보도록 하겠습니다. 오라클 디벨로퍼의 설치는 정말 간단합니다. 압축파일만 해제시키면 바로 실행시킬 수 있어요 오라클 Developer 설치하기 1. 압축파일은 오라클 사이트에서 다운로드를 하아야 합니다. 오라클 디벨로퍼 설치경로 바로가기 해당 사이트로 접속을 해주세요. 2. 접속해주신 뒤 동의를 하고 설치 파일을 다운로드하여줍니다. 이미 JDK가 설치되어있는 사람은 두 번째 설치가 안 된 사람은 첫 번째를 눌러주세요. 저는 컴퓨터에 JDK가 이미 설치되어있으므로 2번째있는 설치 파일을 다운로드하도록 하겠습니다. 그럼 열심히 설치가 될 것입니다. 설치가 완료되면 압축을 풀어주세요. 3. 압..
웹 개발을 진행하다 보면 여러 가지 오류들이 많이 납니다. 이번 포스팅에서는 String cannot be resolved to a type라는 오류의 해결방법에 대해 알아보도록 하겠습니다. String cannot be resolved to a type오류는 Jsp상에서 자바 코드를 입력할 수 없을 때 발생하는 오류입니다. String뿐만이 아니라 자바에서 제공하는 모든 클래스에 빨간 줄이 뜨고 있을 거예요. 아마 이클립스가 빌드할 때 JDK를 인식하지 못하고 있는 듯합니다. 이 오류가 뜬다면 가장 먼저 JDK가 제대로 작동하고 있는지 확인해보아야 합니다. 문구를 읽어보니 역시나 이클립스상에서 자바를 읽지 못하고 있군요. cannot be resolved to a type 오류해결 방법 1. 이렇게 오..
안드로이드 스튜디오란? 2013년 5월 16일 구글 컨퍼런스에서 구글의 제품 관리자인 Ellie Powers에 의해서 발표되었으며, 안드로이드 스튜디오는 안드로이드를 위한 공식 통합 개발환경입니다. 예전에는 이클립스로도 안드로이드 개발을 많이 진행했지만 요새는 많은 개발자들이 안드로이드 스튜디오를 통해 안드로이드 앱 개발을 하고 있습니다. 안드로이드 스튜디오 설치 / 다운로드 1. 안드로이드 스튜디오는 안드로이드스튜디오 설치 링크 바로가기에서 다운로드할 수 있습니다. 해당 경로에 가서 빨간 박스 안의 다운로드 버튼을 눌러주세요. 참고로 크롬으로 다운을 받아야 합니다. 익스플로러로 다운로드하면 다운이 잘 안 되니, 필히 크롬으로 다운로드하시길.. 2. 안드로이드 스튜디오 설치방법은 별거 없습니다. 계속 N..
아파치 톰캣이란? 아파치 톰캣이란 아파치 소프트웨어 재단에서 개발된 서블릿 컨테이너(또는 웹 컨테이너)만 있는 웹 애플리케이션입니다. 이클립스에서 웹 개발을 진행할 때 설치해야 할 거의 필수 소프트웨어라고 할 수 있습니다. 요새 실무에서는 웹을 만들 때는 웬만하면 거의 톰캣을 돌리더라고요. 아파치 톰캣 다운로드 1. 우선 아래에 링크된 아파치 톰캣 사이트로 들어갑니다. 아파치 톰캣 홈페이지 링크 바로가기 2. 들어가게 되면 위 사진과 같은 사이트가 보이게 될 텐데. 여기서 왼쪽 메뉴바에 보면 3. Download라는 메뉴가 있습니다. 여기서 자신이 원하는 톰캣 버전을 선택해주시면 됩니다.. 저는 톰캣 9 버전을 설치해주도록 하겠습니다. 클릭~! 4. 설치하고 싶은 버전을 선택하고 스크롤을 내리시면 빨간 ..
이번 포스팅으로는 저번에 설치했던 아파치 톰캣을 이클립스와 연동하는 방법에 대해서 알아보겠습니다. 1. 이클립스를 켜서 하단에 Server라는 탭에 다음과 같은 문구를 확인할 수 있죠. 아직 아무 서버도 없다는 것인데, 이 문구를 클릭해주세요. 그 다음 자신이 깔아놓은 톰캣 버전을 클릭하고 Next를 눌러주면 됩니다. 2. 여기서 자신이 깔아놓은 톰캣 경로를 설정해주고 Finish를 누르면 됩니다. 3. 톰캣이 연동된것을 볼 수 있습니다.
JDK란? 자바 개발 키트(Java Development Kit)의 줄임 말으로써 오라클에 의해 바이너리 제품으로 제공됩니다. 자바 플랫폼의 등장 이래 지금까지 가장 널리 사용되는 소프트웨어 개발 키트(SDK)이며, 자바를 사용하기 위해서는 기본적으로 JDK가 설치되어 있어야만 사용이 가능합니다. JDK 설치 / 다운로드 Java는 원래 Sun사의 제품이었으나, 오라클이 합병하면서 이제는 오라클의 것이 되었습니다. Jdk는 오라클 홈페이지에서 설치하실 수 있습니다. (오라클 홈페이지) 아래의 주소로 들어가주셔서 다운로드해주시기 바랍니다. JDK설치 링크 바로가기 1. 홈페이지에 들어가시면 위와같은 화면이 나올 텐데 , 여기서 왼쪽 빨간색 박스로 표시되어있는 이미지를 클릭 2. 여기서 동의 눌러주고 자신의..
이클립스란? 이클립스는 프로그래밍을 할 때 코드를 작성하고, 저장하고 컴파일 및 디버깅을 도와주는 통합 개발 환경입니다. 가장 많이 쓰이는 자바 개발 툴이며, 자바뿐만이 아니라 이클립스로 웹, 스프링, 모바일도 개발할 수 있습니다. 강력한 기능을 가지고 있지만, 무료로 배포되고 있기 때문에 실무에서도 많이 쓰이고 있습니다. 단점이 있다면 프로그램이 살짝 무거운 편입니다. 메모리를 많이 먹기 때문에 어느 정도 컴퓨터 성능이 받쳐줘야 합니다. 이클립스 설치 / 다운로드 1. 우선 아래 경로로 들어가셔서 이클립스 홈페이지로 들어갑니다. 이클립스 홈페이지 링크 바로가기 2. 빨간 박스 안에 있는 다운로드를 클릭해주셔서 설치 링크로 들어갑니다. 3. 여기까지 들어왔으면 좌측 하단에 자동으로 이클립스 설치 파일이 ..
오늘은 기분이 좋아요 여러분~~ 왜냐하면 제가 드디어 쓰고있던 구닥다리폰을 청산하고 삼성의 신제품중에서도 신제품인 샤랄랄라 삼성 갤럭시 노트8로 갈아타는 날이거든요 ㅎㅎㅎ 오야쓰~~!!! 색상은 미드나..
안녕하세요 이번에는 엊그제 개통한 저의 짱짱한 갤럭시 노트8의 강화후기를 남기고자 합니다. 삼성 노트8 정품케이스는 총 다섯가지의 종류의 케이스가 있는데 저는 그중에서 프로텍티브 스탠딩커버를 골랐습니..
대학을 졸업하고 서울에 온 순간부터 세상이 다르게 보이기 시작했다. 대학과 부모라는 울타리가 사라지고 책임감이라는 의무가 생기는 순간 수많은 고민들이 생겨났다. 불확실한 미래와 높아져만가는 집값, 그리..
나는 똑똑한 사람들을 동경해왔다. 그들의 지식을 배우고 싶었고 그것들을 배우기 위해 그들과 친구가 되려고 노력해왔다. 지금은 똑똑한 사람들을 많이 안다. 그런 사람들을 많이 안다는 것은 내 인생에 있어 큰..
나는 흔히 말하는 엘리트 코스를 밟지 못하였다. 그렇기에 이 세상이 살아가기에는 남들보다 더욱더 많은 노력을 필요로 한다. 어릴 적에는 공부보다는 그저 인생을 즐기는 것이 재미가 있었다. 매일매일 새로운..
몇 년 전까지만 해도 나는 삶을 살아가는데 있어 안전지향적 테크트리만을 고집했다. 조금이라도 위험요소가 있으면 회피하고 성공 가능성이 최대한 높은길로만 나아갔고 이것이 내 방식이며 또한 옳은 길이라..
일을 하지 않고도 살아갈 수 있을까? 우리가 살고 있는 자본주의 세계의 금융시스템에는 이자라는 시스템이 있다. 이 시스템으로 인해 돈은 언제나 어디서나 돈을 벌어들이고 있다. 그렇기에 충분한 돈이 있다는것..
어릴 적 나는 부자가 되고 싶다는 막연한 꿈이 있었다. 예전에는 막연히 좋은 집에서 살고 싶어서 좋은 차를 타고 싶어서 부자가 되고자 하였다면 지금은 그 이유가 좀 더 명확해졌다. 지금 나는 자유로운 삶을 살..
오늘은 날씨가 너무 따뜻했다. 드디어 봄 내가 제일 좋아하는 계절이 왔다. 상쾌한 주말의 아침 이른 시간이라 거리에 인기척은 없지만 따스한 봄의 기운과 기분 좋은 햇살 그리고 적당히 시원한 바람에 기분이..
별다른 노력도 하지 않는 저 사람은 행운으로 큰돈을 벌고 나는 또 제자리걸음이다. 요행을 바라지 말라하였건만 요행을 바라고 싶다. 행운은 노력하는 자만이 얻을 수 있는 것이라 부산물쯤이라 생각했지만 노력..
새벽 칼바람이 매섭다. 조금 뒤면 올해의 마지막 해가 뜰 것이다. 생각할 것이 많은지 오늘따라 유난히 잠이 오지 않는다. 잡다한 생각이 많이 드는 새벽이다. 남들보다 멋지게 살고 싶었다. 남들보다 특별한 삶을..
어릴 적 나는 외향적인 사람이 되고자 노력했다. 그래야만 사회에서 더 대접받을 줄 착각하고 살았다. 서울에 와서 나의 모습은 많이 바뀌었다. 낯선 공간에서 또다시 인간관계를 쌓아가기에는 나 자신이 지쳤고..
일요일이 끝난 뒤 월요일 새벽 잠이 오지 않는다. 『이번 한주 동안은 어떻게 버텨야 할까?』라는 생각이 머릿속을 맴돌아 잠들 수가 없다. 월요일 새벽만 되면 항상 반복되는 고통이다. 매주 월요일은 밤을 새우..