package ocrtest;


import java.awt.Image;

import java.awt.image.PixelGrabber;


import javax.swing.ImageIcon;


public class image {

public static void main(String[] args) {

Image img = new ImageIcon("im/gi.jpg").getImage();

Image img1 = new ImageIcon("im/gi1.jpg").getImage();


int width = img.getWidth(null);

int height = img.getHeight(null);


int width1 = img1.getWidth(null);

int height1 = img1.getHeight(null);


int[] pixels = new int[width * height];

int[] pixels1 = new int[width1 * height1];


PixelGrabber grab = 

   new PixelGrabber(img, 0, 0, width, height, pixels, 0, width);

PixelGrabber grab1 = 

  new PixelGrabber(img1, 0, 0, width1, height1, pixels1, 0, width1);


try {

grab.grabPixels();

grab1.grabPixels();


int[][] picture = new int[width][height];

int[][] picture1 = new int[width1][height1];

if (pixels.length != pixels1.length) {

System.out.println("사이즈 다름");

} else {

System.out.println("1 "+grab.getWidth()+" "+grab.getHeight());

System.out.println("2 "+grab1.getWidth()+" "+grab1.getHeight());

}


for (int i = 0; i < pixels.length; i++) {

picture[i % width][i / width] = pixels[i];

picture1[i % width1][i / width1] = pixels1[i];


if (picture[i % width][i / width] == picture1[i % width1][i / width1]) {


} else {


System.out.println(i + " 번째 픽셀 : " + picture[i % width][i / width]); System.out.println(i + " 번째 픽셀 : " + picture1[i % width1][i / width1]);

System.out.println("다른이미지 종료");

return;

}

}

System.out.println("같은 이미지");


} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}


}


}



// System.out.println("alpha " + ((picture[i % width][i / width] >>24) &0xff));

// System.out.println("R " + ((picture[i % width][i / width] >> 16) & 0xff));

// System.out.println("G " + ((picture[i % width][i / width] >> 8) & 0xff));

// System.out.println("B " + (picture[i % width][i / width] & 0xff));



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

자바 이미지 형태 비교  (0) 2015.10.14
자바 이미지 불러와서 수정 후 저장  (0) 2015.10.13
자바 메일보내기  (3) 2015.10.06
자바 팩토리얼  (0) 2015.09.10
자바 피보나치수열  (0) 2015.09.10
블로그 이미지

왕왕왕왕

,

자바 메일보내기

JAVA/자바 2015. 10. 6. 20:35

package test;


import java.util.Date;

import java.util.Properties;

import javax.mail.Authenticator;

import javax.mail.Message;

import javax.mail.MessagingException;

import javax.mail.PasswordAuthentication;

import javax.mail.Session;

import javax.mail.internet.AddressException;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeMessage;


public class aa {

public static void main(String[] args) {

Properties p = System.getProperties();

p.put("mail.smtp.starttls.enable", "true");// gmail은 무조건 true 고정

p.put("mail.smtp.host", "smtp.gmail.com");// smtp 서버 주소

p.put("mail.smtp.auth", "true");// gmail은 무조건 true 고정

p.put("mail.smtp.port", "587");// gmail 포트


Authenticator auth = new MyAuthentication();


// session 생성 및  MimeMessage생성

Session session = Session.getDefaultInstance(p, auth);

MimeMessage msg = new MimeMessage(session);

try {

// 편지보낸시간

msg.setSentDate(new Date());

InternetAddress from = new InternetAddress();


from = new InternetAddress("kid88exp@gmail.com");

// 이메일 발신자

msg.setFrom(from);


// 이메일 수신자

InternetAddress to = new InternetAddress("dusdhkd8@gmail.com");

msg.setRecipient(Message.RecipientType.TO, to);

// 이메일 제목

msg.setSubject("메일 전송 테스트", "UTF-8");

// 이메일 내용

msg.setText("내용", "UTF-8");

// 이메일 헤더

msg.setHeader("content-Type", "text/html");

// 메일보내기

javax.mail.Transport.send(msg);

} catch (AddressException addr_e) {

addr_e.printStackTrace();

} catch (MessagingException msg_e) {

msg_e.printStackTrace();

}

}

}


