Skip to content

Instantly share code, notes, and snippets.

View A-pZ's full-sized avatar

A-pZ A-pZ

  • Capybara(Oni-Tenjiku-nezumi)
  • Tokyo, shinagawa
View GitHub Profile
@A-pZ
A-pZ / BigDecimalConverter
Created June 9, 2014 03:00
Struts2の自動型変換(2014 summer version) ref: http://qiita.com/alpha_pz/items/478f963b7d2d5e9e2da6
public class BigDecimalConverter extends StrutsTypeConverter {
public Object convertFromString(
Map context,
String[] values,
Class toClass) {
// 画面→Actionクラス変換
}
public String convertToString(Map paramMap, Object paramObject) {
// 画面←Actionクラス変換(正常系のみ)
@A-pZ
A-pZ / DefaultTemplateEngineProvider
Created September 5, 2014 05:48
Thymeleafプラグインのテンプレートエンジンプロバイダ
package org.codework.struts.plugins.thymeleaf.spi;
import org.codework.struts.plugins.thymeleaf.StrutsMessageResolver;
import org.thymeleaf.TemplateEngine;
import org.thymeleaf.templateresolver.ServletContextTemplateResolver;
import com.opensymphony.xwork2.inject.Inject;
/**
* A default implementation of {@link TemplateEngineProvider}.
@A-pZ
A-pZ / SampleAction.java
Created September 29, 2014 01:18
現在のActionクラスの例(Struts2+Spring3+Lombok)
/**
*
*/
package lumi.action.sample;
import lombok.Getter;
import lombok.Setter;
import lombok.extern.slf4j.Slf4j;
import lumi.action.LumiActionSupport;
import lumi.service.SampleService;
@A-pZ
A-pZ / upload.html
Last active August 29, 2015 14:07
HTML5(+jQuery)/Thymeleafのアップロード。サーバ側はStruts2のAction。
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:th="http://www.thymeleaf.org" lang="ja">
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type"></meta>
<meta charset="utf-8"></meta>
<meta http-equiv="X-UA-Compatible" content="IE=edge"></meta>
<meta name="viewport" content="width=device-width, initial-scale=1"></meta>
<meta name="description" content=""></meta>
@A-pZ
A-pZ / UploadAction.java
Created October 7, 2014 01:41
複数ファイルアップロード対応のActionクラス。
/**
*
*/
package lumi.action.upload;
import java.io.File;
import java.util.HashMap;
import java.util.Map;
import lombok.Getter;
@A-pZ
A-pZ / detail.html
Created December 17, 2014 07:51
Struts2+Spring4+Thymeleafを併用できるようになったけれども、まだコードが長い
<div class="form-group form-group-sm result-box">
<label class="col-sm-2 control-label">CDW</label>
<div class="col-sm-2">
<input type="text" class="form-control" value="料金込" th:value="${beans.masterDataService.getValue('DMST',action.detail['DMST'])}" />
</div>
</label>
</div>
@A-pZ
A-pZ / gist:24e539e988bcbe4b2249
Created February 4, 2015 05:46
Thymeleafでセレクトボックスを生成する場合…
<!-- なげえええええええ -->
<select id="priority" class="form-control" name="vo.priority" th:remove="all-but-first">
<option th:each="priorities : ${beans.master.getValues('priority')}" th:value="${priorities.key}" th:selected="${priorities == vo.priority}" th:inline="text">[[${priorities.value}]]</option>
........
</select>
@A-pZ
A-pZ / Dispatcher.java
Created March 12, 2015 06:32
Struts2.3.20+SpringAOPにて、Actionクラスで例外を投げるとresultがnullになってしまう問題
// Struts2のDispatcherクラスで次の違いがあった。
// 2.3.20
/* 549*/ UtilTimerStack.push(timerKey);
/* 550*/ String namespace = mapping.getNamespace();
/* 551*/ String name = mapping.getName();
/* 552*/ String method = mapping.getMethod();
/* 554*/ ActionProxy proxy = ((ActionProxyFactory)getContainer().getInstance(com/opensymphony/xwork2/ActionProxyFactory)).createActionProxy(namespace, name, method, extraContext, true, false);
/* 557*/ request.setAttribute("struts.valueStack", proxy.getInvocation().getStack());

覚醒流派設計

本書は覚醒流派のエディタに関するアプリケーション仕様ならびにデータベースの仕様である。

データ仕様

管理するデータを示す

  • 実装効果
    • 効果名、効果、デメリット、備考
@A-pZ
A-pZ / Cal5.java
Last active August 29, 2015 14:21
某Q5のレガシーな回答
/**
*
*/
package q5;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;