2022년 1월 14일 금요일

 오라클 SQL Developer, SQL디벨로퍼 설치, 오라클 클라이언트 설치, 오라클교육, SQL교육, 오라클학원, SQL학원, ORACLE교육





6. Oracle Database Sql Devleoper

6.1. 다운로드 사이트 접속



https://www.youtube.com/watch?v=R1zpurPO218




브라우저를 열고 다음 키워드로 검색하여 다운로드 사이트로 이동합니다.


oracle sql developer download

https://www.oracle.com/tools/downloads/sqldev-downloads.html

불러오는 중입니다...




6.2. 다운로드

Windows 64-bit with JDK 8 included 항목에서 Download 링크를 클릭하여 다운로드 합니다.


6.3. 압축해제 및 기동

다운받은 파일의 압축을 해제합니다. sqldeveloper 실행파일을 클릭하여 기동합니다.


사진 삭제링크

사진 설명을 입력하세요.

6.4. 접속계정 생성

새 접속을 클릭합니다.


사진 삭제링크

사진 설명을 입력하세요.


접속 이름은 관리목적으로 사용하는 용도일 뿐이므로 자유롭게 지정할 수 있습니다.

scott/tiger 계정정보를 설정합니다.

SID 항목에 설치 시 지정한 DB이름을 입력합니다.


사진 삭제링크

사진 설명을 입력하세요.


6.5. 연결 테스트

위 설정을 다 마친 후 "테스트" 버튼을 클릭하여 "상태: 성공"이라는 결과가 표시되는지 확인합니다.


https://www.youtube.com/watch?v=k7Btzj3aZms&list=PLxU-iZCqT52Dlz0zGgFiq1mBz21arFUHS&index=1&t=2s



6.6. 접속

"접속" 버튼을 클릭하여 접속합니다.


6.7. 테이블 검색

테이블 정보를 확인해 봅니다.


사진 삭제링크

사진 설명을 입력하세요.


6.8. 쿼리 테스트

간단한 쿼리를 실행해 테스트합니다. 우선 폰트가 작으니 원하는 크기로 바꾸어 보겠습니다.


도구 > 환경설정 > 코드 편집기 > 글꼴

사진 삭제링크

사진 설명을 입력하세요.


다음 쿼리를 실행하여 결과가 표시되는지 확인합니다.

사진 삭제링크

사진 설명을 입력하세요.


쿼리를 실행합니다.

사진 삭제링크

사진 설명을 입력하세요.


지금까지 간단하게 오라클이 제공하는 데이터베이스 GUI 툴인 Sql Developer 설치 및 사용법을 살펴보았습니다.


#오라클, #SQLDeveloper, #SQLDevelper설치, 오라클, SQLDeveloper, SQLDevelper설치,



2022년 1월 13일 목요일

자바채팅소스, JAVA윈도우기반채팅, 콘솔기반채팅, JAVA CHATTING소스, 동영상

 





윈도우 채팅은 첨부파일 참조하시구요,

콘솔기반 채팅 예제도 영상 및 아래소스 참조하세요~


파일 첨부자바윈도우채팅예제 1.zip


서버

클라이언트가 접속을 할 때 accept를 하면 클라이언트 상대용 Socket이 만들어 지는데 이를 자바의 ArrayList 에 저장해주고 글을 쓸 때 현재 상대하고 있는 하나의 클라이언트에만 쓰는 것이 아니라 ArrayList에 보관중인 모든 Socket을 꺼내 글을 씁니다.


클라이언트

수시로 날아오는 메시지 처리를 위해 글을 읽는 부분을 쓰레드로 빼서 처리합니다.

이렇게 하지 않으면 글을 쓰고 있을 때 상대방이 던지는 메시지를 리얼타임으로 받지 못하고 글을 다 쓴 후 받게 된다.


사진 삭제

사진 설명을 입력하세요.



package chat;


import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;

import java.net.ServerSocket;

import java.net.Socket;

import java.util.ArrayList;


