반응형

jquery 에서 제공하는 $.isNumeric( ) 를 사용하며 숫자 체크했습니다. 


$.isNumeric( ) 는  ( )안에 값을 넣어주면 숫자인지 아닌지 체크해서 true / false 로 반환해줍니다.


$.isNumeric( "102" ); -> true 

$.isNumeric( " 100" ); -> true 

$.isNumeric( " 100#" ); -> false

$.isNumeric( "10dd" ); -> false

$.isNumeric( "dd" ); -> false


사용해봤는데 위와같은 결과가 나왔습니다. 

그외에도 16진수, 소수점, +-등도 true로 반환합니다.


그래서 이거를 사용해서 문자와 숫자의 섞인값에 숫자에만 #숫자# 형식으로 바꾸는 것을 만들어봤습니다.



var selKeyword = "경기도, 26, 100";


// ,가 들어가면 공백을 제거해주고 구분자인 ,을 공백으로 구분을 바꿔줍니다.

if(selKeyword.indexOf(",") != -1 ){

selKeyword = selKeyword.replace(/ /gi, '');

selKeyword = selKeyword.replace(/,/gi,' ');

}

// 그러면 값이 sleKeyword = "경기도 26 100"; 됩니다.


// 구분자가 있는경우 split함수를 사용해서 배열로 저장후 

// for문을 돌려서 $.isNumeric( )로 숫자인지 확인을 하고 숫자이면 ##을 넣어줬습니다.


if(selKeyword.indexOf(" ") != -1 ){

var selList = selKeyword.split(" ")

for(var i=0; i<selList.length; i++){

if($.isNumeric( selList[i] )){

selList[i]= "#"+selList[i]+"#";

}


if(i == 0){

selKeyword = selList[i];

} else {

selKeyword += " "+selList[i];

}

}//for

}//if

반응형
반응형

크롬에서는 잘되는 기능이 익스플로러에서 작동이 안되고 아래와같은 에러를 뱉었습니다.

검색을 해봤는데 js에서 파라미터를 넘겨줄때 encodeURI로 감싸주면 해결된다는걸 확인하고 적용했더니 해결됬습니다.


Note: further occurrences of HTTP header parsing errors will be logged at DEBUG level.

java.lang.IllegalArgumentException: Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986


아래의 소스는 소스의 일부를 가져와봤습니다.

var url = "/TEST/excelDown.do?FILE_MNO="+file_nm;

var link=document.createElement('a');

link.href=url;

위와 같이 그냥  url을 넘겨줬을 때 에러가 났고 아래와같이 encodeURI( ) 를 사용했더니 해결됬습니다.

link.href=encodeURI(url);


반응형
반응형

http://hellogk.tistory.com/11


http://hellogk.tistory.com/10

http://arabiannight.tistory.com/entry/%EC%9E%90%EB%B0%94Java-String%EC%9D%84-List-List%EB%A5%BC-String-%EB%B0%B0%EC%97%B4%EB%A1%9C-%EB%B3%80%ED%99%98

http://toyuq.tistory.com/160

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

http://itpangpang.xyz/269

http://www.omnibuscode.com/board/board_java/37125

http://mainia.tistory.com/3950


column = obj.get(keyname).toString();

               

                // 세 번째 줄

                int x=0;

                row = sheet1.createRow(2);

                String[] columns = column.split(",", 0);

                    for (String col : columns ){

                    cell = row.createCell(x);

                    cell.setCellValue(col);

                    x++;

//                        System.out.println("columns:"+col);

                    }

                cell.setCellStyle(cellStyle); // 셀 스타일 적용



=============================================================

requestbody 한글깨짐


1.

produces="text/plain;charset=UTF-8"

2.

<!-- Start: 한글문제 처리 -->
<filter>
    <filter-name>characterEncodingFilter</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>characterEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>
<!-- Finish: 한글문제 처리 -->

3.
URLEncoder.encode(ajaxName , "UTF-8");


==============================================================


java like 기능 -> contain

equls 기능 -> matchs

반응형
반응형


오라클 DECODE함수 특정값 변환