class MyAuthentication extends Authenticator {


PasswordAuthentication pa;


public MyAuthentication() {


String id = "kid88exp@gmail.com";// 구글 ID

String pw = "dbggxfqqagjlzkxc";// 구글 비밀번호

// ID와 비밀번호를 입력한다.

pa = new PasswordAuthentication(id, pw);

}


// 시스템에서 사용하는 인증정보

public PasswordAuthentication getPasswordAuthentication() {

return pa;

}

}




소스 실행하기전에 해야 될 일이있다.





웹프로젝트인데 lib폴더에 2개 jar파일을 추가해준다.


https://java.net/projects/javamail/pages/Home

자바 6 이후로는 javax.mail.jar만 필요하다. activation.jar가 jre에 기본으로 포함되었다.




다른기기에서 로그인할때 필요한 앱비밀번호 생성하는 법이다.



자기계정 로그인하고 ..






1~4절차까지 인증받고 끝내면된다.




다시 이페이지로 돌아가서 앱비밀번호라는 놈이 생겼다.




기기를 윈도우컴퓨터로설정하고 메일로선택하고 생성을 누르면 




비밀번호가 나오는데 그비밀번호를 복사해서 MyAuthoentication클래스에 pw값으로 넣어주면된다.





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

자바 이미지 불러와서 수정 후 저장  (0) 2015.10.13
자바 이미지 픽셀 비교  (0) 2015.10.12
자바 팩토리얼  (0) 2015.09.10
자바 피보나치수열  (0) 2015.09.10
자바 SQL 소스  (0) 2015.08.25
블로그 이미지

왕왕왕왕

,

자바 팩토리얼

JAVA/자바 2015. 9. 10. 09:28


