1. SDK 다운로드

http://aws.amazon.com/jp/sdkforjava/에서 AWS SDK(Java)를 다운로드 한다.


2. aws-java-sdk-1.8.7.zip 내용

- documentation,lib,LICENSE.txt,NOTICE.txt,README.html,samples,third-party

      - lib와 third-party 안에 있는 모든 jar 파일을 이클립스의 라이브러리에 추가

- samples 은 S3 관련 샘플 소스가 있다.

AmazonS3,AmazonS3TransferProgress 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.Writer;
 
import com.amazonaws.AmazonClientException;
import com.amazonaws.AmazonServiceException;
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.AmazonS3Client;
import com.amazonaws.services.s3.model.CannedAccessControlList;
import com.amazonaws.services.s3.model.GetObjectRequest;
import com.amazonaws.services.s3.model.PutObjectRequest;
import com.amazonaws.services.s3.model.S3Object;
 
public class S3Sample {
 
    public static void main(String[] args) throws IOException {
        String AWS_BUCKETNAME = "your_bucketname";
        String AWS_ACCESS_KEY = "your_AWS_ACCESS_KEY";
        String AWS_SECRET_KEY = "your_ AWS_SECRET_KEY";
        String file_path = "test/;"// 폴더명
        String file_name = "test.txt"// 파일명 
 
        AWSCredentials credentials = new BasicAWSCredentials(AWS_ACCESS_KEY, AWS_SECRET_KEY);
        AmazonS3 s3 = new AmazonS3Client(credentials);
       
        try {
            // 파일 업로드 부분 파일 이름과 경로를 동시에 넣어줌.
             PutObjectRequest putObjectRequest = new PutObjectRequest(AWS_BUCKETNAME, file_path+file_name, createSampleFile());
             putObjectRequest.setCannedAcl(CannedAccessControlList.PublicRead); // URL 접근시 권한 읽을수 있도록 설정.
             s3.putObject(putObjectRequest);
             System.out.println("Uploadinf OK");
             
             // 파일 다운로드 다운로드 경로와 파일이름 동시 필요. 
             System.out.println("Downloading an object");
             S3Object object = s3.getObject(new GetObjectRequest(AWS_BUCKETNAME, file_path+file_name));
             System.out.println("Content-Type: "  + object.getObjectMetadata().getContentType());
             displayTextInputStream(object.getObjectContent());
             
             
             
        } catch (AmazonServiceException ase) {
            System.out.println("Caught an AmazonServiceException, which means your request made it "
                    + "to Amazon S3, but was rejected with an error response for some reason.");
            System.out.println("Error Message:    " + ase.getMessage());
            System.out.println("HTTP Status Code: " + ase.getStatusCode());
            System.out.println("AWS Error Code:   " + ase.getErrorCode());
            System.out.println("Error Type:       " + ase.getErrorType());
            System.out.println("Request ID:       " + ase.getRequestId());
        } catch (AmazonClientException ace) {
            System.out.println("Caught an AmazonClientException, which means the client encountered "
                    + "a serious internal problem while trying to communicate with S3, "
                    + "such as not being able to access the network.");
            System.out.println("Error Message: " + ace.getMessage());
        }
    }
 
    private static File createSampleFile() throws IOException {
        File file = File.createTempFile("aws-java-sdk-"".txt");
        file.deleteOnExit();
 
        Writer writer = new OutputStreamWriter(new FileOutputStream(file));
        writer.write("파일테스트하기\n");
        writer.close();
 
        return file;
    }
 
    @SuppressWarnings("unused")
    private static void displayTextInputStream(InputStream input) throws IOException {
        BufferedReader reader = new BufferedReader(new InputStreamReader(input));
        while (true) {
            String line = reader.readLine();
            if (line == nullbreak;
 
            System.out.println("    " + line);
        }
        System.out.println();
    }
}
cs

[펌] http://blog.daum.net/_blog/BlogTypeMain.do?blogid=0Tjdj



 

 

다음과 같은 자바코드를 실행할 실행파일(exe)을 만들고자 한다!! 




1. JSmooth 다운로드 및 설치

 - http://sourceforge.net/projects/jsmooth/files/jsmooth/0.9.9-7/ 에서 

   jsmooth-setup 파일을 다운로드

 

  