class ConsoleChatServer extends Thread {

protected Socket sock;

private static ArrayList<Socket> clients = new ArrayList<Socket>(5);


// ------------------------------------

// Constructor

// ------------------------------------

ConsoleChatServer(Socket sock) {

this.sock = sock;

}


// ------------------------------------

// ArrayList에서 클라이언트 소켓 제거

// 접속 후 나가버리는 경우 클릉 쓸 때 오류가 발생

// ------------------------------------

public void remove(Socket socket) {

for (Socket s : ConsoleChatServer.clients) {

if (socket == s) {

ConsoleChatServer.clients.remove(socket);

break;

}

}

}


// ------------------------------------

// Thread 실행 메소드

// ------------------------------------

public void run() {

InputStream fromClient = null;

OutputStream toClient = null;


try {

System.out.println(sock + ": 연결됨");


fromClient = sock.getInputStream();


byte[] buf = new byte[1024];

int count;

while ((count = fromClient.read(buf)) != -1) {

for (Socket s : ConsoleChatServer.clients) {

if (sock != s) {

toClient = s.getOutputStream();

toClient.write(buf, 0, count);

toClient.flush();

}

}

System.out.write(buf, 0, count);

}

} catch (IOException ex) {

System.out.println(sock + ": 에러(" + ex + ")");

} finally {

try {

if (sock != null) {

sock.close();

// 접속 후 나가버린 클라이언트인 경우 ArrayList에서 제거

remove(sock);

}

fromClient = null;

toClient = null;

} catch (IOException ex) {

}

}

}


// ------------------------------------

// 채팅 서버 메인

// ------------------------------------

public static void main(String[] args) throws IOException {

ServerSocket serverSock = new ServerSocket(9999); // 9999번 포트에 서버생성

System.out.println(serverSock + ": 서버소켓생성");

while (true) {

Socket client = serverSock.accept();

// 접속한 클라이언트 상대용 Socket을 ArrayList에 저장

clients.add(client);

//---------------------------- Thread Start

// 쓰레드는 run 메소드에서 accept로 만들어진 Socket을 이용하여

// InputStream, OutputStream을 이용하여 글을 읽거나 쓴다.

// -----------------------------------------------

ConsoleChatServer myServer = new ConsoleChatServer(client);

myServer.start();

}

}

}



package chat;


import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;

import java.net.Socket;


//----------------------------------

// 서버에서 보내오는 값을 받기 위한 쓰레드

//----------------------------------

class ServerHandler extends Thread {

Socket sock = null;


public ServerHandler(Socket sock) {

this.sock = sock;

}


public void run() {

InputStream fromServer = null;

try {

fromServer = sock.getInputStream();


byte[] buf = new byte[1024];

int count;


while ((count = fromServer.read(buf)) != -1)

System.out.write(buf, 0, count);


} catch (IOException ex) {

System.out.println("연결 종료 (" + ex + ")");

} finally {

try {

if (fromServer != null)

fromServer.close();

if (sock != null)

sock.close();

} catch (IOException ex) {

}

}

}

}


//------------------------------

// 클라이언트 메인

//------------------------------

public class ConsoleChatClient {

public static void main(String[] args) throws IOException {

Socket sock = null;

try {

sock = new Socket("localhost", 9999);

System.out.println(sock + ": 연결됨");

OutputStream toServer = sock.getOutputStream();


// ---- 서버에서 보내오는 값을 받기위한 쓰레드

ServerHandler chandler = new ServerHandler(sock);

chandler.start();


byte[] buf = new byte[1024];

int count;

// ---- 콘솔에서 읽은 값을 서버에 보냄

// 키보드 입력을 바이트 단위로 읽어 buf 라는 바이트배열에 기록 후 읽은 바이트수를 리턴

// 읽을것이 없는 경우 read 메소드는 대기하고 Ctrl + C등 눌러 종료하면 -1이 리턴한다.

// 스트림의 끝인 경우 -1을 리턴한다.

while ((count = System.in.read(buf)) != -1) {

toServer.write(buf, 0, count);

toServer.flush();

}

} catch (IOException ex) {

System.out.println("연결 종료 (" + ex + ")");

} finally {

try {

if (sock != null)

sock.close();

} catch (IOException ex) {

}

}

}

}





#자바동영상, #JAVA동영상, #자바채팅, #JAVA채팅, #자바채팅프로그램, #채팅소스, #자바채팅소스, #자바멀티쓰레드, #자바채팅예제, #채팅소스다운, #JAVA채팅소스, #자바채팅동영상, #자바채팅영상, #자바강의, #자바강좌, #자바교육,


#자바채팅, #채팅예제, #자바소켓, #자바윈도우채팅, #자바교육, #JAVA채팅, #JAVA채팅예제


자바채팅, 채팅예제, 자바소켓, 자바윈도우채팅, 자바교육, JAVA채팅, JAVA채팅예제




2022년 1월 10일 월요일

Spring AOP 동영상, 자바 스프링 AOP, HelloWorld, 충고, 포인트컷, Advice, Pointcut, 동영상강의, 자바학원, 스프링학원, 자바교육, 스프링교육, JAVA교육, 자바동영상, Spring

 Spring AOP 동영상, 자바 스프링 AOP, HelloWorld, 충고, 포인트컷, Advice, Pointcut, 동영상강의, 자바학원, 스프링학원, 자바교육, 스프링교육, JAVA교육, 자바동영상, Spring















#스프링AOP, #AOPHelloWorld, #스프링충고, #포인트컷, #Advice, #Pointcut, #자바동영상, #스프링동영상



(C#교육동영상)C# ADO.NET 실습 ODP.NET/ODAC 설치 오라클 함수 호출 실습, C#학원, WPF학원, 닷넷학원, 자바학원

  (C#교육동영상)C# ADO.NET 실습  ODP.NET/ODAC 설치  오라클 함수 호출 실습, C#학원, WPF학원, 닷넷학원, 자바학원 https://www.youtube.com/watch?v=qIPU85yAlzc&list=PLxU-i...