반응형

 

1. 던담에서 캐릭터 랭킹 검색

http://dundam.xyz/

 

던전앤파이터 데미지 계산기

캐릭터명 검색만하시면 딜이 나옵니다.

dundam.xyz

 

2. 해당 캐릭터의 스킬트리 검색

http://dnfa.kr/

 

던파 어시스트

빠른검색 정밀검색 카인 디레지에 시로코 프레이 카시야스 힐더 안톤 바칼 전체

dnfa.kr

 

반응형

'Game > 던전앤파이터' 카테고리의 다른 글

Themida 오류 관련  (6) 2016.04.13
직업 및 주력 스킬 별 고댐 및 퍼댐 분류  (0) 2016.01.03
던파 5월 18일 기준 광렙업 루트  (0) 2015.06.24
던파 광렙업 루트  (4) 2014.12.23
던파 불법 프로그램 목록  (0) 2011.01.22
반응형

https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/

반응형
반응형


TDD (테스트 주도 개발)

 

Selenium (Selenium WebDriver, Selenium IDE,Selenium-Sauce Labs[클라우드 테스트]) - UI 단까지 테스트 가능
  > Selenium은 Java UI Testing에서 가장 많이 사용되는 도구 중 하나로 브라우저에서 활성화하지 않고도 JSP 페이지를 테스트 할 수 있습니다.
    JUnit과 Selenium을 사용하여 웹 애플리케이션 UI를 테스트 할 수 있으며 웹 애플리케이션 승인 테스트도 작성할 수 있습니다.

Cucuber 
  > 자동화 된 통합 테스트를위한 또 다른 훌륭한 도구이지만 다른 도구와 다른 점이 무엇입니까? 
    같은 그룹에있는 것은 특정 능력입니다.
    Cucuber는 하나의 문서에서 Merge, Specification 및 Test Documentation을 수행합니다. 
    그러면 오이가 자동으로 테스트됩니다. 
    귀하의 정보는 항상 업데이트됩니다.

Junit - IDE의 단위 테스트 제공
Mockito - 단위 테스트를 위한 Java mocking Framework
  > PowerMock, JMock과 같은 Java 클래스 용 Mocking Framework는 많이 있지만 Mockito는 간단한 API, 문서이므로 많은 사람들이 좋아합니다. 
    훌륭하고 많은 예가 있습니다.
    Mocking은 코드를 개별적으로 테스트 할 수 있기 때문에이 시대의 단위 테스트의 중요한 기술 중 하나입니다. 
    무엇이든 의지 할 필요없이 이것이 바로 모든 Java 개발자가 JUnit과 함께 Mocking Framework를 배우는 이유입니다.
    그러나 Mockito가 마음에 들지 않으면 PowerMock 또는 JMock을 대안으로 사용할 수 있습니다.

TestNg
  > TestNG는  JUnit 및 NUnit에서 영감을 얻은 테스팅 프레임 워크 이지만 
    더 효율적이고 사용하기 쉬운 새로운 기능 (예 : 주석), 정책으로 즉시 대형 스레드 풀에서 테스트 실행 다양하게 사용할 수 있습니다 
    (스레드의 모든 메소드, 테스트 클래스 당 1 개의 스레드 등)

Spring Test 
  > Spring MVC는 매우 유용한 Test Framework를 제공한다. 웹 컨테이너를 사용하지 않고도 깊이있는 테스트가 가능합니다.
    스프링 애플리케이션에 자동화 된 테스트를 작성하는 데 가장 유용한 라이브러리 중 하나이며, 
    MVC 컨트롤러를 포함한 스프링 기반 애플리케이션에 단위 및 통합 테스트를 작성하기위한 지원을 제공합니다.

    또한 DbUnit과 Spring Test Framework를 통합 한 Spring Test DbUnit과 HtmlUnit과 Spring Test MVC Framework를 통합 한 Spring Test MVC HtmlUnit이 있습니다.
    이 도구를 사용하면 Spring MVC 애플리케이션을 쉽게 테스트 할 수있다.