  jsmooth setup 파일을 실행하여 설치함!!


2. jar 파일 만들기


- [파일] - [내보내기(Export)]를 선택

 


- 다음과 같이 선택함

 



- 실행구성을 선택하고, jar를 만들어서 저장할 폴더를 지정함

 






완료를 클릭하면, 주어진 폴더에 jar파일이 생성됨!!

그럼 이제 jar 파일을 가지고 exe 파일로 만들어야 함!


3. JSmooth로 실행파일(exe) 만들기

 

- JSmooth의 첫화면

 


- Skeleton을 선택함

   SWT를 이용한 윈도우 창프로그램이면 windowed Wrapper를 선택

   Console 프로그램이면 Console Wrapper를 선택


 


PressKey를 체크하고, Executable Tab으로 넘어감


 


- 실행파일 이름을 작성하고, 아이콘 그림파일을 지정함


 


- Main class( main이 들어있는 클래스)를 지정하고, 아까 만든 jar파일을 지정해줌 


 


- 자바가상머신의 버전을 입력하고, Compile을 실행함


 



- 파일이름을 작성하고 저장을 하면 JSmooth 파일과 exe파일이 생성됨


 


 




4. 실행화면


- 다음과  같이 jsmooth파일과 exe파일이 생성됨


- 생성된 exe파일을 실행하면 다음과 같이 실행됨!!







package com.application.pgm.util;


import java.awt.Color;

import java.awt.Graphics2D;

import java.awt.image.BufferedImage;

import java.io.BufferedReader;

import java.io.File;

import java.io.FileReader;

import java.net.URL;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;


import javax.imageio.ImageIO;


public class ImageFileDownload {


public static void main(String[] args) {

// TODO Auto-generated method stub

FileReader fr = null;

String imgUrl = "";

try{

fr = new FileReader("D:\\dev\\workspace\\URL_TEST\\src\\com\\application\\pgm\\util\\imgFileList.txt");

BufferedReader list_br = new BufferedReader(fr);

String list_Line = new String();

String imgFileName = new String();

List downLoadList = new ArrayList<>();

while((list_Line = list_br.readLine()) != null){

imgUrl = list_Line.trim();

imgUrl = imgUrl.replaceAll("image1", "image5");

imgUrl = imgUrl.replaceAll("usahanatour","hanatour");

System.out.println();

imgUrl = imgUrl.substring(0, imgUrl.trim().length()-5);

Map rowMap = new HashMap<String, String>();

rowMap.put("imgUrlPath_S", imgUrl+"S.jpg");

rowMap.put("imgName_S", rowMap.get("imgUrlPath_S").toString().substring(imgUrl.lastIndexOf("/")+1, rowMap.get("imgUrlPath_S").toString().length()));

rowMap.put("imgUrlPath_M", imgUrl+"M.jpg");

rowMap.put("imgName_M", rowMap.get("imgUrlPath_M").toString().substring(imgUrl.lastIndexOf("/")+1, rowMap.get("imgUrlPath_M").toString().length()));

rowMap.put("imgUrlPath_L", imgUrl+"L.jpg");

rowMap.put("imgName_L", rowMap.get("imgUrlPath_L").toString().substring(imgUrl.lastIndexOf("/")+1, rowMap.get("imgUrlPath_L").toString().length()));

downLoadList.add(rowMap);

}

String downImg = new String();

BufferedImage image = null;

BufferedImage bufferedImage = null;

Graphics2D graphics = null;

for(int inx = 0; inx < downLoadList.size(); inx++){

Map rowMap = (Map)downLoadList.get(inx);


image = ImageIO.read(new URL(rowMap.get("imgUrlPath_S").toString()));

if(image.getData() != null){

bufferedImage = new BufferedImage(image.getWidth(),image.getHeight(), BufferedImage.TYPE_INT_BGR);

graphics = (Graphics2D) bufferedImage.getGraphics();

graphics.setBackground(Color.WHITE);

graphics.drawImage(image, 0, 0, null);

ImageIO.write(bufferedImage, "jpg", new File("D:\\000.Document\\003.운영업무\\미주지역\\상품이미지업로드\\2014.12.18\\"+rowMap.get("imgName_S")));

System.out.println(rowMap.get("imgName_S")+" 다운완료");

}

image = ImageIO.read(new URL(rowMap.get("imgUrlPath_M").toString()));

if(image.getData() != null){

bufferedImage = new BufferedImage(image.getWidth(),image.getHeight(), BufferedImage.TYPE_INT_BGR);

graphics = (Graphics2D) bufferedImage.getGraphics();

graphics.setBackground(Color.WHITE);

graphics.drawImage(image, 0, 0, null);

ImageIO.write(bufferedImage, "jpg", new File("D:\\000.Document\\003.운영업무\\미주지역\\상품이미지업로드\\2014.12.18\\"+rowMap.get("imgName_M")));

System.out.println(rowMap.get("imgName_M")+" 다운완료");

}

image = ImageIO.read(new URL(rowMap.get("imgUrlPath_L").toString()));

if(image.getData() != null){

bufferedImage = new BufferedImage(image.getWidth(),image.getHeight(), BufferedImage.TYPE_INT_BGR);

graphics = (Graphics2D) bufferedImage.getGraphics();

graphics.setBackground(Color.WHITE);

graphics.drawImage(image, 0, 0, null);

ImageIO.write(bufferedImage, "jpg", new File("D:\\"+rowMap.get("imgName_L")));

System.out.println(rowMap.get("imgName_L")+" 다운완료");

}

}

System.out.println("작업 끝났음 +_+");

/*

*/

}catch(Exception e){

e.printStackTrace();

}

}


}

jQuery로 선택된 값 읽기

$("#selectBox option:selected").val();

$("#select_box > option:selected").val()

$("select[name=name]").val();

 

jQuery로 선택된 내용 읽기

$("#selectBox option:selected").text();

 

선택된 위치

var index = $("#test option").index($("#test option:selected"));

 

// Add options to the end of a select

$("#selectBox").append("<option value='1'>Apples</option>");

$("#selectBox").append("<option value='2'>After Apples</option>");

 

// Add options to the start of a select

$("#selectBox").prepend("<option value='0'>Before Apples</option>");

 

// Replace all the options with new options

$("#selectBox")

.html("<option value='1'>oranges</option><option value='2'>Oranges</option>");

 

// Replace items at a certain index

$("#selectBox option:eq(1)")

.replaceWith("<option value='2'>apples</option>");

$("#selectBox option:eq(2)")

.replaceWith("<option value='3'>bananas</option>");

 

// 지정된 index 값으로 select 하기

$("#selectBox option:eq(2)").prop("selected", "selected");

 

// text 값으로 select 하기

$("#selectBox").val("Some oranges").prop("selected", "selected");

 

// value 값으로 select 하기

$("#selectBox").val("2");

$("#selectBox > option[@value=지정값]").prop("selected", "true");

 

// 지정된 인덱스 값의 item 삭제

$("#selectBox option:eq(0)").remove();

 

// 첫번째 item 삭제

$("#selectBox option:first").remove();

 

// 마지막 item 삭제

$("#selectBox option:last").remove();

 

// 선택된 옵션의 text 구하기

alert($("#selectBox option:selected").text());

 

// 선택된 옵션의 value 구하기

alert($("#selectBox option:selected").val());

 

// 선택된 옵션 index 구하기

alert($("#selectBox option").index($("#selectBox option:selected")));

 

// SelecBox 아이템 갯수 구하기

alert($("#selectBox option").size());

 

// 선택된 옵션 앞의 아이템 갯수

alert($("#selectBox option:selected").prevAll().size());

 

// 선택된 옵션 후의 아이템 갯수

alert($("#selectBox option:selected").nextAll().size());

 

// 0번째 item 다음에 삽입

$("#selectBox option:eq(0)").after("<option value='4'>Some pears</option>");

 

// 3번째 item 전에 삽입

$("#selectBox option:eq(3)").before("<option value='5'>Some apricots</option>");

 

// select box 값이 변경될때 선택된 현재값

$("#selectBox").change(function() {

           alert($(this).val());

           alert($(this).children("option:selected").text());

});

 

'Web > JQuery' 카테고리의 다른 글

$.type(obj) 사용법  (0) 2015.03.24
[정규식] 자바스크립트에서 REPLACE를 REPLACEALL 처럼 사용하기  (0) 2015.03.20
정규표현식 기초  (0) 2014.12.18
정규 표현식  (0) 2014.12.18
checkbox checked 설정  (0) 2014.10.17

정규표현식 기초

. : 다수의 한문자

? : 0개 이상의 한문자

* : 0개 이상의 문자 또는 문자열

+ : 1개 이상의 문자 또는 문자열

(chars) : (, ) 안의 문자또는 문자열을 그룹으로 묶습니다. 이 문자그룹은 Substitution(return URL)에서 $N 의 변수로 활용할수 있습니니다.

^ : 문자열의 첫문(열)을 지정합니다.

$ : 문자열의 끝 문자(열)을 지정합니다.

\(역슬래쉬) : 정규표현식에서 특별한 의미로 사용되는 문자의 특수기능을 제거합니다.(예:(, ), [, ] . 등)

{n} : 정확히 n번 반복

{n,} : n번 이상 반복

{n,m} : n 이상 m 이하 반복

[chars] : 문자들의 범위 또는 표현할 수 있는 문자들을 설정합니다.
예) [a-z] : a 부터 z 까지의 소문자, [tT] : 소문자 t 또는 대문자 T

 

