Excelで他の人が作成したファイルを開くと以下の様に列番号が数値形式になっていることがあります。
アルファベット形式に慣れている人がそのまま使用すると関数を使用する時などどのように指定すればいいのか結構迷います。
そういう時は慣れてない数値形式のまま作業する必要などありません。アルファベット形式に戻してやれば良いのです。
動作環境
-
Microsoft Office Professional 2013
ブログ投稿用のカテゴリ
djUnitでメソッドの返却値を好みのものに変更する場合は「addReturnValue」メソッドを使用しますが、
同一メソッドを複数回使用していてそれぞれ別々の戻り値に変更したい場合には「setReturnValueAt」メソッドを使用します。
1 2 3 4 5 6 7 8 9 10 11 |
public class UtilClass1{ /** * <p>[概 要] サンプルメソッド</p> * <p>[詳 細] </p> * <p>[備 考] </p> * @return 文字列 */ public static String getStr(){ return "hoge"; } } |
1 2 3 4 5 6 7 8 9 10 11 |
public class DriverClass1{ /** * <p>[概 要] ドライバーメソッド</p> * <p>[詳 細] </p> * <p>[備 考] </p> */ public static void driverMethod1(){ System.out.println(UtilClass1.getStr()); System.out.println(UtilClass1.getStr()); } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
import jp.co.dgic.testing.framework.DJUnitTestCase; import org.junit.Test; public class UtilClassDjUnitTest extends DJUnitTestCase { @Test public void testGetStr2() { // 準備:getStrメソッドの返却値を1回目と2回目で別々の戻り値に変更します。 String expected1 = "test1"; String expected2 = "test2"; setReturnValueAt(UtilClass1.class, "getStr", 0, expected1); setReturnValueAt(UtilClass1.class, "getStr", 1, expected2); // 実行 DriverClass1.driverMethod1(); } } |
1 2 |
test1 test2 |
djUnitを使用する上での最大の利点と言っても良いのがVirtual Mock Objects(仮想モックオブジェクト)が使用出来る事です。
このVirtual Mock Objectsを使用すると作成したクラスでUtilクラスなどのメソッドを使用している場合、使用しているメソッドの戻り値を自由に変更する事が可能となります。
djUnitでメソッドの返却値を好みのものに変更する場合は「addReturnValue」メソッドを使用します。
「addReturnValue」メソッドの使用タイミングとしては、作成したクラスで使用している共通クラスのメソッドなどが未完成の場合でスタブが必要になるケースなどが考えられます。
1 2 3 4 5 6 7 8 9 10 11 |
public class UtilClass1{ /** * <p>[概 要] サンプルメソッド</p> * <p>[詳 細] </p> * <p>[備 考] </p> * @return 文字列 */ public static String getStr(){ return "hoge"; } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
import jp.co.dgic.testing.framework.DJUnitTestCase; import org.junit.Test; public class UtilClassDjUnitTest extends DJUnitTestCase { @Test public void testGetStr() { // 準備:getStrメソッドの返却値を好みのものに変更します。 String expected = "test"; addReturnValue(UtilClass1.class, "getStr", expected); // 実行 String result = UtilClass1.getStr(); // 検証 assertEquals("文字列が一致していません。", expected, result); } } |
Javaの勉強をしていると最初の方に学習する事ではあるのですが、ふと違いとは?と考えるとjavaの実行環境と開発環境の違い位の認識しかなかったので整理しておこうと思います。
一般的に郵便物を送付する際、普通郵便の場合は82円、速達の場合は362円の料金が掛かります。
ではこの料金の差はどこにあると思った事はないでしょうか?
私の場合ですが、速達の場合は普通郵便より早くつくからその手間賃なんだろうと漠然と考えていました。ですが、普通郵便でも速達と同じ速度で届くことがあるのです。
この流れで大きく分けて1日3回(朝、昼、夕)の3回集配されます。
この違いから昼以降の郵送に関しては速達の方が早く各家庭に届けられるので、その手間賃分の料金が掛かっています。
ということで朝郵便物をポストへ投函すれば高い料金を払わなくても速達と同じ速度で届くこともあるようです。
Web開発では帳票をExcelで出力する際に「Apache POI」がよく使用されています。
ただ「Apache POI」を使用する場合、システム的な制限やリソースなど事前に注意しておくべき点があるのでメモしておきます。
エディタなどで文字コードを指定する際「BOM有り」と「BOM無し」という選択肢があります。この「BOM」とは何かをまとめておきます。