REST Assured 
  > Groovy와 같은 동적 언어 보다  Java에서 REST 서비스를 테스트하고 검증 하는 것이 어렵습니다
    REST Assured는 이러한 언어를 Java 도메인에 사용하는 단순함을 가져 오며 REST API 통합 테스트를위한 훌륭한 도구입니다.

Spock Framework
  > Spock은 Java 및 Groovy 응용 프로그램에 대한 또 다른 테스트 및 사양 프레임 워크로, 
    Groovy로 작성되어 문장 문자열 세트를 사용하기 때문에 이해하기 쉽습니다. 특정 언어로 지정합니다.
    Spock을 사용하면 테스트를 더 쉽게 읽을 수 있습니다. 
    Junock Runner 덕분에 Spock을 IDE, Build Tools 및 Continuous Integration 서버와 호환 할 수있게하여 유지 보수가 간편합니다.

Robot Framework
  > Robot Framework는 Python, 승인 테스트 및 승인 테스트 기반 개발을위한 테스트 자동화 프레임 워크를 기반으로합니다. 
    테이블 형식 테스트 데이터 구문을 사용하는 키워드 기반 테스트 프레임 워크로, 
    분산되어 있고 다양한 기술과 인터페이스가 필요한 다양한 응용 프로그램을 테스트하는 데 사용할 수 있습니다.

 

반응형
반응형

RSS Feeder JSTL만으로 순수하게 처리할려고

 

보니

 

태그에서 <content:encoded> 값의 경우

 

x:out select 구문안에 위의 내용을 사용할 경우 에러가 발생합니다.

 

이유는 : 으로 구분되는 경우 네임스페이스로 인식하여 발생합니다.

 

다음과 같은 방법으로 회피가 가능합니다.

 

rss 내용 

 

 

문장

<c:import var="xmlContent" url="http://xxx.co.kr/feed" charEncoding="UTF-8" />

<x:parse var="doc" xml="${xmlContent}"/>

<x:out select="select($doc/rss/channel/item[$feedno]/*[name()='content:encoded'])" escapeXml="false" />

 

위 구문은  feedno 라는 get 방식을 통한 값이 들어 왔을 때

 

해당 피더의 feedno 번호의 content:encoded 값을 읽어 들이는 구문입니다.

 

 

기타 날짜 변경

 

날짜는 아래와 같이 변경 가능합니다.

EEE : 3자리 영문 요일 (ex> Mon)

dd : 2자리 날짜 숫자 (ex> 11)

MMM : 3자리 영문 월 (ex> May)

yyyy : 4자리 숫자 년도

HH : 00~23시간

mm : 00~59 분

ss : 00 ~ 59 초

Z : +0000 설정

 

 

 

 

반응형
반응형

- D3 갤러리
https://github.com/d3/d3/wiki/Gallery
시각화 차트, 특별한 기술, 재미있는 시각화 구현

- BioVisualize
http://biovisualize.github.io/d3visualization/
D3 갤러리로서 시각화 예제를 온라인상에서 빠르게 찾도록 도와준다

- D3 튜토리얼 페이지
https://github.com/mbostock/d3/wiki/Tutorials
D3의 많은 개념과 기술을 사용하는 방법을 보여주기 위한 튜토리얼과 이야기, 슬라이드 들

- D3 플러그인
https://github.com/d3/d3-plugins
시각화에 필요한 기능이 D3에 없다면 구현하기 전에 확인해 보는 저장소

- D3 API
https://github.com/mbostock/d3/wiki/API-Reference
https://github.com/d3/d3/wiki
D3 라이브러리가 제공하는 모든 함수와 특성에 대한 자세한 정보를 얻을 수 있다.

- Mike Bostok's Blocks
http://bl.ocks.org/mbostock
아주 흥미로운 시각화 자료를 접할 수 있는 D3 개발자인 마이크 보스톡이 직접 관리하는 D3 예제 사이트

- JS Bin
http://jsbin.com/ugacud/1/edit
이미 빌드가 완료된 D3 테스트와 실험 환경을 완전하게 온라인상에 제공

- JS Fiddle
http://jsfiddle.net/qAHC2/
JS Bin 과 비슷한 양상을 나타내며, 자바스크립트 코드를 프로토타이핑하고 공유하는 플랫폼을 온라인상에서 제공

