JAVA関連のことを調べてみた2022年12月02日

JAVA関連のことを調べてみた2022年12月02日

DataSpiderでAgileWorksにつないでみた(2/2)(DataSpider設定編)

## はじめに
こんにちは!すぎもんです:grinning:

DataSpiderでAgileWorksにつないでみた、の第二弾になります。
[前回の記事](https://qiita.com/sugimon/items/cd147e06130231246025)で、AgileWorksのAPIを使う準備はできましたので、今回はDataSpider設定を進めていきます。

前回の記事↓↓↓↓↓
[DataSpiderでAgileWorksにつないでみた(1/2)(アドオン開発編)](https://qiita.com/sugimon/items/cd147e06130231246025)の続きになります。
引き続き本記事も、最後まで読んでいただけたら嬉しいです!

## DataSpiderの設定(POST実行処理)

新規でプロジェクトとスクリプトを作成します。
また、スクリプト内のロジックで使える「スクリプト変数」も作成します。
デザイナの上部メニューから[スクリプト変数新規作成]のメニューアイコンを押下します。
![image.png](https://qiita-image-

元記事を表示

DataSpiderでAgileWorksにつないでみた(1/2)(アドオン開発編)

## はじめに
こんにちは!すぎもんです:grinning:

いきなりですが、電子帳簿保存法というものをご存じですか?
いわゆるペーパーレスと言われる動きの背景にある法律で、ここ最近では請求書等の電子保存の義務化、なんてことも言われています。つまり、企業のワークフローなどにおける電子取引は今や必須になりつつあるのです。今回はそんなワークフローのDXを推し進めるサービスの一つであるAgileWorksとDataSpiderをつないでみようと思います!

今回は二部構成で記事を作成しました。後半記事はこちら↓↓↓↓↓です。
[DataSpiderでAgileWorksにつないでみた(2/2)(DataSpider設定編)](https://qiita.com/sugimon/items/3c55435132e7405ebd01)

## AgileWorksとは
AgileWorksとは、ATLED社が提供するワークフローシステムで、社内の業務効率化と生産性の向上を実現しています。AgileWorksはアドオン開発を行うことによって、RESTを利用したユーザーシステムとの連携が可能です!

元記事を表示

javaでスプレッドシート

現在AndroidStudioでアプリ開発をしています。その際に、javaを使用してAndroidStudio→スプレッドシート→AndroidStudioというようにデータを送りたいのですがどのようにすればいいかわかりません。
設定方法など細く教えていただけるとありがたいです

元記事を表示

LEGOでコロナをやっつける

ちっさいおっさんが帰ってきたで。
6年ぶりやな。元気にしとった?
あれちゃう?コロナとかなってへん?

ソープディスペンサって見たことあるやろ?
あれやん、店の入り口とかに置いてる手ぇ出したら消毒液がピュッって出てくるやつ
つこたことあるやろ?

あれな、おっさん、LEGOで作ってみたんやんか。
いや、わかってるよ。
今更感あるのは。
せやけど、接触感染もゼロちゃうやんか。
これでコロナをやっつけるんやで。

ごちゃごちゃ言うててもしゃあないし、先に動いてるとこ見せよか?
こんな感じやで。
https://youtube.com/shorts/dDxDUJy-6zw?feature=share

シンプルやろ?
作り方はこの画像見てや。
![image0.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/151562/0582e3f2-38d6-ef43-ec01-93e65ca974ee.jpeg)
![image1.jpeg](https://qiita-image-store.s3.ap-north

元記事を表示

KotlinでSpock入門[基礎編2]

この記事は筆者のソロ [Advent Calender 2022](https://qiita.com/advent-calendar/2022/panda) 2日目の記事です。

[前回](https://qiita.com/JY8752/private/5106a268de00a0daa4db)の続きでKotlinプロジェクトでの Spockの基本的な使い方について紹介していきます。
本記事ではHelperメソッドやSpockでテストを書く際に使用できる関数を紹介します。

# Helperメソッド
重複箇所が目立ってきたらHelperメソッドを導入することができます。

“`kotlin:Shop.kt
package spocktest

data class PC(
val vendor: String,
val clockRate: Int,
val ram: Int,
val os: String
)

class Shop {
fun buyPc(
vendor: String = “Sunny”,

元記事を表示

JUnitで例外の発生を検証する

## はじめに
[ひとりJUnitアドベントカレンダー](https://qiita.com/advent-calendar/2022/junit)1日目の記事です。
初日から遅刻しています。

## ユースケース
以下のような、例外送出処理を持つクラスに対して
想定通りの例外が投げられているかを検証したい場面を想定します。
“`java
public class HogeService {

public String execute(String str) {
if (str == null) {
throw new IllegalArgumentException(“argument cannot be null.”);
} else if (str.equals(“”)) {
throw new IllegalArgumentException(“argument cannot be empty.”);
}
return str + “hoge”;
}
}
“`

## JUnit4の場合
JUnit4では以下

元記事を表示

University of Ulm Local Contest 1996, no.F Lotto

# University of Ulm Local Contest 1996, no.F Lotto

https://www.acmicpc.net/problem/6603

## qustion
In the German Lotto you have to select 6 numbers from the set {1,2,…,49}. A popular strategy to play Lotto – although it doesn’t increase your chance of winning – is to select a subset S containing k (k>6) of these 49 numbers, and then play several games with choosing numbers only from S. For example, for k=8 and S = {1,2,3,5,8,13,21,34} there are 28 possible games: [1,2,3,5,8,13], [1,2,3,5,8,2

元記事を表示

Java スレッド基礎

## スレッドとは
スレッドは1つの流れの処理を表す単位。
スレッドの処理が単一で行われるをのをシングルスレッド、複数のスレッドを同時に並行させることをマルチスレッドという。

## スレッド作成

### Threadクラス
1つめはThreadクラスを継承したクラスを使用する方法。
runメソッドをオーバーライドして、スレッドとしての処理を記述する。
“`java
class Sub extends Thread {
public void read() {
//処理
}
}
“`

そして、そのクラスのインスタンスでstartメソッドを実行すれば、runメソッドが実行される。

“`java
public class Main {
public static void main(String[] args) {
Sub sub = new Sub();
sub.start(); //スレッド実行と表示
}
}

class Sub extends Thread {
public void

元記事を表示

Thymeleaf構文について

## Thymeleafとは

javaのテンプレートエンジンのひとつとなっており、ThymeleafはSpring Bootでの使用が推奨されています。MVCモデルでいう「V(ビュー)」にあたる部分です。

## メリット

– 独自のタグを使用しないので、普通のHTMLファイルをそのままJavaで使用できること。
– 専用の記述があるが、かなり簡単で学習コストがかからない。
– HTMLファイルに影響を与えない。

## 色々な変数式
|変数式|${…} |
|—|—|
|選択変数式 |*{…} |
|メッセージ式|#{…} |
|リクURL式|@{…}|
|フラグメント式| ~{…}|

## 構文一覧

### th:field

サブミットする場合に指定

`th:field=”${userForm.userId}”`

th:fieldを使用すると、Javaクラスとバインドすることができる。
Modelに登録されたキー名.フィールド名でバインドできる。

### th:text

画面へ文字列を出力する

“`html

元記事を表示

Leetcode 1704. Determine if String Halves Are Alike

# 1704. Determine if String Halves Are Alike

https://leetcode.com/problems/determine-if-string-halves-are-alike/

## 難易度
### Easy

## アプローチ
### Hashmap

“`java
class Solution {
public boolean halvesAreAlike(String s) {
String s1 = s.substring(0, s.length() / 2);
String s2 = s.substring(s.length() / 2);

HashMap h1 = new HashMap<>();
HashMap h2 = new HashMap<>();

h1.put(‘a’, 0);
h1.put(‘e’, 0);

元記事を表示

curry化と部分適用をJavaで

この記事は アイスタイル [Advent Calendar 2022](https://qiita.com/advent-calendar/2022/istyle) 1日目の記事です。

みなさんこんにちは。
入社4年目、アイスタイルのバックエンドサービスを担当しているkuriyamayです。

アドベントカレンダーへの参加はこれで3年連続3回目となりまして、去年・一昨年の記事はこちらです。

* [kubernetes(k8s)を構築してデプロイやスケールで遊んでみた](https://techblog.istyle.co.jp/archives/6296)
* [Java SE 11(Java Silver)を受験した話](https://techblog.istyle.co.jp/archives/8225)

ここ最近はオンプレサービスをAPI Gateway + Lambdaにしたり、オンプレサービスをコンテナ化してECSで動かしたりとAWS移行を主にやっていました。
プログラミング関連のアウトプットはあまり出来ていなかったのでアドベントカレンダーでしていこうと思います。

元記事を表示

Cloud Run の CPU boost 機能を試してみた

# はじめに

こんにちは、京セラコミュニケーションシステム 福留(@kccs_kazuo_fukudome)です。

先日、Cloud Run の新機能 CPU boost が発表されました。
参考:https://cloud.google.com/blog/ja/products/serverless/announcing-startup-cpu-boost-for-cloud-run–cloud-functions

Cloud Functions、Cloud Run で CPU boost 機能を利用すると、コールドスタートからの起動が早くなる、とくに Java アプリケーションでの効果が高いという説明でした。今回は Spring Boot アプリケーションで、簡単な REST API のアプリケーションのコンテナを作成し、CPU boost を利用した時と利用しない時で、どのくらいレスポンスタイムに差が出るのかを検証してみました。

:::note info
本記事は 2022 年 11 月ごろに作成しております。
Google Cloud の機能を利用した場合は、利用料が

元記事を表示

Reactiveプログラミング初めの一歩

この記事は[SRA Advent Calendar 2022](https://qiita.com/advent-calendar/2022/sra)の1日目の記事です。

こんにちは! 関西事業部の佐々木です。

# Reactiveプログラミングとは
Reactiveプログラミングを勉強しようと思って「Reactiveプログラミングとは」などのキーワードでWeb検索するとたくさんの記事がヒットします。
ただ、それら記事をあまり前提知識のない状態で目を通しても理解するのは難しいのではないでしょうか。

> 値の変更を伝播させるデータフロー指向のプログラミングパラダイム

> 値の関係性を記述してプログラミングする

などと説明されて一発でわかる人はいいですが、何のことかよくわからない人もいると思います。
他にも「Reactiveプログラミング」と「関数型Reactiveプログラミング」の違いだとか難しい説明がいくらでも出てきます。
Reactiveプログラミングを本質から理解することは、それはそれで重要でしょうが、具体的なプログラミングを通して徐々に慣れていくことで本質に近づい

元記事を表示

12月1日

はじめに


初投稿、スマホで入力しております。数日前より家のネット環境が繋がらなくなり、スマホのデータ使用量が制限オーバーとなり、ダイヤルアップ時代のような感じでやっております。事前に投稿方法を勉強し、予約投稿もばっちりしておく予定は崩れ去りました。書式や文体、内容がルールに反しておりましたら申し訳ありません。復旧したあかつきには修正して参ります。

自己紹介


大学まで、完全な文系学生でした。
社会人になってからは、色々なお仕事をしまして、気づけばIT業界の片隅で20年くらい生きてきたようです。

前職はWebディレクターをやっていました。Webディレクターといっても、会社の規模や方針などによって、担当する業務は色々なのかな、と思います。
私は1サイト専属で、立ち上げ準備から始まり、その後の運営に関わる中の人を長らくしていました。

具体的には

  • サイトの更新
  • 企画の立案
  • 制作進行
  • ライティング・編集
  • メルマガの作成・配信
  • データベー
元記事を表示

初めてのJAVA

初めてJAVAに触れたのは、いつだったろう。 

Visual J++という開発環境があった頃だったかもしれない。

https://learn.microsoft.com/en-us/previous-versions/windows/desktop/ms715962(v=vs.85)

https://microsoft.fandom.com/wiki/Visual_J%2B%2B

GUIのコードを自動生成してくれる。 
他の自動生成系と同様、人間にとっての可読性は低かったような気がする。 

何か月かで、Visual C++に戻りつつ、他のJAVA環境へと移っていった。

ありがとうVisual J++

# 参考資料

「基礎からわかるTCP/IP JAVAネットワークプログラミング」Eclipseでコンパイル。Wiresharkでデバッグ。

https://qiita.com/kaizen_nagoya/items/14519536b827fdadb32e

第二章JAVAによるネットワークプログラミング phttpd 三箇所でException収集

https:

元記事を表示

KotlinでSpock入門[基礎編]

この記事は筆者のソロ [Advent Calender 2022](https://qiita.com/advent-calendar/2022/panda) 1日目の記事です。

普段はKotlinを業務で使っており、テストに関してはKotestを使用していますが、テストの書きやすさなどでSpockを使用しているという方もいるようで気になっていたためKotlinプロジェクトにSpockを導入してみました。

# Spcok is 何?
SpockはJava, GroovyなどのJVMアプリケーション向けのテスティングフレームワークです。テストコードはGroovyで記述し、given・when・thenブロックでそれぞれの処理を書いていくため見やすく、綺麗なテストコードが書け、それ自体が仕様書の役割を果たせます。

https://spockframework.org/

# 対象読者
– Java, Kotlinで開発している人
– Java, Kotlinでテストを書いている人
– Spockを聞いたことはあるけど触ったことない人
– テストについて興味がある人

# setup

元記事を表示

Null

null

元記事を表示

日本語クエリオートコンプリーションの実現

## はじめに

スタンバイ一発目のアドベントカレンダーです。
現在スタンバイでは、クエリオートコンプリーション機能のリプレイスを行っており、その際にぶち当たった難しさや日本語クエリオートコンプリーション実現の考え方を書いています。
また、日本語のクエリオートコンプリーションに関しての記事が少なかったので一助になれたらいいなと思っています。

## 前提
Luceneを使った実現方法
実際のコードなどは書いていない

## クエリオートコンプリーションとは

百聞は一見にしかずということで↓この機能です。

検索窓に対して文字を入力するとその文字で始まるサジェストワードを一覧で出してくれる機能のことを言います。

![スクリーンショット_2022_11_26_23_00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150144/fcb8e990-f9ef-a995-e1db-605ecf6955c6.png)

## どのようなことを実現したいのか

ではどのような文字列を受け取った時にどの

元記事を表示

Javaで何か作ってみる(2022/11/30 Day41)

## 今日やった事
– Twitterで、ビンゴゲームの課題があったので、やってみた。
→コミットした内容は[こちら](https://github.com/takamatsuryota3/Java/commit/d91d2406394620ee9ca6c33596e0f6a45703cf75)
## 参考にしたもの
– [Javaでビンゴゲームのコードを作成したい](https://teratail.com/questions/kav3aoefaf30b6)
→ここに答えが書いてあるようなものだが、見てやっても意味ないので、極力見ないようにしている。
– [【Java】ビンゴカード作成問題を解く – Qiita](https://qiita.com/kim-shun/items/fee32cf0cb3cc009756a)
→こちらも同様。

## 所感
– 今日は抽選回数をコマンドライン引数で指定できるようにしたのと、指定した回数内でビンゴになった場合と
そうでない場合で、メッセージが変わるように修正した。
– リーチについては、全てのマ

元記事を表示

Javaで何か作ってみる(2022/11/29 Day40)

## 今日やった事
– Twitterで、ビンゴゲームの課題があったので、やってみた。
→コミットした内容は[こちら](https://github.com/takamatsuryota3/Java/commit/f5eae6a29604b5f8484885930dc8ad97825aacd9)
## 参考にしたもの
– [Javaでビンゴゲームのコードを作成したい](https://teratail.com/questions/kav3aoefaf30b6)
→ここに答えが書いてあるようなものだが、見てやっても意味ないので、極力見ないようにしている。
– [【Java】ビンゴカード作成問題を解く – Qiita](https://qiita.com/kim-shun/items/fee32cf0cb3cc009756a)
→こちらも同様。

## 所感
– 今日はビンゴ判定の追加、ビンゴの時のメッセージを追加した。
– リーチについては、全てのマスについて、管理しなきゃならなそうなので、面倒なので後回し。
## 明日の予定
– ビンゴゲーム作

元記事を表示

OTHERカテゴリの最新記事