public class factorial{

public static void main(String args[]) {

BigInteger a = BigInteger.ONE;

for (int i = 1; i < 21; i++) { // 10번 반복

a=a.multiply(BigInteger.valueOf(i));

System.out.print(" " + a);

}

}

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

자바 이미지 픽셀 비교  (0) 2015.10.12
자바 메일보내기  (3) 2015.10.06
자바 피보나치수열  (0) 2015.09.10
자바 SQL 소스  (0) 2015.08.25
자바 Swing Jtable 에디터 사용안하기  (1) 2015.07.08
블로그 이미지

왕왕왕왕

,

package dd;


public class fibo {

public static void main(String args[]) {

int a = 0, b = 1, c = 0;

for (int i = 0; i < 10; i++) { // 10번 반복

a = b;

b = c;

c = a + b;

System.out.print(" " + c);

}

}

}

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

자바 메일보내기  (3) 2015.10.06
자바 팩토리얼  (0) 2015.09.10
자바 SQL 소스  (0) 2015.08.25
자바 Swing Jtable 에디터 사용안하기  (1) 2015.07.08
자바 inner 클래스 - anonymous inner 클래스  (0) 2015.07.06
블로그 이미지

왕왕왕왕

,

자바 SQL 소스

JAVA/자바 2015. 8. 25. 16:12

package test1;


import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;


public class DB {


// 데이터베이스 연결

private Connection connection() {


Connection con = null;

String driverName = "oracle.jdbc.driver.OracleDriver";

String url = "jdbc:oracle:thin:@localhost:1521:orcl";

String user = "scott";

String password = "tiger";

try {

// 드라이버 로드

Class.forName(driverName);

// 연결

con = DriverManager.getConnection(url, user, password);


} catch (SQLException e) {

e.printStackTrace();

} catch (ClassNotFoundException e) {

// TODO 자동 생성된 catch 블록

e.printStackTrace();

}

// 모두완료된 con을 리턴해줌

return con;

}


public boolean login(String idx, String pw) {

String sql = "select * from member where idx= '" + idx + "' and pw='" + pw + "'";

Connection con = connection();

PreparedStatement pstmt;

ResultSet re;

String idxchk = null, pwchk = null;

try {

pstmt = con.prepareStatement(sql);

re = pstmt.executeQuery();

while (re.next()) {

idxchk = re.getString(1);

pwchk = re.getString(2);

}

if (idxchk.equals(idx) && pwchk.equals(pw)) {

return true;

}


con.close();

pstmt.close();

re.close();

} catch (SQLException e) {

// TODO Auto-generated catch block

System.out.println(e.toString() + " login Method sql error");

return false;

} catch (NullPointerException e1) {

System.out.println(e1.toString() + " login Method null error");

return false;

}


return false;

}


public boolean sign(String idx, String pw, String name, String phone, String addr, String gender, String email) {

String sql = "insert into member(idx,pw,name,phone,addr,gender,email) values(?,?,?,?,?,?,?)";

String sql2 = "select * from member where idx='" + idx + "'";

Connection con = connection();

PreparedStatement pstmt;

ResultSet re = null;

try {

// con.setAutoCommit(false);

pstmt = con.prepareStatement(sql);

pstmt.setString(1, idx);

pstmt.setString(2, pw);

pstmt.setString(3, name);

pstmt.setString(4, phone);

pstmt.setString(5, addr);

pstmt.setString(6, gender);

pstmt.setString(7, email);

pstmt.executeUpdate();

pstmt.close();


// pstmt = con.prepareStatement(sql2);

// re = pstmt.executeQuery();

//

// if (re.next()) {

// con.rollback();

// System.out.println("roll");

// } else {

// con.commit();

// System.out.println("comit");

// }


pstmt.close();

// con.setAutoCommit(true);

return true;

} catch (SQLException e) {

// TODO Auto-generated catch block

System.out.println(e.toString() + " sign Method sql error");

return false;

}


}


public String member_list() {

String sql = "select * from member ";

Connection con = connection();

PreparedStatement pstmt;

ResultSet re = null;

String list = "";

try {

pstmt = con.prepareStatement(sql);

re = pstmt.executeQuery();


while (re.next()) {

list += re.getString(1) + " ";

}


con.close();

pstmt.close();


return list;

} catch (SQLException e) {

// TODO Auto-generated catch block

System.out.println(e.toString() + " sign Method sql error");

}

return list;


}


public String member_info() {

String sql = "select * from member ";

Connection con = connection();

PreparedStatement pstmt;

ResultSet re = null;

String list = "";

String[] item = { "아이디 ", "비밀번호 ", "이름 ", "전화번호 ", "주소 ", "성별 ", "메일 " };

try {

pstmt = con.prepareStatement(sql);

re = pstmt.executeQuery();


while (re.next()) {

for (int i = 1; i < 8; i++) {


if (i == 7) {

list += item[i - 1] + re.getString(i) + ";";

} else {

list += item[i - 1] + re.getString(i) + " ";

}

}

}


con.close();

pstmt.close();


return list;

} catch (SQLException e) {

// TODO Auto-generated catch block

System.out.println(e.toString() + " sign Method sql error");

}

return list;


}


public boolean member_del(String idx) {

String sql = "delete from member where idx= '" + idx + "'";

Connection con = connection();

PreparedStatement pstmt;

String list = "";

try {

pstmt = con.prepareStatement(sql);

pstmt.executeQuery();


con.close();

pstmt.close();


return true;

} catch (SQLException e) {

// TODO Auto-generated catch block

System.out.println(e.toString() + " sign Method sql error");

}

return false;


}

}



블로그 이미지

왕왕왕왕

,

                      table = new JTable(model){

@Override

public boolean isCellEditable(int row11, int column11) {

// TODO 자동 생성된 메소드 스텁

return false;

}

};

블로그 이미지

왕왕왕왕

,

package kkk;


interface Readable1 {

public void read();

}


class OuterClass2 {

private String myName;


OuterClass2(String name) {

myName = name;

}


public Readable1 createLocalClassInst(final int instID) {

return new Readable1() {

public void read() {

System.out.println("Outer inst name: " + myName);

System.out.println("Local inst ID: " + instID);

}

};

}

}


class LocalParamAnonymous {

public static void main(String[] args) {

OuterClass2 out = new OuterClass2("My Outer Class");

Readable1 localInst1 = out.createLocalClassInst(111);

localInst1.read();

Readable1 localInst2 = out.createLocalClassInst(222);

localInst2.read();

}

}

블로그 이미지

왕왕왕왕

,


블로그 이미지

왕왕왕왕

,