다음의 D3 커뮤니티를 통해 도움을 얻을 수 있다.

- Stack Overflow의 D3.js
http://stackoverflow.com/questions/tagged/d3.js
https://stackoverflow.com/questions/tagged/d3.js
Stack Overflow는 개발자를 위한 가장 유명한 커뮤니티 기반 무료 Q&A 사이트이다.

- D3 구글 그룹
https://groups.google.com/forum/?fromgroups#!forum/d3-js
D3 뿐만 아니라 유사한 새태계의 다른 라이브러리를 위한 공식 유저 그룹

 

반응형
반응형

 

 

 

package kr.co.xxx;

import static org.junit.Assert.assertEquals;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;  
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print; 
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
 
 
import org.junit.Before;
 
import org.junit.Test;
import org.junit.runner.RunWith;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

import org.springframework.test.context.web.WebAppConfiguration;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.MvcResult; 
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
import org.springframework.web.context.WebApplicationContext;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
 

import org.json.simple.JSONObject;

@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = DbserverApplication.class)
@WebAppConfiguration
public class DbserverApplicationTests {

Logger log = LoggerFactory.getLogger(DbserverApplication.class);
 
    @Autowired
    private WebApplicationContext webApplicationContext;
    private MockMvc mockMvc;

  

public void logPrint(String Name) {
log.info(" ");
log.info("=======================================================");
log.info(" ");

log.info(Name);

log.info(" ");
log.info("=======================================================");
log.info(" ");
}

public void endLogPrint() {
log.info(" ");
log.info("=======================================================");
log.info(" ");
}



    @Before 
    public void setUp() throws Exception {  
     logPrint("Set Up");
    
     // 이곳에서 DbserverController를 MockMvc 객체로 만듭니다.   
        
     mockMvc = MockMvcBuilders.webAppContextSetup(webApplicationContext).build();      
        
        endLogPrint();
         
        
         
    } 

    /*
    @Test
    public void testIsRunning() throws Exception { 
     logPrint("ISRunning");
    
     mockMvc.perform(get("/ping")
            )
     .andDo(print())                // 출력
     .andExpect(status().isOk());   // 정상 결과 예상
    
    
    
     endLogPrint();
    }
      
    

    
    @SuppressWarnings("unchecked")
@Test
    public void testGetVideoInfo() throws Exception { 
     log.info("GetVideoInfo");
    
     // 전체 JSON Object 담을 정보
     //JSONArray mapArray = new JSONArray();
    
     // 한개의 정보가 들어갈 JSONObject 선언
     JSONObject mapInfo = new JSONObject();
    
     // 정보 입력
     mapInfo.put("xmin", "-111.46727710962297");
     mapInfo.put("ymin", "20.462022433054965" );
     mapInfo.put("xmax", "-110.46727710962297");
     mapInfo.put("ymax", "21.96517113846002"  );
    
     // Array 값 추가
     //mapArray.add(mapInfo);  
        
     mockMvc.perform(post("/getVideoInfo") 
     .header("Accept", "application/json")
     .contentType("application/json")
     .characterEncoding("utf-8") 
     .content(mapInfo.toString()) 
     )
.andDo(print())                // 출력
.andExpect(status().isOk())    // 정상결과 예상 
                ;
         
    
     endLogPrint();
    }         
    
    */

    
    @Test
    public void testIsRunning() throws Exception { 
     logPrint("ISRunning");
    
     MvcResult result = this.mockMvc.perform(get("/ping")
                                )
                 //.andDo(print())                // 출력
        .andExpect(status().isOk())    // 정상 결과 예상
        .andReturn()
        ;   
    
    
     // 결과를 받는 String
     String content = result.getResponse().getContentAsString();
      
     // 예상 결과 
     // 첫문장 비교해서 오류 발생하면 문제가 있는 것임
     assertEquals("I'm Alive!", content ); 
    
     endLogPrint();
    }
      
    
    