DECODE(name, 'park, 1, 0)

위와같이 DECODE를 사용하시면되는데

컬럼 name의 값이 'park' 이면 1 아니면 0으로 치환해줍니다.

그밖에 조건또는 DECODE로 힘든 경우는

when case 구문을 사용하시면 됩니다.

반응형
반응형


List<String> list 를 선언하고

Collections.reverse(list);

사용하시면 됩니다.

반응형
반응형

[typescript] 위경도 백분율표기를 도분초로 변경하는 함수
ㄴㅁㅇㅇㄴㅁ
 - 자바스크립트나 다른 곳에서도 조금만 변경해서 사용가능합니다.


함수

latlong(val){
if(val == null || typeof(val) == "undefined" || val== "")
{
return "";
}
else if(isNaN(val))
{
return val;
}
else
{
var data = Math.round(per * 360000);
var dosu = Math.floor(data / 360000);
var min = Math.floor(data / 100) % 60;
var sec = Math.floor(data / 6000) % 60;
var amari = data % 100;
return dosu + "\˚" + min + "\'" + sec +"."+amari+"\"";
}
}



함수 사용시

this.latitude = this.latlong(lat);
this.longitude = this.latlong(long);

latitude :35˚21'1.0" longitude :129˚23'57.80""



반응형

'IT' 카테고리의 다른 글

객체지향과 절차지향 간단한 정의  (0) 2018.02.09
프레임워크의 정의와 장단점  (0) 2018.02.06
깃(Git)과 깃허브(GitHub)의 정의  (0) 2018.02.05
소프트웨어와 하드웨어 - 인터럽트란?  (0) 2018.01.26
IT 계층구조  (0) 2018.01.25
반응형

*절차지향

프로그램의 순서와 흐름을 먼저세우고 필요한 자료구조와 함수를 설계하는 방식을 의미합니다.

코딩방식도 절차적(순서적)입니다. 순차적으로 코드를 처리하는 방식입니다.

ex ) C언어


*객체지향

자료구조와 이를 중심으로 한 모듈먼저 설계하고 실행순서 흐름을 짜는형식입니다.

객체지향의 특징으론 상속, 캡슐화, 다형성이 있습니다.

이런 객체지향의 장점으로는 모듈 재사용 / 확장 및 유지보수 용이 / 생산성향상 등이 있습니다.

ex ) java , 파이썬 , C++


- 캡슐화

객체의 필드와 메소드를 하나로 묶고, 실제 작성 코드를 외부에서 볼수없게 숨기는 것을 말합니다.

- 상속

기존 코드를 재활용하여 사용하는 것으로 이미 작성된 클래스를 상속받아 새로운 클래스를 생성하는 기법을 말합니다.

- 다형성

개념적으로 동일한 작업을 하는 함수들에 같은 이름을 선언하여 코드를 간결하게 하는 것을 말합니다.



반응형
반응형

웹페이지에서 파싱하기 예제를 진행하겠습니다.

jsoup라는 라이브러리를 사용하였습니다.


https://jsoup.org 에서 dependency 및 jar파일을 다운로드 가능하며 

각 상세정보를 확인하실수 있습니다.


처음에는 pom.xml에서 dependency 를 추가해주거나 jar파일을 넣어주세요.

제가 사용한 dependency 소스는 아래와 같습니다.


<dependency>

<!-- jsoup HTML parser library @ https://jsoup.org/ -->

<groupId>org.jsoup</groupId>

<artifactId>jsoup</artifactId>

<version>1.10.3</version>

</dependency>


클래스 파일을 생성해 주세요.

그리고 메인 생성후 익셉션까지 추가해줍니다.


public class Sample {

public static void main(String[] args) throws Exception {

}

}


이제 파싱할 홈페이지 주소와 홈페이지에서 파싱할 태그등을 입력해줄겁니다.

주소를 설정해주세요. 변수는 파란색으로 바꿔놨습니다.

Document url = Jsoup.connect("http://홈페이지 주소").get();

파싱할 html태그와 id나 class값을 입력해주세요.

Elements tagVal = url.select("div.info h4 a"); // class가 info인 div태그 안쪽 -> h4 태그 안쪽 -> a태그를 가져오겠다는 의미입니다.

이제 파싱한 태그에서 text값만 추출해야겠죠.

위에 출력값은 <a id='www'>예제입니다.</a> 이런식으로 출력됩니다.

String texttagVal .select("a").html();  // 이렇게 주시면 a태그의 text값만 가져올수있습니다.

출력값은 예제입니다 만 추출이 될것입니다.

이거만 가지고 응용을 하시면 간단한 정보들은 충분히 파싱하실수 있으실 겁니다.


public class Sample {

public static void main(String[] args) throws Exception {

Document url = Jsoup.connect("http://홈페이지 주소").get();

Elements tagVal url.select("div.info h4 a");

String texttagVal .select("a").html();

System.out.println( "tagVal : " + tagVal );

System.out.println( "text : " + text );

}

}


