반응형

http://stackoverflow.com/questions/6529004/window-open-location-no-does-not-work


For security reasons, modern browsers will always display the address bar.

Setting location=no makes it read-only.

For the same security reasons, there is no workaround.

반응형
반응형

http://stackoverflow.com/questions/928072/whats-the-regular-expression-that-matches-a-square-bracket

 

How about using backslash (\) in front of the square bracket. Normally square brackets match a character class.

 

[와 ]를 쓰기전에 \를 앞에 넣어서 처리하면 된다.

반응형
반응형

참고: http://blog.naver.com/PostView.nhn?blogId=agapeuni&logNo=60114548468&parentCategoryNo=375&viewDate=&currentPage=1&listtype=0

http://stackoverflow.com/questions/11440128/jquery-check-if-checkbox-is-not-checked

 

http://lng1982.tistory.com/80

 

//전체선택

function fn_checkAll() {

if($("#psninfAgrYn").val() == "Y") {

$("input[name=psninfAgrYnSub]:checkbox").each(function(){

$(this).attr("checked", false);

});

$("#psninfAgrYn").val("");

$("#psninfAgrYn").attr("checked", false);

} else {

$("input[name=psninfAgrYnSub]:checkbox").each(function(){

$(this).attr("checked", true);

});

$("#psninfAgrYn").val("Y");

$("#psninfAgrYn").attr("checked", true);

 

}

}

 

//선택확인

function fn_checkCnt() {

var chkSubCnt = $("input[name=psninfAgrYnSub]").length;

var chkSubCntChecked = $("input[name=psninfAgrYnSub]:checked").length;

 

if(chkSubCnt == chkSubCntChecked) {

$("#psninfAgrYn").val("Y");

$("#psninfAgrYn").attr("checked", true);

} else {

$("#psninfAgrYn").val("");

$("#psninfAgrYn").attr("checked", false);

 

}

}

 

//화면구성

<form:checkbox path="psninfAgrYn" id="psninfAgrYn" value="" onclick="fn_checkAll();/>전체선택

<input type="checkbox" name="psninfAgrYnSub" onclick="fn_checkCnt(); />개인정보 항목에 동의

<input type="checkbox" name="psninfAgrYnSub" onclick="fn_checkCnt(); />이용목적 항목에 동의

<input type="checkbox" name="psninfAgrYnSub" onclick="fn_checkCnt(); />이용기간 항목에 동의

 

 

반응형
반응형

출처: http://blog.naver.com/PostView.nhn?blogId=chocolleto&logNo=30086937115&categoryNo=29&viewDate=&currentPage=1&listtype=0

http://jeevanpatil.wordpress.com/2011/07/22/prevention_of_xss/

http://forum.spring.io/forum/spring-projects/web/106627-spring-3-mvc-annotation-portlet-form-form-submission-nohandlerfoundexception

 

spring mvc form 태그를 사용하면서 xss(cross site scripting)을 처리하고자

< -> &lt;

> -> &gt;

' -> &apos;

"-> &quote;

 

로 변환해서 데이터베이스에 저장하였다.

 

그렇게 처리하니 spring form 태그에서는 & -> &amp;로 변환해서 화면에 보여주게 되었고

화면에는 <script가 &lt;script로 보여지게 된것이다.

 

이유는 &가 html태그로 치환되어 표현하기 때문이다.

그렇기에 <form:input path="name" htmlEscape="false" />로 처리하니

화면에 <script로 보여지게 되었다.

 

defaultHtmlEscape는 true로 되어있기 때문에 spring form mvc에서는

false로 지정해 주어야 한다.

 

(근데 궁금한것은 어디서는 web.xml에 defaultHtmlEscape가 true라고 하고, 어디서는 false라고 하는데

어떤것이 진실인지 찾아봐야겠다.)

 

 

To avoid XSS security threat in spring application jeevanpatil.mht

 

반응형
반응형

출처: http://stackoverflow.com/questions/14784705/dynamically-changing-a-jquery-validate-rule-when-a-checkbox-is-checked

http://stackoverflow.com/questions/11023499/jquery-validation-adding-removing-rules-dynamically-based-on-dropdown-selectio

 

validation 규칙을 동적으로 부여하고 싶을 때 사용

구현하고자 하는 것은 데이터베이스에 저장된 비밀번호와 같은 값이면 validation규칙을 적용하지 않고,

저장된 비밀번호와 다른 값이면 validation 규칙을 적용하는 것이다.

 

$("userPw").bind("change", function(){
  //비밀번호 변경되지 않음
  if($("#userPw").val() == $("#userDbPw").val()) {
    $("#userPw").rules('remove', {
                        ragelength:[9, 20]
                        ,checkUserPwNum:true
     });
  } else {
      //변경된 경우
      $("#userPw").rules('add', {
                      ragelength:[9, 20]
                      ,checkUserPwNum:true
      });
  }
});
반응형
반응형

출처: http://mikyung.net/31

 

DBMS별 날짜 포멧
Oracle - MS SQL - DB2 UDB 의 서로 다른 날짜 형식을 맞추기위한 SQL문