정규표현식 단축표현들

[:alpha:] : 알파벳. [a-zA-Z] 와 같은 표현

[:alnum:] : 알파벳과 숫자. [a-zA-Z0-9] 와 같은 표현

[:digit:] : 숫자 [0-9] 와 같은 표현

[:upper:] : 대문자. [A-Z] 와 같은 표현

 

'Web > JQuery' 카테고리의 다른 글

[정규식] 자바스크립트에서 REPLACE를 REPLACEALL 처럼 사용하기  (0) 2015.03.20
Select Box 다루기  (0) 2014.12.19
정규 표현식  (0) 2014.12.18
checkbox checked 설정  (0) 2014.10.17
Datepicker 대만 번체 zh-TW 번역자료  (0) 2014.07.28

1. 정규 표현식이란.

   문자열의 특정한 패턴을 표시하거나 검사하기 위한 규칙을 의미하며 어떤 문자열의 집합을 표시하는 텍스트 string이나 일반적인

   텍스트 형시의 문서 등에서 문자열을 찾아내거나 검사하고 치환하는데 사용된다. 이러한 정규 표현식은 정규 표현식을 표시하는

   특수문자와 정규 표현식을 검사하기 위한 함수가 있다.

 

2. 패턴을 표현하는 특수 문자

특수 문자

