Category Archives: Java

「Java入門」staticメソッドのサンプル

class Simple {
static int a;
int b;
}

Simple cftA = new Simple();
Simple cftB = new Simple();
cftA.a = 1;
cftA.b = 2;
cftB.a = 3;
cftB.b = 4;
System.out.println(cftA.a + cftA.b + cftB.a + cftB.b);

結果
3234

「Java入門」instanceof演算子の基本使い方

サンプル
package test;

import java.io.Serializable;

public class InstanceOfDemo {

public static void main(String[] args) {
final Number cft = new Integer(345);

if (cft instanceof Object) {
Object x = cft;
System.out.println(“Object Value: ” + x);
}

if (cft instanceof Number) {
Number x = cft;
System.out.println(“Number Value: ” + x);
}

if (cft instanceof Double) {
Double x = (Double) cft;
System.out.println(“Double Value: ” + x);
}

if (cft instanceof Serializable) {
Serializable x = cft;
System.out.println(“Serializable Value:” + x);
}

if (cft instanceof Runnable) {
Runnable x = (Runnable) cft;
System.out.println(“Runnable Value: ” + x);
}

if (cft instanceof Integer) {
Integer x = (Integer) cft;
System.out.println(“Integer Value: ” + x);
}

}

}

結果
Object Value: 345
Number Value: 345
Serializable Value:345
Integer Value: 345

「struts2開発」getProxy().getNamespace()でnamespaceを取得する

struts.xml
<struts>
<package name=”cftUserInfo” namespace=”/foliofn”>
<action name=”loans” class=”tlc.ui.action.Loans” >
<result>/mainapp/pages/cftUserInfo/loans.jsp</result>
</action>
</package>

方法1
String namespace = ServletActionContext.getActionMapping().getNamespace();
方法2
String namespace = invocation.getProxy().getNamespace();

「Spark Framework入門」Basic認証を実装サンプル

サンプルコード:
before((request, response) -> {
String requestAuth = “” + request.headers(“Authorization”);
String strBasicAuth =
Base64.getEncoder().encodeToString(“basicUser:basicPwd”.getBytes(StandardCharsets.UTF_8));
if (!requestAuth.replaceAll(“Basic\\s”, “”).equals(strBasicAuth)) {
System.out.println(“Basic Authorization is failed!”);
response.header(“WWW-Authenticate”, “Basic realm=\”Secret Zone\”\r\n”);
halt(401, “You are not welcome here”);
}
});
参考URL
http://sparkjava.com/documentation#halting

「java入門」リスト(list)を文字列(string)に変換するサンプル

サンプルコード:
StringBuffer cft = new StringBuffer();
try{
for(Object dd : infoLst)
{
if(cft.length() > 0){
cft.append(“,”);
}
cft.append(String.valueOf(dd));

}

} catch(Exception e){
}

「Java入門」Mapのリストをソートするサンプル

Javaコード:
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class ListSortDemo {

public static void main(String[] args) {

List<Map<Object, Object>> lst = new ArrayList<Map<Object, Object>>();

Map<Object, Object> mapAA = new HashMap<Object, Object>();
Map<Object, Object> mapBB = new HashMap<Object, Object>();
Map<Object, Object> mapCC = new HashMap<Object, Object>(); ·

mapAA.put(“number”, “4”);
mapBB.put(“number”, “4.15”);
mapCC.put(“number”, “5.67”);
lst.add(mapAA);
lst.add(mapBB);
lst.add(mapCC);

Collections.sort(lst, new Comparator<Map<Object, Object>>() {

public int compare(Map<Object, Object> o1, Map<Object, Object> o2) {

int mapAAVal = (int)Double.parseDouble((String) o1.get(“number”))*100 ;
int mapBBVal = (int)Double.parseDouble((String) o2.get(“number”))*100;
return mapAAVal – mapBBVal;
}
});
System.out.println(lst);
}
}

「Java入門」配列の繰り返し処理サンプル

方法1
String[] empArr = { “山田”, “杉山”, “data003″ ,”data004”};
for(int i=0; i<empArr.length; i++) {
System.out.println(empArr[i]);
}
方法2
String[] empArr = { “山田”, “杉山”, “data003″ ,”data004”};
for(String cc : empArr) {
System.out.println(cc);
}

「Struts2入門」ActionContext.getContext().getParameters()の使い方

Javaコード
Map<String, Object> map = ActionContext.getContext().getParameters();
for (Entry<String, Object> entity : map.entrySet()) {
System.out.println(“リクエストパラメータ:” + entity.getKey()+” 値:”+((String[])entity.getValue())[0]);
}

「Struts2入門」<propertyタグでescapeHtmlを利用する

Javaコード:
<s:property value=”#query.address.replaceAll(‘\n’,'<br />’)” escapeHtml=”false” />

「Java入門」ToStringBuilder.reflectionToString の使い方

Javaコード
public String toString() {
return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE);
}