반응형
반응형

java로 메모장에 text를 입력하고 저장하는 예제를 만들어보겠습니다.

이번에는 파일 입력만 진행하겠습니다. 출력은 나중에..

진행하게된 이유는 일단 이번에 파싱을해서 파싱한 값들로 db 데이터쿼리를 만들었는데

쿼리를 옮겨적기 귀찮아서 겸사겸사 예제를 만들어봅니다.


일단 기본적인 java 클래스를 생성해주세요.

바로 실행할수있는 main도 만들어주시면됩니다.

저는 'FileSave'라는 이름으로 클래스를 만들었습니다.

아래와 같겠네요.


public class FileSave {  

    public static void main(String[] args) {

     

    }

}



여기서 변수를 선언해주세요. 아주 기본적인 것만 진행할거라..

변수는 1. 메모장에 저장할 텍스트 ,  2. 파일을 저장할 경로 및 파일명 2가지입니다.

String text = "저장할 값입니다.";

String fileNm = "D:\\example\\date_file.txt";

 // 저는 D드라이브 example 폴더안에 파일명이 date_file.txt 로 저장을 할것입니다.


이제 본격적인 작업을 시작하겠습니다.

파일 객체를 생성해줄 겁니다.

File file = new File(fileNm);

FileWriter fileWrite = new FileWriter(file, true);

// 위에 FileWrite를 생성해주고 위에 생성한 file 그리고 true 를 작성해줍니다.

// true는 파일이 이미 있을 경우. 그 파일에 text를 이어서 작성해줍니다.

            

이제 파일안에 문자열을 넣어야겠죠

fileWrite.write(text);

fileWrite.flush(); 

fileWrite.close();

// fileWrite에 .write(text)로 값을 넣어주고 .close()로 닫아줍니다.


그리고 익셉션 처리를 해주면 끝입니다.

위에 작성한 코드들을 try 안에 넣어주세요.

try{

------여기로-------           

} catch (Exception e){

e.printStackTrace(); 

// e.printStackTrace()는 오류발생시 오류사항을 console에 표출해줍니다.

}


그러면 이제 됬습니다.

이제 자바파일을 실행( ctrl + F11 )하시면 위에 작성한 text가 해당 경로와 파일명으로 생성될겁니다.


전체적인 소스는

public class FileSave {  

    public static void main(String[] args) {

           String text = "저장할 값입니다.";

String fileNm = "D:\\example\\date_file.txt";

try{

File file = new File(fileNm);

FileWriter fileWrite = new FileWriter(file, true);


fileWrite.write(text);

fileWrite.flush(); 

fileWrite.close();

} catch (Exception e){

e.printStackTrace(); 

}

    }

}

이렇게 되겠네요.

문자열을 쓰시고 줄바꿈을 하시려면 .newLine() 를 사용하시면 됩니다.

그리고 소스 import는 컨트롤 + 시프트 + 영어O  를 누르시면 자동 import 됩니다.

import java.io.BufferedWriter;

import java.io.FileWriter;

이거 2개가 import 될겁니다.

이상으로 java로 메모장에 text 저장하기를 진행했습니다.

반응형

'IT > JAVA' 카테고리의 다른 글

java 배열 순서 뒤집기.  (0) 2018.06.08
java - 웹페이지에서 파싱하기 jsoup  (0) 2018.02.08
이클립스 설치 및 java프로젝트 실행  (0) 2018.01.06
java연산자와 연산식  (0) 2018.01.05
java변수와 데이터타입  (0) 2018.01.05
반응형

프레임워크란

확장 가능한 기반 코드와 필요한 라이브러리 두 요소를 통합제공하고,

기본설계나 필요한 라이브러리를 제공하여 빠른시간에 완성 유지보수할수있는 환경제공해주는 솔루션이라고 합니다.

'소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스들을 제공하는 것' 이라고 정의도 많이 나오네요.



각 프레임워크 

자바 프레임워크 - Struts, Spring, 전자정부 프레임워크 등등

자바스크립트 프레임워크 - AngularJS, React 등등 

프론트엔드 프레임워크 - 부트스트랩, MDL 등등



프레임워크의 장단점

장점 

1. 체계적인 코드로 유지보수에 용이함

2. 기본설계와 필요한 라이브러리를 제공하고, 코드의 재사용으로 생산성이 향상됨

단점

1. 프레임워크를 이해하는데 오래걸릴 수 있음

2. 이미 설계된 구조에 작업을 해서 자유로운 개발에 한계가 있음

반응형

+ Recent posts