Programming/Java2015. 5. 12. 16:19

문득 수다 떨다가 검색 -_-

야이!!! FXXKIING 오라클!!!


Is Java still free?

The current version of Java - Java SE 8 - is free and available for redistribution for general purpose computing. Java SE continues to be available under the Oracle Binary Code License (BCL) free of charge. JRE use for embedded devices and other computing environments may require a license fee from Oracle. Read more about embedded use of Java SE or contact your local Oracle sales representative to obtain a license.

[링크 : http://www.oracle.com/technetwork/articles/javase/faqs-jsp-136696.html]


So What Does Java SE-Embedded Cost?


The universal answer to such a question is: it depends.  That is to say it depends upon the capability of the embedded processor.  Before we lose you, let's show the list price for Java embedded licensing associated with three platforms and then explain how we arrived at the numbers.  As of the posting of this entry, 06 December, 2013, here they are:


Per-unit cost for a Raspberry Pi: US $0.71

Per-unit cost for system based on Intel Atom Z510P: US $2.68

Per-unit cost for a Compulab Trim-Slice: US $5.36

[링크 : https://blogs.oracle.com/jtc/entry/java_embedded_pricing_publicly_available]

'Programming > Java' 카테고리의 다른 글

Java SE 8 설치해보려고 했더니..  (2) 2019.01.03
자바 유료화?  (10) 2018.11.05
predefined annotation /java  (0) 2014.06.27
JUnit tutorial  (0) 2014.06.27
java unchecked/checked exception  (0) 2014.05.15
Posted by 구차니
Programming/Java2014. 6. 27. 16:47
annotation 기본 정의된 녀석들
@Override
@Deprecated
@SuppressWarnings
@SafeVarargs
@FunctionalInterface 

'Programming > Java' 카테고리의 다른 글

자바 유료화?  (10) 2018.11.05
자바 임베디드 JRE 라이센스?  (0) 2015.05.12
JUnit tutorial  (0) 2014.06.27
java unchecked/checked exception  (0) 2014.05.15
Class.forName  (0) 2014.05.09
Posted by 구차니
Programming/Java2014. 6. 27. 13:29
음.. 그러고 보니 이클립스에서 JUnit / Maven 사용시
war 파일로 빼내면은 JUnit이 제대로 작동하지 않았던거 같은 기억이 드는데...


JUnit은 assert로 시작하는 녀석들로 주로 테스트를 하는 것 같다.
[링크 : http://using.tistory.com/entry/JUnit-테스트-하기]

API를 뒤져보니 참/거짓/동일/Null 이정도로 축약되는 것 같고..
static void assertEquals(java.lang.Object expected, java.lang.Object actual) // Asserts that two objects are equal.

static void assertTrue(boolean condition) // Asserts that a condition is true.
static void assertFalse(boolean condition) // Asserts that a condition is false.

static void assertSame(java.lang.Object expected, java.lang.Object actual) // Asserts that two objects refer to the same object.
static void assertNotSame(java.lang.Object unexpected, java.lang.Object actual) //Asserts that two objects do not refer to the same object.

static void assertNull(java.lang.Object object) // Asserts that an object is null.

static <T> void  assertThat(T actual, org.hamcrest.Matcher<T> matcher) // Asserts that actual satisfies the condition specified by matcher.

static void fail() //Fails a test with no message.
 
[링크 : http://junit.sourceforge.net/javadoc/org/junit/Assert.html] API 

pdf 파일은 일단 찾아 놓으면 피가 되고 살이 되니...
[링크 : http://www.tutorialspoint.com/junit/]
    [링크 : http://www.tutorialspoint.com/junit/junit_tutorial.pdf] PDF 파일
[링크 : http://www.mkyong.com/tutorials/junit-tutorials/]

'Programming > Java' 카테고리의 다른 글

자바 임베디드 JRE 라이센스?  (0) 2015.05.12
predefined annotation /java  (0) 2014.06.27
java unchecked/checked exception  (0) 2014.05.15
Class.forName  (0) 2014.05.09
JDNI - Java Directory & Naming Interface  (0) 2014.05.09
Posted by 구차니
Programming/Java2014. 5. 15. 11:06
이해한 개념이 맞으려나
checked exception은 컴파일러나 jvm에 의해 말그대로 '걸러낸/확인된' 
자동화된 예외처리 방법이고 자바에서는 예외처리하도록 강제하기 위해
예외처리하지 않으면 에러라 간주하고 진행되지 않는다

unchecked 는
컴파일러에의해 검사되지않은.
개발자에 의해 예상되는 에러들을 미리 처리하는 개념이다

둘 다 예외처리이지만
개발환경(컴파일러/실행환경) 에 의해 도구적/ 시스템적으로 잡냐
개발자에 의해 수작업으로 잡냐의 차이인듯?



자바에서 exception class 에 있는 예외라도
unchecked exception이 있을수 있다. 아니 의외로 많다?

1) Unchecked Exception
The exceptions that are not checked at compile time are called unchecked exceptions, classes that extends RuntimeException comes under unchecked exceptions. Examples of some unchecked exceptions are listed below.

2) Checked Exceptions
Exceptions that are checked at compile-time are called checked exceptions, in Exception hierarchy all classes that extends Exception class except UncheckedException comes under checked exception category. 

[링크 : http://www.beingjavaguys.com/2013/04/exception-handling-in-java-exception.html] 

 A checked exception is an exception that must be either caught or declared in a method where it can be thrown. For example, the java.io.IOExceptionis a checked exception. To understand what is a checked exception, consider the following code:

[링크 : http://en.wikibooks.org/wiki/Java_Programming/Checked_Exceptions] 
 
 Unchecked, uncaught or runtime exceptions are exceptions that are not required to be caught or declared, even if it is allowed to do so. So a method can throw a runtime exception, even if this method is not supposed to throw exceptions. For example, ConcurrentModificationException is an unchecked exception.

The unchecked exceptions can only be the RuntimeException and its subclasses, and the class Error and its subclasses. All other exception classes must be handled, otherwise the compiler gives an error.

Sometime it is desirable to catch all exception for logging purposes, then throw it back on. For example, in servlet programming when application server calls the server doPost(), we want to monitor that no exception even runtime exception happened during serving the request. The application has its own logging separate from the server logging. The runtime exceptions would just go through without detecting it by the application. The following code would check all exceptions, log them, and throw it back again.

[링크 : http://en.wikibooks.org/wiki/Java_Programming/Unchecked_Exceptions 

'Programming > Java' 카테고리의 다른 글

predefined annotation /java  (0) 2014.06.27
JUnit tutorial  (0) 2014.06.27
Class.forName  (0) 2014.05.09
JDNI - Java Directory & Naming Interface  (0) 2014.05.09
jdk 1.5 - annotation / @  (0) 2014.05.08
Posted by 구차니
Programming/Java2014. 5. 9. 15:26
forNameI() 메소드는
String 형으로 클래스 이름을 받아
조회한 후 클래스 객체를 받는 역활을 한다.

[링크 : http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html]
[링크 : http://docs.oracle.com/javase/tutorial/reflect/class/classNew.html]
 

'Programming > Java' 카테고리의 다른 글

JUnit tutorial  (0) 2014.06.27
java unchecked/checked exception  (0) 2014.05.15
JDNI - Java Directory & Naming Interface  (0) 2014.05.09
jdk 1.5 - annotation / @  (0) 2014.05.08
java <-> c 상호호출  (0) 2014.03.25
Posted by 구차니
Programming/Java2014. 5. 9. 15:23
어떻게 보면.. Class.forName의 네트워크 버전에
LDAP 등과 통합하여 원격 객체에 대한 접속 방법을 제공해주는 녀석으로 생각된다.
이름이 괜히 비슷한 JNI랑은 상관없다.

[링크 : http://en.wikipedia.org/wiki/Java_Naming_and_Directory_Interface]
[링크 : http://docs.oracle.com/javase/7/docs/technotes/guides/jndi/index.htm]
[링크 : http://docs.oracle.com/javase/jndi/tutorial/]
[링크 : http://docs.oracle.com/javase/tutorial/jndi/]
[링크 : http://www.oracle.com/technetwork/java/jndi/index.html]




 

'Programming > Java' 카테고리의 다른 글

java unchecked/checked exception  (0) 2014.05.15
Class.forName  (0) 2014.05.09
jdk 1.5 - annotation / @  (0) 2014.05.08
java <-> c 상호호출  (0) 2014.03.25
java TCP/UCP socket  (0) 2014.03.25
Posted by 구차니
Programming/Java2014. 5. 8. 17:05
spring이나 eclipse를 통해 개발시에 주석으로 간간히 보던 녀석인데
이녀석의 명칭이 바로 annotaion이라고 한다는걸 첨 알았...

아무튼 JDK 1.5부터 추가된 기능으로
spring framework에서 열심히(?) 사용하는 기능이라고 한다.

[링크 : http://docs.oracle.com/javase/tutorial/java/annotations/]
[링크 : http://docs.oracle.com/javase/7/docs/technotes/guides/language/annotations.html]

[링크 : http://www.nextree.co.kr/p5864/]

[링크 : http://docs.spring.io/spring/docs/3.0.0.M3/reference/html/ch16s11.html] spring annotation

[링크 : http://civan.tistory.com/entry/Override-사용하기]
[링크 : http://linuxism.tistory.com/422] annotation 설명(ibm 문서 백업)
[링크 : http://dryang.egloos.com/1942988] annotation 종류
[링크 : http://java.ihoney.pe.kr/95]

'Programming > Java' 카테고리의 다른 글

Class.forName  (0) 2014.05.09
JDNI - Java Directory & Naming Interface  (0) 2014.05.09
java <-> c 상호호출  (0) 2014.03.25
java TCP/UCP socket  (0) 2014.03.25
java object serializable / ObjectInputStream + ObjectOutputStream  (0) 2014.03.24
Posted by 구차니
Programming/Java2014. 3. 25. 21:33
JNI(Java Native Interface)
[링크 : http://docs.oracle.com/javase/6/docs/technotes/guides/jni/]
[링크 : http://en.wikipedia.org/wiki/Java_Native_Interface]

JNI를 통해 자바를 다른 언어에서
혹은 다른 언어에서 자바를 호출할 수 있다.

[링크 : http://deguls.tistory.com/entry/JNI-HelloWorld자바에서-C함수-호출] java에서 c 호출
[링크 : http://scotthan.tistory.com/129]  c에서 java 호출

'Programming > Java' 카테고리의 다른 글

JDNI - Java Directory & Naming Interface  (0) 2014.05.09
jdk 1.5 - annotation / @  (0) 2014.05.08
java TCP/UCP socket  (0) 2014.03.25
java object serializable / ObjectInputStream + ObjectOutputStream  (0) 2014.03.24
Java Input/OutputStream 관련  (0) 2014.03.21
Posted by 구차니
Programming/Java2014. 3. 25. 00:33
TCP는 소켓 자체가 서버용/클라이언트 용으로 나뉘지만
UDP는 컨스트럭터의 인자에 따라서 서버용과 클라이언트용으로 구분된다.

ServerSocket은
accpet() 시에 다른 포트를 return 하게 되는데
이는 서비스 포트를 접속용으로 사용하게 되면 다른 클라이언트들이 접속할 수 없게 되므로 서비스 포트를 비워두기 위함이다.

Server ready...
SRV SOCK localport 3333
ACC SOCK localport 3333, port 2914
Server ready...
SRV SOCK localport 3333
ACC SOCK localport 3333, port 2915 

System.out.println("SRV SOCK localport " + serverSocket.getLocalPort());
System.out.println("ACC SOCK localport " + socket.getLocalPort() + ", port " + socket.getPort()); 




TCP
Server Socket
Socket accept() 
Listens for a connection to be made to this socket and accepts it.
 

[링크 : http://download.java.net/jdk8/docs/api/java/net/ServerSocket.html  

ServerSocket serverS = new ServerSocket(port);
Socket tcpSocket = serverS.accept();
InputStream is = tcpSocket.getInputStream();
OutputStream os = tcpSocket.getOutputStream();
BufferedReader bufferR = new BufferedReader(new InputStreamReader(is));
BufferedWriter bufferW = new BufferedWriter(new OutputStreamWriter(os)); 

bufferR.read();

bufferW.write();
bufferW.flush(); 

Client Socket
Socket tcpSocket = new Socket(ip, port);
InputStream is = tcpSocket.getInputStream();
OutputStream os = tcpSocket.getOutputStream();
BufferedReader bufferR = new BufferedReader(new InputStreamReader(is));
BufferedWriter bufferW = new BufferedWriter(new OutputStreamWriter(os)); 

bufferR.read();

bufferW.write();
bufferW.flush(); 

[링크 : http://download.java.net/jdk8/docs/api/java/net/Socket.html
 


UDP
DatagramPacket(byte[] buf, int length) Constructs for receiving
DatagramPacket(byte[] buf, int length, InetAddress address, int port) Constructs for sending
[링크 : http://download.java.net/jdk8/docs/api/java/net/DatagramPacket.html]

DatagramSocket(int port) Constructs a datagram socket and binds it to the specified port on the local host machine.
DatagramSocket(int port, InetAddress laddr) Creates a datagram socket, bound to the specified local address.

void receive(DatagramPacket p) Receives a datagram packet from this socket.
void send(DatagramPacket p) Sends a datagram packet from this socket.
[링크 : http://download.java.net/jdk8/docs/api/java/net/DatagramSocket.html] 

DatagramSocket ds = new DatagramSocket(port);
DatagramPacket dp = new DatagramPacket(buffer, buffer.length);

ds.receive(dp);
ds.send(dp);



'Programming > Java' 카테고리의 다른 글

jdk 1.5 - annotation / @  (0) 2014.05.08
java <-> c 상호호출  (0) 2014.03.25
java object serializable / ObjectInputStream + ObjectOutputStream  (0) 2014.03.24
Java Input/OutputStream 관련  (0) 2014.03.21
java 8을 윈XP에 설치하자?  (2) 2014.03.20
Posted by 구차니
Programming/Java2014. 3. 24. 16:59
transient 키워드는 객체 저장시 제외할 항목을 지정한다.(예를 들어 런타임 변수등을 저장할 이유는 없으니)

ObjectOutputStram.writeObject()과
ObjectInputStram.readObject()을 오버라이딩 함으로서

파일로 저장(직렬화 해야 파일로 저장이 가능하니)시 저장할 내용을 커스터마이징 할 수 있다.

[링크 : http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html]
[링크 : http://docs.oracle.com/javase/7/docs/api/java/io/ObjectOutputStream.html#writeObject(java.lang.Object)]
[링크 : http://docs.oracle.com/javase/7/docs/api/java/io/ObjectInputStream.html#readObject()]

[링크 : http://docs.oracle.com/javase/tutorial/reflect/member/fieldModifiers.html]
[링크 : http://www.oracle.com/technetwork/articles/java/javaserial-1536170.html ]
[링크 : http://stackoverflow.com/questions/910374/why-does-java-have-transient-variables

'Programming > Java' 카테고리의 다른 글

java <-> c 상호호출  (0) 2014.03.25
java TCP/UCP socket  (0) 2014.03.25
Java Input/OutputStream 관련  (0) 2014.03.21
java 8을 윈XP에 설치하자?  (2) 2014.03.20
java 8 released!!  (0) 2014.03.20
Posted by 구차니