사용 파일들 

1. main.scala.html 은 템플릿 파일이다 (즉, 직접 사용하지는 않고, 다른 UI들의 템플릿 역할만을 한다)

- @(title: String)(content: Html)(implicit flash:play.api.mvc.Flash, lang: Lang)


2. editProduct.scala.html은 신규/ 수정을 위한 UI 페이지 이며 main템플릿을 이용한다.

- @(productForm: Form[Product] )(implicit flash: Flash, lang: Lang)

- @main(Messages("products.form")) {


3. details.scala.html은 조회를 위한 UI페이지이며 main템플릿을 이용한다

@(product: Product)( lang: Lang)

@main(Messages("products.details", product.name)) {


에러 화면



처리 방법

details.scala.html에서 직접적으로 play.api.mvc.Flash를 사용하지 않았지만 1 라인의 파라미터쪽에 " @(product: Product)(implicit flash: Flash, lang: Lang) " 으로 Flash를 추가해주었다.


정리 

템플릿UI인 main.scala.html의 파라미터를 4개로 해줬으면 다 해줘야지.. 치매냐...?-_-;




Java 프로파일링 TPTP ? jvm-monitor

분류없음 2013.02.01 13:18 posted by dev.bistro

아주 예전, 프로파일링을 위해 TPTP를 사용하였지만, (그리고 스테이징은 비쥬얼jvm 과 덤프로) 이클립스 버전을 못 따라 오는듯하여 대안을 찾고 있었다. (걔다가 난 eclipse의 탈을 쓴 sts 2.8 을 메인으로 , 가금 이클립스를 쓴다)

JVM-monitor 정도면 어떨까 해서 우선 설치하여 사용중이다.


STS2.8 은 Indigo 기반이므로 사용 가능하다. 설치는 쉽지만 작동이 안된다면 

꼭 http://www.jvmmonitor.org/doc/index.html#FAQ 부분을 확인해야 할 것이다. 테스트로 깐 PC에서는 %TMP%\hsperfdata_ 권한을 read only를 풀어줬어야 했다.


코멘트

#1 각 정보탭에서 '필터'기능이 있어 유용하다.

#2 visual jvm 정도으 정보를 보여준다 (그래프까지)

#3 request에 따른 thread와 각 thread의 시간,점유율까지 보여준다. 


JVMMonitor : http://www.jvmmonitor.org/doc/index.html

추가 관련 링크 : http://kgirlssworld.blogspot.kr/2013/01/eclipse-plugins-jvm-monitor.html


SqlMapClientTemplate 의 내부

spring framework 2013.02.01 10:16 posted by dev.bistro


Source Link


public int delete(final String statementName, final Object parameterObject)

throws DataAccessException {


return execute(new SqlMapClientCallback<Integer>() {

public Integer doInSqlMapClient(SqlMapExecutor executor) throws SQLException {

return executor.delete(statementName, parameterObject);

}

});

}




1. 모든 처리를  public execute 메소드가 위임 받는다.

2. public execute 는SqlMapClientCallback<T> action 를 argument로 받는다.

3. delete, queryForObject 등의 위임을 하는 펑션들은 콜백 펑션을 선언해서 execute를 실행한다.

4. 실제적으로 executor 은 SqlMapClientTemplate에 DI된 sqpMapClient에서 가져와 쓰여진다.


이정도가.. 기본 로직인거고.

1. execute가 적절한 예외처리를 해줌으로서 Exception에 대한 부담이 줄어든다.

2. 적절한 공통코드를 알아서 처리해준다(close같은..)

SqlMapClientTemplate은 여러이유에서 SqlMapClient를 래핑한 Helper 클래스 이다.

템플릿 패턴의 모범적인 적용사례(?)



티스토리 툴바