Pyun's

public static JobParameters getJobParameters(Map<String, Object> jobDataMap) {
        String key;
        Object value;
        JobParametersBuilder builder = new JobParametersBuilder();

        if (jobDataMap != null) {

            for (Entry<String, Object> entry : jobDataMap.entrySet()) {
                key = entry.getKey();
                value = entry.getValue();

                if (value instanceof String) {
                    builder.addString(key, (String) value);
                }
                else if (value instanceof Float || value instanceof Double) {
                    builder.addDouble(key, ((Number) value).doubleValue());
                }
                else if (value instanceof Integer || value instanceof Long) {
                    builder.addLong(key, ((Number) value).longValue());
                }
                else if (value instanceof Date) {
                    builder.addDate(key, (Date) value);
                }
                else {

                    if (LOG.isDebugEnabled()) {
                        LOG.debug("JobDataMap contains values which are not job parameters (ignoring).");
                    }
                }
            }
        }

        return builder.toJobParameters();
    }

업무중 배운것들

JAVA2021. 7. 27. 10:33

'JAVA' 카테고리의 다른 글

JPA 공부  (0) 2020.12.10
Spring WEB 한글깨짐 수정방법  (0) 2017.07.25
스프링 기초.1  (0) 2017.06.19
스프링 연습중에 발생한 문제....  (0) 2017.06.19
Git 기초 정리한 사이트  (0) 2017.03.23

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

확인

--오라클

LISTAGG(aaa,',') WITHIN GROUP(ORDER BY aaa) AS  aaa, 

--단순히 aaa필드를 , 구분값으로 합친다

regexp_replace(LISTAGG( bbb|| ',' ) WITHIN GROUP ( ORDER BY bbb), '([^,]+)(,\1)+', '\1') bbb, 

--bbb 필드 한줄로 합칠경우 중복 제거 후 합친다


mysql 버전


            group_concat(distinct(aaa)) AS aaa 

--aaa필드 한줄로 합칠경우 중복 제거 후 합친다

web.xml 파일에

<!-- UTF8 세팅 -->

<filter>

<filter-name>encodingFilter</filter-name>

<filter-class>

org.springframework.web.filter.CharacterEncodingFilter

</filter-class>

<init-param>

<param-name>encoding</param-name>

<param-value>UTF-8</param-value>

</init-param>

<init-param>

<param-name>forceEncoding</param-name>

<param-value>true</param-value>

</init-param>

</filter>

<filter-mapping>

<filter-name>encodingFilter</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>


추가.

'JAVA' 카테고리의 다른 글

업무중 배운것들  (0) 2021.07.27
JPA 공부  (0) 2020.12.10
스프링 기초.1  (0) 2017.06.19
스프링 연습중에 발생한 문제....  (0) 2017.06.19
Git 기초 정리한 사이트  (0) 2017.03.23

1. 생성자를 이용할 때에는 <constructor-arg/> 사용

2. setter 이용할 때에는 <property name="필드명"> 사용


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

3. bean에서 네임스페이스를 통한 setting 시 c:[필드명] , p:[필드명] 방식이있는데 

 c:[필드명] 방식은 생성자를 이용한 방식이고

 p:[필드명] 방식은 setter를 이용한방식


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

 4.단 네임스페이스를 사용하기 위해선 XML파일에 해당 네임스페이스를 beans 태그 안에서 사용하겠다 라고 선언해야됨

xmlns:c="http://www.springframework.org/schema/c"

xmlns:p="http://www.springframework.org/schema/p"



5.  Spring Frame 워크 개발중  ...........CGLIB is required to process @Configuration classes. Either add CGLIB to the classpath or remove ........... 에러발생시

com.springsource.net.sf.cglib-2.1.3.jar

다운받고 라이브러리 추가하면됨..


6. JAVA 파일에서 에서 DI 를 선언하려면 클래스 파일명 앞에 @Configuration 사용 사용하려는 bean객에 앞에 @Bean 선언하면 사용가능.


7. xml cofig 파일에다가 자바에서 선언한 DI를 사용하려면 아래와 같이 XML에 넣어주면 됨

<context:annotation-config /> 

<bean class="class 위치" />

 역으로 xml config 파일을 자바파일에서 사용하려면 @Configuration 테크 아래 @ImportResource("config파일명"); 선언 후 사용 하면 된다.

스프링 기초.1

JAVA2017. 6. 19. 13:41