--------------------------------------------------------------------------------
DBMS 별 시간, 날짜 조회 쿼리
--------------------------------------------------------------------------------
1. Oracle
- 날짜+시분초 까지 조회가능
select sysdate from dual;

- 날짜+밀리초+시간존 까지 조회
select current_timestamp from dual;

2. MS SQL
- 날짜 + 밀리초 단위까지 조회가능
select getdate();

3. DB2 UDB
- 날짜+밀리초까지 조회 가능
select current timestamp from sysibm.sysdummy1;
- 날짜만 조회
select current date from sysibm.sysdummy1;
- 밀리초 단위의 시간만 조회
select current time from sysibm.sysdummy1;

--------------------------------------------------------------------------------
DBMS 별 default date format
--------------------------------------------------------------------------------
1. Oracle
한글 : YYYY/MM/DD                       영어 : DD-MON-YYYY

2. MS SQL
한글 :  YYYY/MM/DD HH:MI:SS      영어 : MM-DD-YYYY HH:MI:SS

3. DB2 UDB
TIMESTAMP 타입 : YYYY-MM-DD-HH:MI:SS.MMMMMM
DATE 타입 : YYYY-MM-DD

TIME 타입 : HH:MI:SS.MMMMMM

--------------------------------------------------------------------------------
날짜 포맷 변환
--------------------------------------------------------------------------------
[ 형식 : 'YYYY.MM.DD' ]
1. Oracle : TO_CHAR(date_exp, 'YYYY.MM.DD')
2. MSSQL : CONVERT(VARCHAR, date_exp, 102)
3. DB2 : REPLACE(CHAR(DATE(date_exp),ISO), '-', '.')

[ 형식 : 'HH:MI:SS' ]
1. Oracle : TO_CHAR(date_exp, 'HH:MI:SS')
2. MSSQL : CONVERT(VARCHAR, date_exp, 108)
3. DB2 : CHAR(TIME(date_exp) , JIS )

[ 형식 : 'YYYY/MM/DD' ]
1. Oracle : TO_CHAR(date_exp, 'YYYY/MM/DD')
2. MSSQL : CONVERT(VARCHAR, date_exp, 111)
3. DB2 : REPLACE(CHAR(DATE(date_exp), ISO), '-', '/')

[ 형식 : 'YYYYMMDD' ]
1. Oracle : TO_CHAR(date_exp, 'YYYYMMDD')
2. MSSQL : CONVERT(VARCHAR, date_exp, 112)
3. DB2 : CHAR(DATE(date_exp))

[ 형식 : 'HH24:MI:SS' ]
1. Oracle : TO_CHAR(date_exp, 'HH24:MI:SS')
2. MSSQL : CONVERT(VARCHAR(8), date_exp, 114)
3. DB2 : CHAR(TIME(date_exp))

[ 형식 : 'YYYY.MM.DD HH24:MI' ]
1. Oracle : TO_CHAR(date_exp, 'YYYY.MM.DD HH24:MI')
2. MSSQL : CONVERT(VARCHAR, date_exp, 102) + ' ' + CONVERT(VARCHAR(5), date_exp, 114)
3. DB2 : REPLACE(CHAR(DATE(date_exp), ISO), '-', '.') || CAST( TIME(date_exp) AS CHAR(5))

[ 형식 : 'YYYY/MM/DD HH24:MI:SS' ]
1. Oracle : TO_CHAR(date_exp, 'YYYY/MM/DD HH24:MI:SS')
2. MSSQL : CONVERT(VARCHAR, date_exp, 111) + ' ' + CONVERT(VARCHAR(8), date_exp, 114)
3. DB2 : REPLACE(CHAR(DATE(date_exp), ISO), '-', '/') || CAST( TIME(date_exp))

- http://www.dbguide.net/ 발취

반응형
반응형

 

 

워드창이 왜 1개만 뜰까 계속 고민하고 PPCORE.DLL파일도 넣어보고 했지만

되지 않았다. 이때의 해결방법은 위와 같다.

 

휴~ 이제 편히 써보자.

 

참고: http://ask.nate.com/qna/view.html?n=9658372

반응형
반응형

2) 수동으로 플러그인 설치하는 방법
참고:

http://blog.kangwoo.kr/m/115
http://baeksupervisor.tistory.com/m/167
http://blog.bagesoft.com/m/954



http://jadclipse.sourceforge.net/wiki/index.php/Main_Page



1. 위 사이트에서 자신의 이클립스 버전에 맞는 jadclipse3.x 를 다운로드한다

2. jadclipse를 압축파일을 다운받아 압축을 푼 후 net.sf.jadclipse_3.x.x.jar 인 파일을 eclipse plugin 폴더에 복사하고 이클립스를 재실행 한다

3. 이클립스에서 Window-Preferences-Java-JadClipse 에 가서 설치한 jad 경로를 설정해준다 (Path to decompiler 에 다운로드 받은 jad.exe 의 위치를 입력)