    @SuppressWarnings({ "unchecked" })
@Test(timeout = 100000)   // Timeout 시간 설정 (단위 : milliseconds)
    public void testGetVideoInfo() throws Exception {
      
    
     log.info("GetVideoInfo");
    
     // 전체 JSON Object 담을 정보
     //JSONArray mapArray = new JSONArray();
    
     // 한개의 정보가 들어갈 JSONObject 선언
     JSONObject mapInfo = new JSONObject();
    
     // 정보 입력
     mapInfo.put("xmin", "-111.46727710962297");
     mapInfo.put("ymin", "20.462022433054965" );
     mapInfo.put("xmax", "-95.15257984399797" );
     mapInfo.put("ymax", "22.96517113846002"  );
    
     // Array 값 추가
     //mapArray.add(mapInfo);   
        
     MvcResult result = this.mockMvc.perform(post("/getVideoInfo")              
     .header("Accept", "application/json")
     .contentType("application/json")
     .characterEncoding("utf-8") 
     .content(mapInfo.toString()) 
     ) 
//.andDo(print())                // 출력 (결과가가 길면 출력을 생략하는 것이 좋음)
.andExpect(status().isOk())    // 정상결과 예상 
.andReturn()
                ;
    
     
     // 결과를 받는 String
     String content = result.getResponse().getContentAsString();
    
     // ,를 기준으로 첫번째 값만 받아옴
     String [] con_list = content.split(",");
    
     // 정상 반환 여부를 확인하기 위해 첫번째 값 별도로 재저장
     String [] first_con = con_list[0].split(":");
    
     //result.
     log.info("first_con[0]  : " + first_con[0]); 
    
     // 예상 결과 
     // 첫문장 비교해서 오류 발생하면 문제가 있는 것임
     assertEquals("[{\"video_sn\"", first_con[0] ); 
    
     endLogPrint();
    }         
 
    
} // end of Class

반응형
반응형

 

https://coolsymbol.com/big-text-generator.html

 

Big Text Generator

A big text generator that helps you create beautiful fancy big piece of text

coolsymbol.com

 

https://www.messletters.com/en/big-text/

 

Big Text • Create huge texts with ASCII characters

Make a big impression with these enormous letters, also known as ASCII text, made out of normal keyboard characters. You can choose from over 100 different styles!

www.messletters.com

https://devops.datenkollektiv.de/banner.txt/index.html

 

Spring Boot banner.txt generator

 

devops.datenkollektiv.de

 

반응형

'Windows > Internet' 카테고리의 다른 글

유튜브 명예 튀르키예 가입하기 관련  (1) 2022.10.26
테스트 관련 찾아 보기  (0) 2019.06.11
Chrome 확장 기능 관련  (2) 2019.05.15
C Browser (씨 브라우저) 3.40  (0) 2013.01.09
웹 디버깅 문제점 찾기  (0) 2012.05.11
반응형

1. 필요한 정보

- URL:Port

- RequestMapping 정보

 

ex) http://127.0.0.1:8080/getData

- URL:PORT => http://127.0.0.1:8080

- RequestMapping => getData

  > 자바 문장   

@RequestMapping(value = "/getData", method = RequestMethod.POST)

 

2. 보낼 데이터

- 일반적인 Parameter인 경우가 아닌 param 으로 Hashmap 데이터 전송시 예제

xmin:-111.11111

ymin:20.40121

xmax:-95.1231231

ymax:26.99383

 

3. POSTMAN 설정하기

 

- 주소창에 POST 타입(Java에서 POST 타입으로 받기로 되어 있음)과 RequestMapping값을 맞춰줍니다.

 

- Header 설정 값들을 맞춰줍니다.

  > Key 값 : Content-Type / Value 값 : application/json

  > Key 값 : Accept / Value 값 : application/json

 

  > Body에 raw로 선택후 입력 창에 다음과 같은 형태로 값을 입력합니다.

     

{
"xmin":-111.11111,
"ymin":20.40121,
"xmax":-95.1231231,
"ymax":26.99383
}

 

Send를 눌러 전송하면 정상적으로 값을 보내고 받아오는 것을 알수 있습니다.

반응형

'UTILITY' 카테고리의 다른 글

Scouter Batch 설정 옵션  (1) 2020.06.15
ghost 옵션  (0) 2019.11.27
정규식 방법  (0) 2014.06.17
Process Hacker  (0) 2014.03.26
SSH System Administration Tool  (0) 2014.03.01
반응형