1. DI(Dependency Injection, 의존성 주입)

 - 개념 : 각 객체간의 결합도를 낮추기 위해 나누어서 만들고 나중에 각 객체를 결합시켜서 사용하는 과정

 - 종류 : 세터주입(Setter Injection), 생성자주입(Contrunction Injection)

 - 스프링에서는 주입과정이 동적(XML에 설정되어 있는 대로)으로 자동화 되어있음


2. IoC(Inversion of Control, 제어역전)

 - 스프링 DI과정에서 작은객체부터 큰객체순서로 결합되는데 이를 제어역전 이라고 한다.


3. AOP(Aspect Oriented Programming, 관점 지향 프로그래밍)

 - 주업무가 아닌 보조업무(로그, 트랜잭션, 보안처리)를 코드상에서 분리하는것

 - 즉, 코드를 나누는 기준을 한 과정이 아닌 한 관점을 기준으로 나누어 놓는것


4. MVC(Model View Controller)

 - 사용자가 Controller를 조작하면 Controller는 Model을 통해서 데이터를 가져오고, 그 데이터를 바탕으로 View를 제어해서 사용자에게 전달하는 디자인 패턴


'JAVA' 카테고리의 다른 글

JPA 공부  (0) 2020.12.10
Spring WEB 한글깨짐 수정방법  (0) 2017.07.25
스프링 연습중에 발생한 문제....  (0) 2017.06.19
Git 기초 정리한 사이트  (0) 2017.03.23
[프레임워크] Framework 정리.  (0) 2017.03.14


  빌드 패스 문제 자꾸 나길래 인터넷에서 자바 패스 잡고 어쩌구 저쩌구 다따라해봣는데 안됬음...

그러다 찾는게 

spring-framework.version  문제... 17.06.19 기준으로 Sping 프로젝트 생성시 framework 버전이 3.5.0 으로 생성되는데 이버전에서는 GenericXmlApplicationContext 사용이 조금 다른가봄...

버전 우선 3.0.5로 변경했는데 다른버전 사용가능한지는 찾아봐야될듯


<!-- Spring -->

<spring-framework.version>3.0.5.RELEASE</spring-framework.version>



'JAVA' 카테고리의 다른 글

Spring WEB 한글깨짐 수정방법  (0) 2017.07.25
스프링 기초.1  (0) 2017.06.19
Git 기초 정리한 사이트  (0) 2017.03.23
[프레임워크] Framework 정리.  (0) 2017.03.14
JDK 버전별 다운로드 링크  (0) 2017.03.09

1. REST

1.1 REST (Representational State Transfer, 표현 상태 정의)

가. 정의

REST는 네트워크 구조원리의 모음, 리소스를 정의하고 자원에 대한 주소를 지정하는 방법에 대한 조건. , 도메인 지향 데이터를 HTTP 위에서 부가적인 전송 레이어 없이 전송하기 위한 간단한 구조를 정의한 것.

나. REST의 제약조건 (모든 조건을 만족하는 것을 'RESTful'하다고 함.)

1) 클라이언트/서버(Client/Server) : 웹의 일관된 인터페이스를 따른 다는 전제하에 클라이언트와 서버는 독립적으로 구현되어야함.

2) 균일한 인터페이스 (Uniform Interface): 자원 식별, 표현을 통한 자원처리, 자기 서술적 메시지, HATEOAS 같은 인터페이스 제약에 따라 서로 일관성 있게 상호 운영되어야한다.

3) 계층시스템(Layered System) : 웹의 일관된 인터페이스를 사용해서 프락시 또는 게이트웨이 같은 네트워크 기반의 중간매체를 사용할 수 있어야 한다.

4) 캐시 처리(Cacheable) : 웹 서버가 응답 데이터마다 캐시 여부를 선언 할 수 있어야 한다.

5) 무상태(Stateless) : 웹 서버가 클라이언트의 상태를 관리할 필요가 없어야 한다.

6) 주문형 코드(Code-on-demand) : 선택 사항으로 스크립트나 플러그인 같은 실행 가능한 프로그램을 클라이언트에 전송하여 클라이언트가 실행할 수 있도록 해야 한다.



1.2 REST API

가. 정의

1)웹 서비스는 네트워크상에서 서로 다른 시스템간의 상호 작용을 위한기술.

2)주고받는 데이터 형식에 대한 표준을 정의함으로써 플랫폼과 프로그램 언어와는 독립된 방법으로 서로 연동 가능.

3)클라이언트가 웹 서버에서 제공하는 API이용하여 데이터와 기능을 제공 받을 수 있다.