** 4. 이클립스 Window > Preferences... > General > Editors > File Associations 에서 JadClipse Class File Viewer를 *.class
디폴트 파일로 설정해주어야 한다.
(정말 꼭 해줘야하는 작업, jadeclipse안된다고 계속 투덜대지 말자)

5. 필요하다면 한글이 깨지는 것을 방지하기 위해, JadClipse - Misc 에서 Convert Unicode strings into ANSI strings 를 체크해준다

 

추가)

참조사이트: http://yysvip.tistory.com/144

http://stackoverflow.com/questions/11421889/jad-eclipse-plugin-installation-issues

 

1. jad.exe 다운로드 사이트:

http://www.varaneckas.com/jad

 

2. .net.sf.jadclipse_x.x.x.jar(현재 3.3.0 버전이 최신)

http://sourceforge.net/projects/jadclipse/

 

 

 

 

반응형
반응형

참고 및 출처: http://static.springsource.org/spring/previews/validation.html

http://beyondj2ee.tumblr.com/post/14509015383/spring-3-0-validation-part1

http://www.egovframe.org/wiki/doku.php?id=egovframework:rte:ptl:validation

http://www.roseindia.net/tutorial/spring/spring3/web/spring-3-mvc-validation-example.html

http://gyumee.egloos.com/3056225

 

기타: http://forum.springsource.org/showthread.php?100397-The-prefix-mvc-for-element-mvc-annotation-driven-is-notbound

 

 

스프링에서 validation사용하기

 

스프링에서 validation을 사용하는 경우는 값을 저장하는 경우 그값의 필수체크, 길이체크, 패턴체크를 하기위해서 사용하는 것 같다. 물론 이같은 경우는 내가 사용하기 위해서 한 것이다.

 

1.

maven을 사용한다면 maven의 pom.xml을 이용하여 validation관련 jar파일을 dependency에 추가해준다.

 

  <dependency>
   <groupId>javax.validation</groupId>
   <artifactId>validation-api</artifactId>
   <version>1.0.0.GA</version>
  </dependency>

 

  <dependency>
   <groupId>org.hibernate</groupId>
   <artifactId>hibernate-validator</artifactId>
   <version>4.2.0.Final</version>
  </dependency>

 

2.

그리고WebContent/WEB-INF에 위치한 dispatcher-servlet.xml파일을 열어서

  <!-- Invokes Spring MVC @Controller methods -->
  <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
      <property name="webBindingInitializer">
          <!-- Configures Spring MVC DataBinder instances -->
          <bean class="org.springframework.web.bind.support.ConfigurableWebBindingInitializer">
              <property name="validator" ref="validator" />
          </bean>
      </property>
  </bean>

 

  <!-- Creates the JSR-303 Validator -->
  <bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean" />

 

를 추가해준다.

 

사실 다른 곳에서는 <mvc:annotation-driven /> 한줄을 추가해 주면 된다고 하지만 그럴경우

안되는 항목들이 있어 위와같이 하였다.

 

3. Controller단에서는

public String saveUserInfo(@Valid @ModelAttribute("personVo") PersonVO personVO
        ,BindingResult bindingResult, Model model
        ,SessionStatus status) {

~~~~~~~~~~~

}

 

@Valid를 써줘서 saveUserInfo 함수의 파라미터 personVO의 validation을 체크하겠다는 것을 기술한다. 

 

4.

그다음 기존 아래와 같은 vo에서

public class PersonVO {
    private String asgmtNm;
    private int age;
}

validation체크할 것에 대한 정보를 입력한다.

public class PersonVO {

    @NotNull
    @Max(64)
    private String asgmtNm;
   
    @Min(0)
    private int age;

}
여기서 asgmtNm은 널값이면 안되고, 최대 64바이트/ age인 경우 0보다 무조건 커야된다는 조건을 입력하였다.

사실 @NotNull(message="")를 사용하여 notnull인 경우 출력될 메시지를 직접 입력해줘도 되고,

WebContent/WEB-INF에 messages.properties파일을 만들어서 사용해도 된다.

 

messgaes.properties파일에서 메시지를 기술하는 방법은 아래와 같다.

 

NotEmpty.person.asgmtNm=

asgmtNm must not be blank.

 

(validation규칙.폼이름.폼에서항목 = 메시지)

 

5. 화면단에서는

<form:form commandName="personVO" name="person" id="person" method="post">

<form:input id="asgmtNm" path="asgmtNm" /><form:errors path="asgmtNm"/>

</form:form>

 

form:form을 사용해서 vo와 input항목을 매핑해 주도록 한다.

 

 

 

결과) 그렇게 해주고 나면 나중에 @NotNull, @Max(64)에 해당하는 항목이 나오면

form:errors에 그에해당하는 메시지가 출력된다.

 

 

 

반응형
반응형

 

출처: http://www.mungchung.com/xe/index.php?mid=protip&category=4482&document_srl=5306

 

이클립스에서 실행중에 Java compiler level does not match the version of the installed Java project facet 와 같은 메시지를 만났다면

 

해당 프로젝트를 선택하고 마우스 오른쪽을 누른다음에

project facets를 선택하여

거기에 있는 java 버전을 변경하여 준다.

반응형

+ Recent posts