Monthly Archives: 7月 2017

Spring Boot & Spring MVC におけるエラーの対応サンプルコード

サンプルコード
@RequestMapping(“/error-701”)
public String error701(HttpServletRequest request, HttpServletResponse response) throws AnotherException {
throw new AnotherException();
}

@ExceptionHandler(AnotherException.class)
String handleAnotherException(HttpServletRequest request, HttpServletResponse response, Model model)
throws IOException {
//Status Codeを設定
response.setStatus(701);
model.addAllAttributes(errorAttributes.getErrorAttributes(new ServletRequestAttributes(request), true));
return “error/7xx”;
}

「Java」entrySet()、keySet()でHashMapの値をソートする

方法1
Map map = new HashMap();
Iterator cft = map.entrySet().iterator();
while (cft.hasNext()) {
Map.Entry entry = (Map.Entry) cft.next();
Object key = entry.getKey();
Object val = entry.getValue();
}

方法2
Map map = new HashMap();
Iterator cft = map.keySet().iterator();
while (cft.hasNext()) {
Object key = iter.next();
Object val = map.get(key);
}

「Oracle」triggerでカラムを更新するコード

サンプルコード

CREATE OR REPLACE TRIGGER trg_update_terminal_addr_hex

BEFORE UPDATE

ON r_tmnl_run

FOR EACH ROW

DECLARE

BEGIN

if(:old.TERMINAL_ID=:new.TERMINAL_ID)then

:new.terminal_addr_hex:=substr(:new.terminal_addr,1,4)|| lpad(trim(to_hex(substr(:new.terminal_addr,5,5))),4,’0′) ;

end if;

END;

「Oracle」triggerでカラムを追加するコード

サンプルコード

create or replace trigger trg_insert_terminal_addr_func

before insert

on r_tmnl_run

for each row

begin

:new.terminal_addr_hex:=substr(:new.terminal_addr,1,4)|| lpad(trim(to_hex(substr(:new.terminal_addr,5,5))),4,’0′) ;

END;

「Java」Servletでファイルをダウンロードさせるサンプルコード

Javaコード
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

//ファイル名取得
String filename = request.getParameter(“filename”);

//MimeType設定
response.setContentType(getServletContext().getMimeType(filename));
//Content-Disposition設定
response.setHeader(“Content-Disposition”, “attachment;filename=”+filename);

//ターゲットファイルの絶対パス取得
String fullFileName = getServletContext().getRealPath(“/download/” + filename);

//ファイルを読む
InputStream in = new FileInputStream(fullFileName);
OutputStream out = response.getOutputStream();

//ファイルを書き
int b;
while((b=in.read())!= -1)
{
out.write(b);
}
in.close();
out.close();
}

「Oracle」RANK() OVER (PARTITION BY )でランキングを表示するサンプル

サンプルコード:
SELECT
TO_CHAR(BIRTHDAY_YMD, ‘YYYY/MM/DD’)
, RANK() OVER (
PARTITION BY
A.AREA_ID
, A.CITY_CODE
ORDER BY
A.BIRTHDAY_YMD DESC NULLS LAST
) CFT
FROM
TEST A

「Oracle」テーブルを排他モードでロックするサンプル

サンプル:
LOCK TABLE STUDENT_TBL
IN EXCLUSIVE MODE;

「java」アノテーション@SuppressWarningsによる警告の排除方法まとめ

1.単なる文字列(“unchecked”)
@SuppressWarnings(“unchecked”)
public void cftAdditems(String item){
@SuppressWarnings(“rawtypes”)
List items = new ArrayList();
items.add(item);
}

2.複数文字列
@SuppressWarnings(value={“unchecked”, “rawtypes”})
public void cftAdditems(String item){
List items = new ArrayList();
items.add(item);
}

3.全ての警告
@SuppressWarnings(“all”)
public void cftAdditems(String item){
List items = new ArrayList();
items.add(item);
}

「Java」BRタグを 改行コード(\r\n)に変換する

サンプルコード:

public static String brToKaiGyo(String destStr) {

if ((destStr == null) || (destStr.length() == 0))

{

return “”;

}

destStr = destStr.replaceAll(“<BR>”, “\r\n”);

return destStr;

}

「Linux」ワイルドカード(* ?)を利用するメモ

サンプルコード1(*)
$ ls
test.txt test1 test2 test3 index.php error.log
$ rm test*
$ ls
index.php error.log

 

サンプルコード2(?)
$ ls
test01 test02 test03 test04 test11 test12 test13 test14
$ rm test?4
$ ls
test01 test02 test03 test11 test12 test13

1 / 1012345...10...最後 »