- 1. Cookieが原因でhttp://localhost:8080/にアクセス出来ない
- 2. #12 画面に表示される文字を多言語化する
- 3. Listの編集距離(Java)
- 4. #11 messages.propertiesの値をコントローラに渡す
- 5. org.dbunit.dataset.DataSetException: I/O error について
- 6. #10 画面メッセージの標準化[messages. properties]
- 7. Javaのenum型(列挙型)
- 8. Javaで何か作ってみる(2022/11/18 Day29)
- 9. #9 Bootstrapを利用して画面の作成[2. デザイン作成][郵便番号から住所を自動入力]
- 10. JavaによるXMLとExcelのワークブックの相互変換
- 11. Intellijで始めるSpring Boot
- 12. 【Linux】Linux Serverのawt使用不可の件
- 13. Leetcode 153. Find Minimum in Rotated Sorted Array
- 14. Leetcode 162. Find Peak Element
- 15. Leetcode 263. Ugly Number
- 16. #8 Bootstrapの各機能まとめ1
- 17. [Java入門] コンソールアプリ用Scanner 備忘録
- 18. ファイル送信するまでは、アプリから出しませんよ。Android(java)
- 19. Leetcode 766. Toeplitz Matrix
- 20. Javaで何か作ってみる(2022/11/16 Day27)
Cookieが原因でhttp://localhost:8080/にアクセス出来ない
# 現状
IntellJでmain/java/in.packagenameディレクトリにあるApplicationファイルを右クリックして実行を行ない
[http://localhost:8080/]でアクセス出来るか確認した所
HTTP Status 400 – Bad Requestと表示されてアクセスが出来ませんでしたIntellJ内では下記のエラーコードが出ていました
“`java
2022-11-16 14:52:43.949 INFO 35198 — [nio-8080-exec-1] o.apache.coyote.http11.Http11Processor : Error parsing HTTP request header
Note: further occurrences of HTTP request parsing errors will be logged at DEBUG level.java.lang.IllegalArgumentException: Request header is too large
“`# 原因
#12 画面に表示される文字を多言語化する
# #12 画面に表示される文字を多言語化する[messages.properties]
日本語以外もWeb画面上に表示できるよう設定していきます。# 前提条件
この記事はSpringの最低限の知識が必要になります。
また、なるべく分かりやすく書くつもりですが、この記事の目的は自分の勉強のアウトプットであるため、所々説明は省略します。# 前回まで
この記事は#10記事の続きとなります。#10ではmessages.propertiesを用いて画面に表示される文字の共通化を行いました。https://qiita.com/Jackoguro/items/b71597bfeb79a90e7b7c
# 構築環境
1. 各バージョン
Spring Boot ver 2.7.52. 依存関係
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2884987/2a154793-8a45-27b0-cd32-b184567eaea5.png)# 成果物
![image.png](http
Listの編集距離(Java)
編集距離のList版。
Java17で簡単な動作確認しましたが、Java8でも動くと思います。# 動機
集合(Set)での類似度(Jaccard係数、Dice係数、Simpson係数、など)のような感じで、順番を考慮した類似度を使用したかったため。# ソースコード
“`java
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;public class EditDistance
{
Map> memo; public EditDistance() {
memo = new HashMap>();
}public int distance(List
list1, List list2) {
if (list1.isEmpty()) return list2.size
#11 messages.propertiesの値をコントローラに渡す
# #11 messages.propertiesの値をコントローラに渡す
前回の記事ではmessages.propertiesに記述した内容を各画面に直接入力してましたが、今回はコントローラに渡してから各画面で値を表示します。# 前提条件
この記事はSpringの最低限の知識が必要になります。
また、なるべく分かりやすく書くつもりですが、この記事の目的は自分の勉強のアウトプットであるため、所々説明は省略します。# 前回まで
前回の記事https://qiita.com/Jackoguro/items/b71597bfeb79a90e7b7c
前々回の記事
https://qiita.com/Jackoguro/items/db35aa456341a484254b
# 構築環境
1. 各バージョン
Spring Boot ver 2.7.52. 依存関係
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2884987/67356b8d-2039-81cd-c1a0-b
org.dbunit.dataset.DataSetException: I/O error について
# テストをしたらエラーが起きた
“`
org.dbunit.dataset.DataSetException: I/O error parsing CSV for URL:
“`ファイル名が記載してあるところを確認してみると
“`
/bin/test/messages/find/base/given/channels.csv
“`というのが書いてあったので確認してみるとファイル名が
“`
/bin/test/messages/find/base/given/channles.csv
“`
となっていた…ディレクトリ名を書くときはタイポがないように気をつけましょう。
#10 画面メッセージの標準化[messages. properties]
# #10 画面メッセージの標準化[messages. properties]
複数箇所に使用されるメッセージは1つにまとめて管理しておくことで変更が楽になります。今回は固定メッセージをmessages.properties内で管理します。# 前提条件
この記事はSpringの最低限の知識が必要になります。
また、なるべく分かりやすく書くつもりですが、この記事の目的は自分の勉強のアウトプットであるため、所々説明は省略します。# 前回まで
前回は画面レイアウトを作成しました。https://qiita.com/Jackoguro/items/db35aa456341a484254b
# 構築環境
1. 各バージョン
Spring Boot ver 2.7.52. 依存関係
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2884987/38798b19-ec94-bf73-ad31-9a5e21b2b326.png)# 成果物
![image.png](https://
Javaのenum型(列挙型)
## enum型とは
・定数を一つの型でまとめて管理できるクラス(一応)
・通常のクラスとは異なり、new演算子でオブジェクトは生成できない
・同じような意味を持つ定数をまとめて管理できる### 定義方法
“`java
public enum Animal {
CAT,
DOG,
FOX,
}
“`
### 使ってみる
今の現場ではenum型の定数を使った時、フィールドに値がセットされる使い方が多い。“`java
public enum Animal {
CAT(“猫”,1),
DOG(“犬”,2),
FOX(“狐”,3);private String name;
private int id;private Animal(String name, int id) {
this.name = name;
this.id = id;
}public String getName() {
return name;
}
Javaで何か作ってみる(2022/11/18 Day29)
## 今日やった事
– Udemyの動画教材を少し見た。(**J1-14_クラスとメソッド** まで見た。)
## 参考にしたもの
– [【超絶丁寧解説】Javaプログラミングをゼロから学ぶ!絶対挫折させない「基礎入門」講座【講師評価4.3】](https://www.udemy.com/course/uz-java-kiso/)
→ Javaの勉強に使用しているUdemyの動画教材。
## 所感
– 内容理解は完璧。
– springそろそろ着手したいな。
→動画教材探しておくか。
## 明日の予定
– 引き続き、動画教材を進めていく。
#9 Bootstrapを利用して画面の作成[2. デザイン作成][郵便番号から住所を自動入力]
# #9 Bootstrapを利用して画面の作成[2. デザイン作成][郵便番号から住所を自動入力]
# 前提条件
この記事はSpringの最低限の知識が必要になります。
また、なるべく分かりやすく書くつもりですが、この記事の目的は自分の勉強のアウトプットであるため、所々説明は省略します。# 前回まで
前回はBootstrapを利用するために環境設定を行いました。
今回は実際にBootstrapを利用してデザインを作成したいと思います。**環境設定**
https://qiita.com/Jackoguro/items/69153e445a0015ab1e12
**Bootstrapの一部機能まとめ**
https://qiita.com/Jackoguro/items/d539196ffe57205d06bb
**他の方がまとめてくれた記事**
https://qiita.com/nakanishi03/items/c80a16b9b9796c25f890
# 構築環境
1. 各バージョン
Spring Boot ver 2.7.5
jquery ver 3.6
JavaによるXMLとExcelのワークブックの相互変換
XML(Extensible Markup Language)は、ハイパーテキストマークアップ言語であり、ファイル形式の一つである。XMLは、ラベルをカスタマイズできる、拡張性がある、読みやすく編集しやすい、伝送しやすいなどの特徴があり、アプリケーション間のデータ交換に最もよく使われるツールになっている。マイクロソフトのOpenXMLのおかげで、ExcelもXMLベースの文書形式をサポートしており、開発者が表を伝送したり操作したりするのに便利である。しかし、一般ユーザーにとって、表ファイルはまだ読み取りと編集に便利なxlsまたはxlsx形式に変換する必要があります。この記事では、無料の [Free Spire.XLS for Java](https://jp.e-iceblue.com/introduce/free-spire-excel-for-java.html) を使用して、**XMLファイルをExeclワークブックに**、**ExcelワークブックをXMLファイルに変換**する方法を紹介します。
– [ExcelワークブックをXMLファイルに変換する](#excelワークブッ
Intellijで始めるSpring Boot
# 概要
今回は、Java入門としてIntellijとSpringBootで始めるアプリケーション開発を公開したいと思います。## Intellijとは
IntellijはJetBrainsという企業が開発するJVM言語向けのIDEで、インテリジェーと読みます。
IntellijはJVMデベロッパーの70%以上が利用するIDEで非常に高いシェアと機能性を備えています。## Spring Bootとは
Spring bootとは、Java言語の環境化で使用できるWebアプリケーションの開発をサポートするフレームワークの一つです。
Spring Frameworkとは別物なので注意しましょう。
違いをざっくり説明すると、
●Spring Frameworkは、Java言語のアプリケーション開発のために作られたフレームワークの集合体。
●Spring bootは、集合体となった機能を使いやすくするためのフレームワーク。
となります。気になる方は自分で調べてみて下さい。# 目次
1. Intellijのインストール
2. Spring Bootプロジェクトのひな型を作成し、アプリケ
【Linux】Linux Serverのawt使用不可の件
LocalPCではエラーなく運営できるが、サーバ-に乗せるとエラー(java.lang.NoClassDefFoundError: sun/awt/X11GraphicsEnvironment)が発生する場合があります。
OSによる設定の違いがエラーの原因で、
下記の中のどちらかを選び設定すれば、解決できます。【プログラム内に組み込み】
System.setProperty(“java.awt.headless”, “true”);【Serverの設定を変更】
catalina.shファイルのCATALINA_OPTS部分にオプションを追加する。
-Djava.awt.headless=true
Leetcode 153. Find Minimum in Rotated Sorted Array
# 153. Find Minimum in Rotated Sorted Array
https://leetcode.com/problems/find-minimum-in-rotated-sorted-array/description/
## 下記の問題も同じでした
> 154. Find Minimum in Rotated Sorted Array II
> https://leetcode.com/problems/find-minimum-in-rotated-sorted-array-ii/description/## アプローチ
### Brute force“`java
class Solution {
public int findMin(int[] nums) {
Arrays.sort(nums);
return nums[0];
}
}
“`
Leetcode 162. Find Peak Element
# 162. Find Peak Element
https://leetcode.com/problems/find-peak-element/description/?envType=study-plan&id=binary-search-ii
## アプローチ
### BruthForce“`java
class Solution {
public int findPeakElement(int[] nums) {
int check = Integer.MIN_VALUE;
int result = 0;
for(int i = 0 ; i < nums.length;i++){ if(check<=nums[i]){ result = i; check = nums[i]; } } return result; } } ```
Leetcode 263. Ugly Number
# 263. Ugly Number
https://leetcode.com/problems/ugly-number/description/# 難易度
– EASY# アプローチ
– Bruthforce## Java
“`java
class Solution {
public boolean isUgly(int n) {
if (n == 0) {
return false;
}
if (2 <= n && n <= 6) { return true; } while (true) { if (n % 2 == 0) { n /= 2; continue; } if (n % 3 == 0) { n /= 3; co
#8 Bootstrapの各機能まとめ1
# #8 Bootstrapの各機能まとめ1
Bootstrapを機能毎にまとめて行きます。
今回は第一弾として**Background**、**Visually hidden**、**Form controls**の3つをまとめて行きます。## 1. Background
https://getbootstrap.jp/docs/5.0/utilities/background/### 1. bg-
bg-XXXX と指定することで背景色を変更できます。例. bg-primary:青背景
“`html:html“`
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2884987/72eda3d8-444a-0476-bddc-343d02a57d1f.png)### 2. bg-gradient
bg-gradientを以下のようにHTML、CSSファイルに追加することにより、線形グラデーションが背景画像
[Java入門] コンソールアプリ用Scanner 備忘録
# コンソールアプリ用Scanner 備忘録
## 概要
Java入門者が作成するコンソールアプリにおいて、標準入力で操作する際に用いるScannerクラス。
サンプルコードを見様見真似で実装し、1度close()してしまうと、もう標準入力を受け付けません。close()せず標準入力の度にScannerを作れば解決ではあるのですが、ちょっと格好悪い。
そこで、Scannerを管理するクラスを作り、毎回利用しましょう。## 実装例
“`java:ScannerManager.java
public class ScannerManager {
/** スキャナーの宣言 */
private Scanner stdin = null;
/** スキャナーのインスタンス */
public static ScannerManager instance = new ScannerManager();/** スキャナーのインスタンスを取得 */
public static ScannerManager getInstance() {
return i
ファイル送信するまでは、アプリから出しませんよ。Android(java)
# 仕組み
Andoridアプリから、データをサーバー(Apache)へ送り、PHPが基幹システムへ送り出す処理を行ったら、Androidさんありがとう、お疲れ様です。# 画像
↓
# コード Main
“`java:MainActivity.java/**
* ヘッダー ボタン 処理
*
* @param item
* @return
*/
@Override
public
Leetcode 766. Toeplitz Matrix
# 766. Toeplitz Matrix
https://leetcode.com/problems/toeplitz-matrix/description/## アプローチ
### Brute-force
“`java
func isToeplitzMatrix(matrix [][]int) bool {
for i := 0 ; i < len(matrix) -1 ;i++{ for j := 0 ; j < len(matrix[0]) - 1 ;j++{ if matrix[i][j] != matrix[i + 1][j + 1]{ return false } } } return true } ```
Javaで何か作ってみる(2022/11/16 Day27)
## 今日やった事
– Javaの動画教材の演習問題である、ケーキ屋プログラムの作成を行った。
→コミットした内容は[こちら](https://github.com/takamatsuryota3/Java/commit/1acea849a55c752fdd48b639000dfad668cbd367)
## 参考にしたもの
– [【超絶丁寧解説】Javaプログラミングをゼロから学ぶ!絶対挫折させない「基礎入門」講座【講師評価4.3】](https://www.udemy.com/course/uz-java-kiso/)
→今回取り組んだのは、この動画教材の中の、**J1-EX1_総合演習(アルゴリズム)** の**総合演習(ケーキ屋プログラムの作成)** になる。
## 所感
– 大方ケーキ屋プログラムを完成させる事が出来た。
– Integer.parseIntの例外処理等、一部出来ていないところがある。
## 明日の予定
– 明日は、ケーキ屋プログラムの残りをやり切る。
– その後は、動画教材の続きから進めていく。
– (これは余談だが)明日、Ama