728x90
300x250

[Java(자바)]  barbecue 바코드 생성 라이브러리

이번에 소개할 내용은 barbecue(바베큐) 바코드 생성 라이브러리에 대해서 소개하고자 한다.


1. 적용 라이선스

오픈소스 "BSD License(이하 "비에스디 라이선스")를 적용받는다.

http://barbecue.sourceforge.net 

 


2. 이클립스에서의 셋팅방법

프로젝트 환경설정에서 Liberies에 ClassPath(클래스패스)에 "Add External JARS..."를 클릭해서 등록해서 사용하면 된다.

그림 1. 프로젝트 속성 -> 라이브러리에 클래스패스에 Jar파일 등록하기

그림 2. 프로젝트 속성, Order and Export("읽기: 오더 엔 익스폴트")

jdom("읽기: 제이돔")과 barbecue("읽기: 바베큐")를 체크한다.

Apply("읽기: 어플라이", "뜻: 적용")을 클릭한다.

 


3. 이클립스 - 자바 소스코드

다음처럼 소스코드를 작성하여 적용할 수 있다.

package com.barcode.sample;

import java.io.File;
import net.sourceforge.barbecue.Barcode;
import net.sourceforge.barbecue.BarcodeFactory;
import net.sourceforge.barbecue.BarcodeImageHandler;

public class Program {

     public static void main(String[] args) {
          String str = "123412341234";
          try {

               Barcode barcode = BarcodeFactory.createCode128(str);
               File file = new File("c:/barcode1.png");

              BarcodeImageHandler.savePNG(barcode, file);
         } catch (Exception e) {
              e.printStackTrace();
         }
    }

}

4. 바코드 생성 모습

실제 적용되는 바코드의 모습이다. 바코드 입출력 장치(이하 "바코드 스캐너라고도 불림. 글자 입력방식의 장치")로
식별하면 인식된다.

 

그림 3. 바코드 생성 모습의 예

 


5. 라이브러리 첨부(Library)

barbecue-1.5-beta1.zip
0.84MB

BSD License를 적용받는다.

 


6. 첨부(Attachment)

 

Sample_Code_Java.zip
0.00MB

자바에 적용된 코드이다. 많은 도움이 되었으면 한다.

 

210309_Java_Barbecue_Barcode_Create_Guideline.zip
0.91MB

[Apache Licence v2.0을 적용받는다.]


* 맺음글(Conclusion)

자바에서 바코드를 생성하는 방법에 대해서 살펴보았다.


* 참고자료(References)

1. Barbecue project, http://barbecue.sourceforge.net, Accessed by 2021-03-09, Last Modified 2021-03-09.

2. OpenJDK (java.net), http://openjdk.java.net, Accessed by 2021-03-09, Last Modified 2021-03-09.

3. Enabling Open Innovation & Collaboration | The Eclipse Foundation, http://www.eclipse.org, Accessed by 2021-03-09, Last Modified 2021-03-09.

4. JDOM, http://www.jdom.org, Accessed by 2021-03-09, Last Modified 2021-03-09.

반응형
728x90
300x250

[컴퓨터(PC활용)] - 전자정부프레임워크(이클립스)에서 C++, PHP, Swing 등 - 기능 추가


이번에 소개할 내용은 전자정부프레임워크(이하 "이클립스")에서 C/C++, PHP, Swing 등을 개발하기 위한 기능을 추가로 설치하는 방법에 대해서 소개하겠다.


About this time I will introduce what you are about to install additional features for developing C / C ++, PHP, Swing, etc. In the framework of e-government (hereinafter referred to as "Eclipse").


[기능 추가(Add function)]

1. C/C++

2. PHP

3. Java - Swing, WindowBuilder



1. 소개(Introduce)


전자정부 프레임워크(이하 "이클립스")로 다양한 프로그래밍 개발이 가능하다.
To e-government framework (the "Eclipse"), it is possible to develop a variety of programming.



그림 1. 전자정부 프레임워크 - Install New Software....



그림 2. 전자정부 프레임워크 - Install New Software....




그림 3. 전자정부 프레임워크 - Install New Software....



그림 4. 전자정부 프레임워크 - Install New Software....



2. 프로젝트 생성(Create Project)


전자정부 이클립스로 프로젝트를 생성하면, 새로운 플러그인들이 추가된 것을 확인할 수 있다.


If you create a project with e-Government Eclipse, you can see that new plugins have been added.



그림 5. 프로젝트 생성 모습




3. 첨부(Attachment)


210103_eGovFramework_Eclipse_c_cpp_php_swing_windowbuilder_guide.zip