내용

해당문자열

.

 임의의 한 글자를 의미한다.

 a.b (abc, acb, afb...)

*

 * 바로 앞의 문자가 없거나 한개 이상이 있을 경우

 a*b (b, ab, aab, aaab...)

+

 + 바로 앞의 문자가 최소 한 개 이상일 때 

 a+b (ab, aab, aaab...)

?

 ? 바로 앞의 문자가 없거나 한 개 존재하는 경우

 a?b (b, ab, cb, zb...)

^

 ^ 뒤에 문자열과 같은 문자열로 시작한는 경우

 [] 안에서 ^ 는 [] 안의 문자를 제외한 문자를 의미한다.

 ^ab (ab, abc, abdr...)

$

 $ 앞의 문자열과 같은 문자열로 끝나는 경우

 ab$ (ab, sab, aaab...)

[]

 [] 안의 문자열 중에 하나만의 문자만을 의미한다.

 [a-z], [0-9], [a-zA-Z]

{}

 {} 앞의 문자열의 개수를 의미한다.

 a{1-3}b (ab, aab, aaab)

()

 () 안의 문자는 그룹으로 인식한다.

 a(bc){2} (abcbc)

|

 or 연산자이다.

 a(b|c)d (abd, acd)

[[:alpha:]]

 모든 알파벳의 문자 한 자를 의미한다.

 [a-zA-Z]와 동일

[[:digit:]]

 모든 숫자 한 자를 의미한다.

 [0-9]와 동일

[[:alnum:]]

 알파벳과 숫자중 한 자를 의미한다.

 [a-zA-Z0-9]와 동일

[[:space:]]

 공백 문자를 의미한다.

 

[[:punct:]]

 구두점을 의미

 

\

 . * + ? ^ $ [] {} () | \ 문자를 표시할때

 (\*, \\, \[1\], \|...)

 

3. 정규 표현식의 특수문자 사용법

  1) ^a?bc : a로 시작해서 bc로 끝나는 문자(abc로 시작하는 문자)와 bc로 시작하는 모든 문자 (예 abcd, bcd)

  2) ^.a : a앞에 아무 한 문자가 있어야 하고 그 문자로 시작하고 a가 들어간 문자 (예 aa, bacd, match, para)

  3) a?b$ : b로 끝나는 문자열 중에 a가 없거나 한 개 이상 존재하는 문자열 (예 b, ab, aab)

  4) a?b+$ : 첫 글자는 a가 있거나 없고 b가 한 개 이상이고 b로 끝나는 문자 (예 ab, b, bb, abbb, abbbb)

  5) ^ab$ : 첫 글자가 a이고 끝나는 문자가 b인 경우 (예 ab)

  6) [ab]cd : a나 b중에 한 글자와 cd가 포함된 acd, bcd를 포함한 문자 (예 acd, bcd, acdse)

  7) ^[a-zA-Z] : 영문자로 시작하는 모든 문자 (예 a, b, c, d, ee)

  8) [^ab]cd : cd 문자열 앞에 a나 b를 제외한 문자가 있는 문자열 즉, acd와 bcd를 제외한 문자열을 의미한다. (예 scd, dcd, ffcd)

  9) a{2,}b : a의 개수가 최소 2개 이상이고 다음 문자가 b인 문자 (예 aab, aaabcd, aaaab)

