for (String str : overlist) {

if (!urllist.contains(str)) {

urllist.add(str);

}

}


짜잘짜잘

'JAVA > 자바' 카테고리의 다른 글

자바 마우스커서 움직이면 위치파악  (0) 2015.06.22
자바 한글인코딩  (0) 2015.06.11
jsoup 서원대학교 연혁페이지 파싱  (0) 2015.05.08
자바 URL주소로 이미지 저장  (0) 2015.05.08
자바 쓰레드 Runnable  (0) 2015.03.19
블로그 이미지

왕왕왕왕

,

package jsoupking;


import java.io.File;

import java.io.IOException;

import java.io.PrintWriter;

import java.lang.reflect.Array;

import java.util.ArrayList;

import java.util.LinkedList;


import org.jsoup.Jsoup;

import org.jsoup.nodes.Document;

import org.jsoup.nodes.Element;

import org.jsoup.select.Elements;


public class urlmng {


public static void main(String[] args) {

// TODO Auto-generated method stub

// 서원대학교 연혁 페이지 주소

String url = "http://www.seowon.ac.kr/web/kor/intro_b_01";

try {

// 도큐먼트에 해당url을 연결하여 넘겨줌

Document doc = Jsoup.connect(url).get();

// dl.history-list하위에 dt태그를 순차적으로 읽어옴

Elements elsimage = doc.select("dl.history-list dt");

// dl.history-list하위에 li태그를 순차적으로 읽어옴

Elements elsyear = doc.select("dl.history-list li");


// 디렉터리 없다면 생성

File dir = new File("C:/", "서원대학교파싱");

if (!dir.exists()) {

dir.mkdir();

}

// 생성된 디렉터리로 파일생성

PrintWriter pw = new PrintWriter("C:/서원대학교파싱/연혁페이지파싱1.txt");


LinkedList<String> nlist = new LinkedList<String>();

for (Element el : elsimage) {

// 도메인 + dt태그 (하위에 img태그 속성src를 읽어옴) 파일에 write

if (!nlist.contains("http://www.seowon.ac.kr"

+ el.getElementsByTag("img").attr("src")) == true) {

nlist.add("http://www.seowon.ac.kr"

+ el.getElementsByTag("img").attr("src")+ " " +                                     el.getElementsByTag("img").attr("alt"));

}

}

for (Element el1 : elsyear) {

if (!nlist.contains(el1.text()) == true) {

if(el1.elementSiblingIndex() ==0){

nlist.add("");

}

nlist.add(el1.text());

}

}

while(nlist.peek() != null){

pw.println(nlist.poll());

}

pw.close();

// dl.history-list하위로 li태그가 존재함 li태그 하위에 존재하는 것들 모두가져옴


} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}



'JAVA > 자바' 카테고리의 다른 글

자바 한글인코딩  (0) 2015.06.11
자바 리스트 중복제거하는법 contains  (0) 2015.05.28
자바 URL주소로 이미지 저장  (0) 2015.05.08
자바 쓰레드 Runnable  (0) 2015.03.19
자바 쓰레드 Thread  (0) 2015.03.19
블로그 이미지

왕왕왕왕

,

//이미지 주소 

String imagePath = "http://www.seowon.ac.kr/html/themes/kor/img/about/2_1_1960.gif";

//버퍼이미지 변수 정의

BufferedImage image = null;

try {

//버퍼이미지에 경로에 이미지를 읽어서 넣음

image = ImageIO.read(new URL(imagePath));

//이미지주소의 맨끝부분에 파일이름을 자름

String fileNm = imagePath.substring(imagePath.lastIndexOf("/") + 1);

//저장할 디렉터리와파일명 생성

File file = new File("C:/save/"+fileNm);

//해당경로로 gif형식의 이미지파일을 저장

ImageIO.write(image, "gif", file);

'JAVA > 자바' 카테고리의 다른 글

자바 리스트 중복제거하는법 contains  (0) 2015.05.28
jsoup 서원대학교 연혁페이지 파싱  (0) 2015.05.08
자바 쓰레드 Runnable  (0) 2015.03.19
자바 쓰레드 Thread  (0) 2015.03.19
자바 쓰레드 기초  (0) 2015.03.19
블로그 이미지

왕왕왕왕

,

package runnable;

import java.util.ArrayList;

public class Test implements Runnable {
 int seq;

 public Test(int seq) {
  this.seq = seq;
 }

 public void run() {
  System.out.println(this.seq + "thread run!!");
  try {
   Thread.sleep(1000);

  } catch (Exception e) {
   e.printStackTrace();
  }
  System.out.println(this.seq + "thread stop!!");

 }

 public static void main(String[] args) {
  ArrayList<Thread> thread = new ArrayList<Thread>();

  for (int i = 0; i < 10; i++) {
   Thread test = new Thread(new Test(i));
   test.start();
   thread.add(test);
  }
  for (int i = 0; i < thread.size(); i++) {
   Thread t = thread.get(i);
   try {
    t.join();
   } catch (Exception e) {
    e.printStackTrace();
   }
  }
  System.out.println("main stop");
 }
}

 

Thread를 extends 하던 것에서 Runnable을 implements 하도록 변경되었다. (Runnable 인터페이스는 run 메소드를 구현하도록 강제한다.) 그리고 Thread 를 생성하는 부분을 다음과 같이 변경했다.

 

Thread의 생성자로 Runnable 인터페이스를 구현한 객체를 넘길 수 있는데 이 방법을 사용한 것이다. 이렇게 변경된 코드는 이 전에 만들었던 예제와 완전히 동일하게 동작한다. 다만 인터페이스를 이용했으니 상속 및 기타 등등에서 좀 더 유연한 프로그램으로 발전했다고 볼 수 있겠다.

'JAVA > 자바' 카테고리의 다른 글

jsoup 서원대학교 연혁페이지 파싱  (0) 2015.05.08
자바 URL주소로 이미지 저장  (0) 2015.05.08
자바 쓰레드 Thread  (0) 2015.03.19
자바 쓰레드 기초  (0) 2015.03.19
자바 클라이언트 기초소스  (0) 2015.03.19
블로그 이미지

왕왕왕왕

,

package thread;

import java.util.ArrayList;

public class Test extends Thread {
 int seq;

 public Test(int seq) {
  this.seq = seq;
 }

 public void run() {
  System.out.println(this.seq + "thread run!!");
  try {
   Thread.sleep(1000);

  } catch (Exception e) {
   e.printStackTrace();
  }
  System.out.println(this.seq + "thread stop!!");

 }

 public static void main(String[] args) {
  ArrayList<Thread> thread = new ArrayList<Thread>();

  for (int i = 0; i < 10; i++) {
   Test test = new Test(i);
   test.start();
   thread.add(test);
  }
  for (int i = 0; i < thread.size(); i++) {
   Thread t = thread.get(i);
   try {
    t.join();
   } catch (Exception e) {
    e.printStackTrace();
   }
  }
  System.out.println("main stop");
 }
}

 

생성되는 쓰레드를 담기 위해서 ArrayList 객체인 threads를 만든 후 쓰레드 생성시 생성된 객체를 threads에 저장한다. main 메소드가 종료되기 전에 threads 에 담긴 각각의 thread에 join 메소드를 호출하여 쓰레드가 종료될 때까지 대기하도록 하였다.쓰레드의 join 메소드는 쓰레드가 종료될 때까지 기다리게 하는 메서드이다.

 

'JAVA > 자바' 카테고리의 다른 글

자바 URL주소로 이미지 저장  (0) 2015.05.08
자바 쓰레드 Runnable  (0) 2015.03.19
자바 쓰레드 기초  (0) 2015.03.19
자바 클라이언트 기초소스  (0) 2015.03.19
자바 서버 기초소스  (0) 2015.03.19
블로그 이미지

왕왕왕왕

,

package thread;

public class Test extends Thread {
 public void run()
 {
  System.out.println("thread run!!");
 }

 public static void main(String[] args){
  
  Test test = new test();
  test.start();
 }
}

 

실행결과

 

thread run!!

 

 

쓰레드클래스를 extends해줘서 test객체에 start()메소드로 인해 run메소드가 실행 된다.

'JAVA > 자바' 카테고리의 다른 글

자바 쓰레드 Runnable  (0) 2015.03.19
자바 쓰레드 Thread  (0) 2015.03.19
자바 클라이언트 기초소스  (0) 2015.03.19
자바 서버 기초소스  (0) 2015.03.19
자바 파일 입출력  (0) 2014.09.24
블로그 이미지

왕왕왕왕

,

import java.io.InputStream;

import java.io.ObjectInputStream;

import java.io.ObjectOutputStream;

import java.io.OutputStream;

import java.net.Socket;

import java.util.Scanner;


public class Client {


private InputStream is;

private OutputStream os;

private Socket socket;

private ObjectInputStream ois;

private ObjectOutputStream oos;

private String rmsg;


/**

* @param args

*/


public static void main(String[] args) {

// TODO Auto-generated method stub

}


// 폼에서 객체생성 후 사용될 메소드

public String start(String msg) {

String re = null;


try {


// 접속할 아이피와 포트를 가진 클라이언트 소켓생성

socket = new Socket("localhost", 5555);

sendMessage(msg);

re = receiveMessage(socket);


} catch (Exception e) {

e.printStackTrace();

} finally {

try {

socket.close();


} catch (Exception e1) {

e1.printStackTrace();


}

}

return re;


}


// 서버에서 전송된 메시지를 받아서 클라이언트를 사용한 폼에서 받을 값을 리턴함

private String receiveMessage(Socket socket) {

System.out.println("[ReceiveMessage] " + rmsg);

try {

is = socket.getInputStream();

ois = new ObjectInputStream(is);

rmsg = (String) ois.readObject();


} catch (Exception e) {

e.printStackTrace();

}

return rmsg;

}


//폼에서 인자로 입력된 값을 서버로 전송

public void sendMessage(String msg) {


System.out.println("[SendMessage] " + msg);

try {

os = socket.getOutputStream();

oos = new ObjectOutputStream(os);

oos.writeObject(msg);


} catch (Exception e) {

e.printStackTrace();

}


}




}



'JAVA > 자바' 카테고리의 다른 글

자바 쓰레드 Thread  (0) 2015.03.19
자바 쓰레드 기초  (0) 2015.03.19
자바 서버 기초소스  (0) 2015.03.19
자바 파일 입출력  (0) 2014.09.24
콤보박스 항목리스트관련!!  (0) 2014.05.29
블로그 이미지

왕왕왕왕

,

import java.io.InputStream;

import java.io.ObjectInputStream;

import java.io.ObjectOutputStream;

import java.io.OutputStream;

import java.io.OutputStreamWriter;

import java.net.ServerSocket;

import java.net.Socket;


public class Server extends Thread {

private InputStream is;

private OutputStream os;

private ServerSocket serversocket;

private ObjectInputStream ois;

private ObjectOutputStream oos;

private Socket socket;

DB db;


/**

* @param args

*/

public void run() {

db = new DB();

try {

// 5000번 서버소켓 생성

serversocket = new ServerSocket(5555);

while (true) {

System.out.println("[Server Open]");

socket = serversocket.accept();


// 접속된 클라이언트 ip정보출력

System.out.println("[Connect client]: "

+ socket.getInetAddress());


is = socket.getInputStream();

os = socket.getOutputStream();

ois = new ObjectInputStream(is);

oos = new ObjectOutputStream(os);


// 클라이언트에서 스트림을 READ

String msg = (String) ois.readObject();

System.out.println("Server[Read] : " + msg);


// 클라이언트로 DB에서 리턴값 메시지전송

oos.writeObject(db.test(msg)); //이부분에서 전송

System.out.println("Server[Send] : " + db.test(msg));

// 한번입출력하고 소켓을 닫아주는 부분

socket.close();


}

} catch (Exception e) {

System.out.println("server " + e.toString());

}

}


public static void main(String[] args) {

// TODO Auto-generated method stub

Server server_start = new Server();

server_start.start();


}


}



'JAVA > 자바' 카테고리의 다른 글

자바 쓰레드 기초  (0) 2015.03.19
자바 클라이언트 기초소스  (0) 2015.03.19
자바 파일 입출력  (0) 2014.09.24
콤보박스 항목리스트관련!!  (0) 2014.05.29
DefaultClose() 옵션  (0) 2014.05.26
블로그 이미지

왕왕왕왕

,