*API(Application Programming Interface): 운영체제와 응용프로그램 사이의 통신에 사용되는 언어나 메시지 형식을 말한다.

4) 기존에는 SOAP(Simple Object Access Protocol)을 기반으로 웹서비스를 구현 했으나 처리 오버헤드 및 복잡성 때문에 요즘은 REST구조 스타일을 주로 사용.



1.3 REST에서의 Resource

가. 정의

1) REST API는 URI경로를 사용해서 자원을 나타내고 포인트 슬래시(/)로 경로 구문을 나눈다. 이 경로 구문은 자원 계층에서 유일한 자원을 나타낸다.

2) REST API에서는 CRUD 기능을 수핼 할 때는 URI(Uniform Resource Identifier)에 나타내지 않는다. 즉 URI는 자원을 식별 할때만 사용하고, CRUD 기능을 수행 할 때에는 HTTP Request Method를 사용한다.

 HTTP Method 

 의미 

 CRUD 

 예제 

 POST

 새로운 자원을 생성한다. 

 Create 

 POST /books 

 GET 

 자원을 조사한다.

 Read

 GET /books/1 

 PUT 

 기존에 존재하는 자원을 변경한다.

 Update

 PUT /books/1 

 DELETE 

 기존에 존재하는 자원을 삭제한다.

 Delete

 DELET /books/1 



1.4 Spring Web MVC

가. Modal 1 Pattern VS Modal 2 Pattern

1) Pattern : 수많은 시행착오를 통해서 좀더 효율적인 방법들을 체계화시키고 정리한 것.

■Model 1 

  1) 예전에 많이 사용하던 개발방식, 사용자에 요청을 서블릿이나 JSP가 받아서 필요한 자바빈을 효출후 결과값을 출력.

  2) 개발 속도가 빠르고 쉽다는 장점이 잇으나 로직이 섞여 있어서 디자인 영역과에 구분이 어려워지고 코드가 복잡해지는 단점이 있다.

■Model 2

  1) MVC 패턴을 이용함. MVC 패턴이란 Model,  View, Controller 세 영역으로 나누어지는 구조로 된 어플리케이션이다.

  2) 서로에 대한 역할이 명확하기 때문에 각가의 영역에 대한 독립성을 보장한다.

   Model 영역      : 어플리케이션에서 사용되는 데이터를 다루고너 비즈니스 로직을 다루는 영역.

   View 영역        : View영역을 통해서 사용자가 보는 웹페이지를 생성하는 영역. 

   Controller 영역 : Model 영역과 View영역 간의 흐름을 제어하는 역할. 클라이언트의 요청을 받아 이를 처리하기 위한 Model 영역을 호출하고 그결과를 View                            에게 전달.

   * MVC 패턴은 각각에 역할이 명확하게 나누어져 있기 때문에 오직 각 부분에서 담당하는 기능만 구현하면 된다.

나.  Spring Web MVC

      1) Spring에서 제공해주는 MVC 프레임워크

      2) Spring에 기능을 그대로 사용하면서 MVC 패턴에 기반을 둔 웹어플리케이션 개발 방법.


--임시 http://maven.apache.org/download.cgi 메이븐 저장

-- DB_LINK 확인

SELECT * FROM ALL_DB_LINKS;


-- DB_LINK 생성하는 방법

1. tnsora 파일에 연결하려는 DB_LINK 설정 정보 생성

2. db링크 적용할 오라클  계정 접속

3.DB_LINK 생성

-tnsora 파일에 등록되있는경우

 CREATE DATABASE LINK "DB_LINK명" --DB_LINK명

 CONNECT TO "USERID"

 IDENTIFIED BY "USERPW" 

 USING 'SERVICENAME' --HOST필드에 들어감

 

-tnsora 파일에 등록되지 않은 경우

 CREATE DATABASE LINK "DB_LINK명" --DB_LINK명

 CONNECT TO "USERID"

 IDENTIFIED BY "USERPW" 

 USING '(DESCRIPTION =

   (ADDRESS = (PROTOCOL= TCP)(Host=XXX.XXXX.XXXX.XXXX )(Port= XXXX))

    (CONNECT_DATA = (SID = XXXX))

  )' <<< tns 정보 입력 풀로

 

 

4.DB_LINK 삭제

DROP DATABASE LINK DB_LINK명

'Webservice > 연동' 카테고리의 다른 글

[SOAP] SOAP 특징/ 장단점  (0) 2017.03.10
[REST] REST 특징/장단점  (0) 2017.03.09
[SOAP / REST] SOAP과 REST ..1  (0) 2017.03.08