요즘은 거의 크롬 확장 프로그램이 막혀있더군요

 

아래의 프로그램 설치 후 주소만 복사해서 붙이면

 

보기 좋은 크기로 자동 다운로드 됩니다.

 

http://www.clipdown.co.kr/

 

유튜브 mp3 음원추출 사이트 - 클립다운(clip down)

유튜브 mp3 음원추출 사이트 - 클립다운에서 무료로 유튜브, 데일리모션, 페이스북 등에서 mp3 음원추출이 가능합니다.

www.clipdown.co.kr

 

사용법

 

1. Clip Down 실행합니다.

 

2. 유튜브에 들어가 재생되는 동영상 위에서 마우스 우클릭

   → 동영상 URL 복사

 

3. 다음과 같은 팝업 창이 뜹니다.

   

   붉은 색 다운로드 글자를 누릅니다.

 

 

4. 진행중인 아래 화면이 뜹니다.

 

5.  아래와 같은 로딩된 화면이 뜹니다.

 

 

우측 아래에  해상도 자동> 을 눌러 해상도를 조정할 수 있습니다.

 

해상도 자동> 을 누르면 아래와 같이 해상도를 지정 가능합니다.

 

마지막으로 화면 왼쪽(Audio)은 해상도 상관없이 오디오만 추출, Video는 위 정한 해상도에 맞춘 동영상 다운로드 됩니다.

 

 

 

모든 파일이 다운로드 완료되면 우측위에 폴더를 눌러 다운받은 폴더를 열 수 있습니다.

 

반응형
반응형

요즘은 WAR 배포 단위가 많아진것 같다.

 

회사에서도 홈페이지 개발해서 적용하는 프로젝트를 WAR를 배포하는데

 

여기서 문제가 발생했다.

 

1. 환경 : tomcat

2. server.xml 환경 설정을 사용하여 자동 unpack

 

몇주간 잘 사용하다가

 

STS(Spring Tool Suite) 기능 때문에 파일 업로드 살펴볼까 하고 보다가

 

다음과 같은 문제점을 발견했다.

 

1. 요즘은 보안상의 이유로 상위 디렉토리 자체를 접근하면 안됨

2. Tomcat의 자동 WAR unpack 기능을 쓰면 기존 폴더를 어디론가(?) 사라지고

   똑같은 이름의 폴더가 생성됨

 

해결 방안

1. Tomcat 자동 WAR unpack 기능 중지

2. 수동으로 기존 folder delete

3. 수동으로 WAR unpack 작업

 


 

1. Tomcat 자동 WAR unpack 기능 중지

- 파일 위치 : Tomcat 설치 위치/conf/server.xml 

- 변경 내용

  WAR 자동 deploy 설정 끄기 (unpackWARs 옵션 false) 

  <Host name="localhost" appBase="webapps"

           unpackWARs="false" autoDeploy="true">

 

※ 위 설정 적용을 위해 tomcat은 재기동 합니다. (그 이후에는 자동 WAR unpack 중지 / autoDeploy는 적용)

 

2.  수동으로 기존 Folder 삭제 및 3. 수동으로 WAR unpack 작업

unzip 을 사용하여 위치를 설정하는 방식으로 적용

다음과 같은 deploy 반영하는 쉘을 적용

 

WAR_DIR : tomcat 폴더 홈 디렉토리 + webapps 폴더 까지 경로

ex) /www/tomcat 에 tomcat이 설치됐다면

     WAR_DIR="/www/tomcat/webapps"

 

아래 예제는 unzip이 설치된 것으로 설정하였으니

 

반드시 unzip 명령어를 쳤을때 정상인 것을 확인하고 적용해야 함.

# delete old deploy folder
rm -rf ${WAR_DIR}/homepage/META-INF
rm -rf ${WAR_DIR}/homepage/org
rm -rf ${WAR_DIR}/homepage/WEB-INF

# WAR unpack
unzip ${WAR_DIR}/homepage.war -d ${WAR_DIR}/homepage/

 

반응형

+ Recent posts