[GNU/GPL v3 License를 적용받는다.]




* 맺음글(Conclusion)


전자정부 프레임워크(이하 "이클립스")로 "c/c++", "PHP", "Swing, WindowBuilder" 등 기능 추가하는 방법에 대해 살펴보았다.


In the framework of e-government(Eclipse IDE) looked for ways to add "c / c ++", "PHP", "Swing, WindowBuilder" such functions.



* 참고자료(Reference)



반응형
728x90
300x250

[GNU(리눅스[Linux]) - 리눅스민트20 - 아파치 톰캣 8.5와 전자정부프레임워크(이클립스) 사용하기


이번에 소개할 내용은 리눅스민트20에서 아파치 톰캣 8.5와 전자정부프레임워크(이하 "이클립스")가 연동될 수 있는 방법에 대해서 소개하고자 한다.


This time, I will introduce how Apache Tomcat 8.5 and e-government framework (hereinafter "Eclipse") can be linked in Linux Mint 20.


[라이선스(Licenses)]

* LinuxMint 20 (GNU/GPL v2 License)

* OpenJDK 15 (GNU/GPL v2 License)

* Apache Tomcat 8.5 (Apache License)

* eGovFramework Eclipse 3.9 (Apache License)



1. 소개(Introduce)


아래의 그림은 몇 가지 셋팅 오류는 있을 수 있겠으나, 전자정부 프레임워크(이하 "이클립스")가 리눅스민트에서 정상적으로 잘 동작하는 모습이다.


The figure below shows that there may be some setting errors, but the e-government framework (hereinafter "Eclipse") works well in Linux Mint.




그림 1. 전자정부 프레임워크 - 리눅스민트 20에서 사용하기


그림 2. 전자정부 프레임워크 war 파일 배포 모습 - 리눅스민트 20




그림 3. 전자정부 프레임워크 (톰캣 8.5에서 웹사이트 동작 모습)- 리눅스민트 20



2. 첨부(Attachment)


201222_Linuxmint_20_eGovFramework_Eclipse_Apache_Tomcat_8_5_guide_pptx.z01

201222_Linuxmint_20_eGovFramework_Eclipse_Apache_Tomcat_8_5_guide_pptx.zip

201222_Linuxmint_20_eGovFramework_Eclipse_Apache_Tomcat_8_5_guide_pdf.zip


[GNU/GPL v3 License를 적용 받는다.]



* 맺음글(Conclusion)


리눅스민트20, Apache Tomcat 8.5, OpenJDK 15, 전자정부프레임워크 이클립스를 사용하는 방법에 대해서 소개하였다.

Linux Mint 20, Apache Tomcat 8.5, OpenJDK 15, e-government was introduced about how to use the Eclipse framework.



* 참고자료(References)


1. eGovFramePortal 온라인 지원 포탈, https://www.egovframe.go.kr, Accessed by 2021-01-01, Last Modified 2021-01-01.

2. Main Page - Linux Mint, https://linuxmint.com, Accessed by 2021-01-01, Last Modified 2021-01-01.

3. OpenJDK, https://openjdk.java.net, Accessed by 2021-01-01, Last Modified 2021-01-01.

4. Apache Tomcat - Welcome!, https://tomcat.apache.org, Accessed by 2021-01-01, Last Modified 2021-01-01.

반응형
728x90
300x250

[GNU[리눅스(Linux)] - CentOS Stream 8, Apache Tomcat 8.5, 전자정부프레임워크 이클립스 사용하기


이번에 소개할 내용은 CentOS Stream 8 설치를 시작으로 해서, Apache Tomcat 8.5를 연동하는 방법에 대해서 소개하려고 한다.

양이 다소 방대하니, 프리젠테이션 파일과 PDF 파일로 작성하였다.


도움이 되었으면 한다.


This time, I will introduce how to integrate Apache Tomcat 8.5 starting with CentOS Stream 8 installation.

The volume is rather large, so I wrote a presentation file and a PDF file.

I hope it helps.



1. 동작 모습(Operation state)


아래의 그림은 CentOS Stream에서 Apache Tomcat 8.5와 전자정부 프레임워크(이클립스)를 구동한 모습이다.


그림 1. CentOS Stream 8에서 전자정부프레임워크 이클립스 동작하는 모습(톰캣 8.5)


[라이선스(Licenses)]

* CentOS Stream 8 (GNU/GPL v2 License)

* OpenJDK 14 (GNU/GPL v2 License)

* Apache Tomcat 8.5 (Apache License)

* eGovFramework Eclipse 3.9 (Apache License)




[첨부(Attachments)]


201223_CentOS_Stream_Apache_Tomcat_8_5_eGovFrameworkDev_Guide_pdf.zip

201223_CentOS_Stream_Apache_Tomcat_8_5_eGovFrameworkDev_Guide_pptx.z01

201223_CentOS_Stream_Apache_Tomcat_8_5_eGovFrameworkDev_Guide_pptx.zip

[GNU/GPL v3 License를 적용 받는다.]



* 맺음글(Conclusion)


CentOS Stream 8과 Apache Tomcat 8.5, OpenJDK 14, 전자정부프레임워크 이클립스를 사용하는 방법에 대해서 소개하였다.



* 참고자료(References)


1. eGovFramePortal 온라인 지원 포탈, https://www.egovframe.go.kr, Accessed by 2021-01-01, Last Modified 2021-01-01.

2. The CentOS Project, https://www.centos.org, Accessed by 2021-01-01, Last Modified 2021-01-01.

3. OpenJDK, https://openjdk.java.net, Accessed by 2021-01-01, Last Modified 2021-01-01.

4. Apache Tomcat - Welcome!, https://tomcat.apache.org, Accessed by 2021-01-01, Last Modified 2021-01-01.

반응형
728x90
300x250

[JSP] 29. 프로젝트 구성 방법 - Eclipse로 살펴보는 보안 프로젝트 구성


오랜만에 글을 작성한다.

이번에 소개할 내용은 시큐어코딩에 대해서 몇 가지 주제를 가지고 소개하려고 한다.

프로젝트 생성 방법에 대해서 몇 가지 소개하려고 한다.


장점: 정보를 보호할 수 있음.

단점: 정보를 보호하는 대신에 개발 메뉴얼 등이 요구됨.

       오류가 나면, 코어 소스를 가지고 있는 인원에 대응해야 하는 한계가 있음.


* 규모가 큰 프로젝트에 적합할 수 있다.

* 갈등이 많은 작은 규모에서도 고려할 수 있다.



1. 프로젝트 생성 방법


기존의 코딩 방법과는 몇 가지 차이가 있을 수 있다.


 


그림 1. 프로젝트 구성의 예1) 보안이 적용된 모습

그림 2. 프로젝트 구성의 예2 - 보안이 적용되지 않는 모습


일반적인 경우라고 하면, 그림 2처럼 프로젝트를 생성하고 개발할 것이다.

그림 1의 방법으로 하면 무엇이 장점이 되는지 소개하도록 하겠다.



2. 불필요한 정보 - 은닉하기


예를 들어서 개발자가 있다고 가정하자.

개발자와 DBA의 권한은 또 한 차원 다른 문제가 된다.

불필요하게 개발자가 DBMS에 접근하여 정보를 조작하는 행위를 가급적 안 하는 것이 좋을 수 있다.

이러한 문제에 직면했을 때, 실질적인 이론 말고 코드와 프로젝트 구성으로서 어떻게 방어해야 할지 알아두면 좋을 듯싶다.


 


그림 3. 정보 은닉이 완료된 시큐어코드


그림 3은 정보 은닉이 완료된 시큐어코드이다.

무슨 이야기인지 그림 4를 살펴 보면서 소개하도록 하겠다.


 

그림 4. jar 파일로 컴파일하기


그림 4는 jar 파일로 공통 함수를 컴파일된 Library를 불러온 것이다.

이렇게 해버리면, 개발자는 제공된 공통함수만 가지고 코딩을 해야 하므로, "서버 계정", "DB 정보" 등 불필요한 요소들에 대해서

접근할 필요가 없어진다.


개발자는 설계된 테이블에 대해서 SELECT, INSERT, DELETE, UPDATE 기능만 구현해주면 된다.


물론 이게 전부 시큐어코딩이라고는 볼 수 없다. 해독하는 프로그램도 종종 있을 수 있기 때문이다.

다만, 정보 노출을 최소화하는 역할을 한다고 보면 된다.



3. 사용 방법(Jar - Export하기)


"Dodo_SmartCoreWeb" 프로젝트를 마우스 오른쪽 버튼을 누른다.

"Export"를 클릭한다.


 

 그림 5. Export 하기


그리고 Jar 파일로 Export할 대상을 선택한다.


 

 그림 6. Jar 파일 - Export하기


JAR file 경로를 "Browse"를 눌러서 지정해준 다음에 "Finish"를 누른다.



4. 사용 방법(Jar - Properties의 Java Build-Path의 Libraries에 User Libraries 등록하기)


프로젝트를 마우스 오른쪽 버튼으로 클릭한다.



그림 7. 프로젝트 속성 - Properties


프로젝트를 클릭한다.

마우스 오른쪽 버튼을 누른다.

Properties를 클릭한다.



그림 8. 프로젝트 속성 - Properties


Java Build Path를 클릭한다.

Libraries 탭을 클릭한다.

Add Library를 클릭한다.



그림 9. Add Library


User Library를 선택한다.

Next를 누른다.




그림 10. Add Library - User Libraries...


User Library를 선택한다.

Next를 누른다.



그림 11. Properties의 User Libraries


New를 클릭한다.



그림 12. New User Library


예를 들면 "HelloCore"라고 입력한다.

OK를 누른다.



그림 13. JAR Selection 모습


Add Jars를 누른다.

예를 들면, SmartWorkJar.jar를 선택한다.

OK를 누른다.



그림 14. Preferences의 모습


등록된 HelloCore의 User Libraries 모습을 확인할 수 있다.

Apply and Close를 누른다.



그림 15. Add Library 창


HelloCore를 선택하고 Finish를 누른다.



그림 16. Java Build Path에 등록된 Hello Core


Java Build Path에 등록된 "HelloCore"를 살펴볼 수 있다.



5. 기대효과


불필요한 소스 코드를 줄이고, 개발자, 관리자, DBA 등 업무 분담 형태의 개발을 구성할 수 있다.

물론, 보안코드를 요구하는 곳에는 이런 형태로 구성할 수 있다.

반응형
728x90
300x250

[PC 활용] Eclipse 2020-06에서 STS(Spring Tool-Suites) 설치하기


Eclipse IDE를 사용하는 유저를 대상으로 작성된 글이다.

Spring.io 사이트에서 STS(Spring Tool-Suites)를 내려받아도 되지만, 순정 Eclipse에서 플러그인 형태에서 설치하는 것도 지원한다.


[작업 환경]

* OS: Microsoft Windows 10

* IDE: Eclipse 2020-06
{순정 상태}




1. Eclipse Marketplace


Help->Eclipse Marketplace를 클릭한다.


그림 1. STS 검색하기


STS라고 검색한다.


"Spring Tools 3 Add-On for Spring Tools 4 3.9.14. RELEASE"를 찾아서 Install을 누른다.



그림 2. STS 설치하기


전부 다 설치해야 한다. 설치 내역을 확인한 후 "Confirm"을 누른다.


(중략하였음.)



2. 확인해보기


File -> New -> Others를 클릭한다.

참고로 초기 세팅에서는 File-> New 메뉴에 Spring Project가 바로 보이진 않을 것이다.

그래서 Others를 클릭하는 것이다.



그림 3. STS 프로젝트 생성의 예


Spring 프로젝트가 지원되는 것을 확인할 수 있다.



반응형
728x90
300x250

[PC활용] 자바 - JDK 버전 별 - Eclipse IDE 정리


자바 JDK 버전 별로 사용가능한 이클립스가 있다.

협업 프로젝트를 하다보면, 이런 것도 맞춰줘야 하는 부분이 생긴다.


최신 버전만 가지고 진행할 수 없는 일들이 생길 수 있을 거 같아서 정리하게 되었다.



1. 이클립스 버전명 및 요구사항


이클립스 버전명 및 요구사항을 정리하였다.

정리하는 이유는 구 버전 이클립스를 제공해줘버리면, 


하위 버전의 JDK를 설치해야 하는 문제가 생기는데, 꽤나 골치 아프게 된다.




                                      표 1. 이클립스 버전명 및 요구사항


번호

이클립스 버전명

요구사항

비고

1

Eclipse 4.17 (2020-09)

A Java 11 or newer JRE/JDK is required,

(Java 11 이상 JRE / JDK가 필요합니다.)

 

2

Eclipse 4.16 (2020-06)

A Java 8 or newer JRE/JDK is required, 

LTS release are preferred

(Java 8 이상 JRE / JDK가 필요합니다.

LTS 릴리스가 선호됨)

 

3

Eclipse 4.14 (2019-12)

A Java 8 or newer JRE/JDK is required.

(Java 8 이상 JRE / JDK가 필요합니다.)

 

4

Eclipse 4.13 (2019-09)

A Java 8 or newer JRE/JDK is required.
(Java 8 이상 JRE / JDK가 필요합니다.)

 

5

Eclipse 4.12 (2019-06)

A Java 8 or newer JRE/JDK is required

(Java 8 이상 JRE / JDK가 필요합니다.)

 

6

Eclipse 4.11 (2019-03)

A Java 8 or newer JRE/JDK is required

(Java 8 이상 JRE / JDK가 필요합니다.)

 

7

Eclipse 4.10 (2018-12)

A Java 8 or newer JRE/JDK is required

(Java 8 이상 JRE / JDK가 필요합니다.)

 

8

Eclipse 4.9 (2018-09)

A Java 8 or newer JRE/JDK is required

(Java 8 이상 JRE / JDK가 필요합니다.) 

 

9

Eclipse 4.8 (Photon)

 A Java 8 or newer JRE/JDK is required

(Java 8 이상 JRE / JDK가 필요합니다.) 

 

10

Eclipse 4.7 (Oxygen)

A Java 8 or newer JRE/JDK is required

(Java 8 이상 JRE / JDK가 필요합니다.)

 

11

Eclipse 4.6 (Neon)

A Java 8 or newer JRE/JDK is required

(Java 8 이상 JRE / JDK가 필요합니다.) 

 

12

Eclipse 4.5 (Mars)

A Java 7 or newer JRE/JDK is required

(Java 7 이상 JRE / JDK가 필요합니다.)

 

13

Eclipse 4.4 (Luna)

A Java 7 JRE/JDK is required

(Java 7 JRE / JDK가 필요합니다.)

 

14

Eclipse 4.3 (Kepler)

A Java 6 JRE/JDK is recommended

(Java 6 JRE / JDK 권장)

 

15

 

 

 


* 참고 사이트: https://wiki.eclipse.org/Eclipse/Installation





2. JDK 버전


JDK를 배포하는 사이트이다. (오픈소스 형태의 JDK)


* Corretto JDK(OpenJDK): https://aws.amazon.com/ko/corretto/

  (배포 버전: 8, 11) - 64bit 가능함.

* OpenJDK: https://openjdk.java.net/
              
https://jdk.java.net/archive/ (이전 버전: 아카이브)

  (배포 버전: 7~버전부터)

  - 단점: 7, 8버전이 32bit로 되어 있음. 9.04버전부터 64bit 지원함.

반응형
728x90
300x250

[PC활용] Eclipse 웹 프로젝트에서 jar 파일 셋팅하기


Eclipse에서 종종 Maven POM으로 진행이 되지 않는 수동으로 library를 셋팅해줘야 할 경우가 있다.

예를 들면, Oracle JDBC의 jar파일 등록 문제도 해당되는 주제라고 보면 된다.


적용 대상: Eclipse로 진행하는 자바 웹 프로젝트
(예: Dynamic Web Project, Spring MVC Project, Spring Starter Project(Boot), 등)



1. Properties의 Build Path에 등록하면 되는가?


Eclipse Photon 포함해서 이전 IDE에서는 동작이 안 된다.

이전의 Swing Project, Java Project 등에서는 가능한 방식이지만, 웹 프로젝트에서는 안 된다.



그림 1. 웹 프로젝트에서 "Class Path"가 있는 경우에는 가능함

        (최신 이클립스 버전 또는 Spring Tool-Suites는 지원)





2. 세 가지 방식이 있다.


하나는 톰캣 서버의 lib에 등록해준다.

-> 문제는 개발자 작업환경에서는 동작하는데 배포환경에서 동작 안 될 수도 있다.

배포 환경의 톰캣 서버에도 똑같이 톰캣 lib 폴더에 jar 파일을 넣어줘야 한다.



그림 2. 톰캣의 lib 폴더에 넣어주기


참고: 개발자 환경의 태스트 톰캣에도 똑같이 해줘야 함.

      서버 환경으로 올릴 때도 똑같이 lib에 넣어줘야 함.


이유는 war 배포시 외부 jar 파일이 따라가질 못해서 그렇다.


두 번째는 JDK 폴더의 lib에 넣어주는 방식이다.



그림 3. Java(JDK)의 lib 폴더에 넣어주기


참고: 개발자 환경의 태스트 톰캣에도 똑같이 해줘야 함.

      서버 환경으로 올릴 때도 똑같이 lib에 넣어줘야 함


이유는 war 배포시 외부 jar 파일이 따라가질 못해서 그렇다.


세 번째는 프로젝트의 WEB-INF\lib폴더 생성 후에 jar 파일을 넣어주는 방식이다.



그림 4. lib 폴더에 jar 파일 넣기


War 배포 시 같이 외부 jar 파일도 lib에 포함되서 배포된다.



* 맺음글(Conclusion)


외부 배포에 있어서 사소한 차이이지만, 알아야 할 필수적인 내용이라고 생각되서 작성하게 되었다.


- 이 문제를 정리하게 된 계기는 Oracle의 Oracle JDBC jar 파일이 POM으로는 등록이 되지 않는 문제가 있기 때문이다.


반응형

+ Recent posts