----------------------------------------------------------------------------------------------------------------------


2018.10.24 추가


+, -, 소수점을 허용하는 숫자형식 체크 정규식 : ^[+-]?\\d*(\\.?\\d*)$


Java 사용예제 


// +,-,소수점 포함 숫자형식 체크

Pattern p = Pattern.compile("^[+-]?\\d*(\\.?\\d*)$");

Matcher m = null;


 m = p.matcher(qty);     //수량

 if(!m.find()) {

     errorText.append("[수량 오류 : "+qty+"]");

      } 




'Web > JQuery' 카테고리의 다른 글

Select Box 다루기  (0) 2014.12.19
정규표현식 기초  (0) 2014.12.18
checkbox checked 설정  (0) 2014.10.17
Datepicker 대만 번체 zh-TW 번역자료  (0) 2014.07.28
JavaScript Class 상속  (0) 2014.05.21

550 5.7.1 : 발신자의 이메일이 스펨으로 등록이 되어 있는경우

                 요청하지 않은 IP에서 대량의 메일이 수신 될 경우 시스템은 스펨으로부터 사용자를 보호하기 위해 해당 발송 IP를 스펨 

                 등록한다.



Diagnostic-Code: smtp;550 Access denied - Invalid HELO name (See RFC2821 4.1.1.1)

발신자의 도메인이 설정이 되어 있지 않아서 발신자를 식별 할 수 없을 때 발생합니다.

.attr 속성과 .prop 


필자는 아래와 같이 꾸준히 개발해 왔다.


$("input:checkbox[name=LOCK_YN]").attr("checked", true);


근데.. 이게 갑자기(?) 안되는 것이다..


게다가 크롬은 되는데 IE가 안되는것이다...


열심히 네이버 검색질을 해봤지만.. 나오지 않았다(못찾은것일 수도..)


구글에서 해답을 찾았는데..


attr 은 지양 하는 방법이라고 한다.


prop로 바꾸어서 코딩하니 잘된다.


$("input:checkbox[name=LOCK_YN]").prop("checked", true);


하...


IE 싫다.

'Web > JQuery' 카테고리의 다른 글

정규표현식 기초  (0) 2014.12.18
정규 표현식  (0) 2014.12.18
Datepicker 대만 번체 zh-TW 번역자료  (0) 2014.07.28
JavaScript Class 상속  (0) 2014.05.21
Javascript override 방법  (0) 2014.05.21

package com.application.pgm;


import java.io.BufferedReader;

import java.io.FileReader;

import java.io.IOException;

import java.io.InputStreamReader;

import java.net.HttpURLConnection;

import java.net.MalformedURLException;

import java.net.URL;


/**

 * urlList.txt 목록의 URL을 순회 하면서 원하는 텍스트를 찾아낸다. 

 * @author hana

 *

 */


public class UrlTest {


public static void main(String[] args) {

// TODO Auto-generated method stub


FileReader fr = null;

String url = "";

URL u = null;

HttpURLConnection conn = null;

int resCode = 0;

try {

fr = new FileReader("D:\\dev\\urlList.txt");

BufferedReader list_br = new BufferedReader(fr);

String list_Line = "";

while((list_Line = list_br.readLine()) != null){

url = list_Line;

u = new URL(url);

conn = (HttpURLConnection)u.openConnection();

resCode = conn.getResponseCode();

String ln = "";

if(resCode == 200){

BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream(),"UTF-8"));

while((ln=br.readLine()) != null){

if(ln.indexOf(".hanatour.com") > -1){

System.out.println("## Source Find !! ##  :: url :" + url);

System.out.println("## find String !! ##  :: str :" + ln);

System.out.println("------------------------------------");

}

}

}else{

System.out.println("########## WebSite Open Error!!##################");

System.out.println("#"+url+"#");

System.out.println("-------------------------------------------");

}

}

} catch (MalformedURLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}


}



+ Recent posts