JAVA関連のことを調べてみた2021年01月26日

JAVA関連のことを調べてみた2021年01月26日

java IntegerList String変換

private String toString( integers) {
List list = new ArrayList<>();
for (Integer integer: integers) {
list.add(String.valueOf(integer));
}
return String.join(“,”, list);
}

元記事を表示

AndroidStudio[Material Design]を導入

<記録用>
AndroidStudioへMaterialDesignを入れてみる。

参考サイト
https://material.io/develop/android/docs/getting-started

元記事を表示

Apache MINA SSHD を使って Java で SFTP サーバをつくる

https://github.com/apache/mina-sshd
MINA SSHD を使えば Java のプロセスを立ち上げるだけで SFTP サーバが用意できます。
急に SFTP サーバが必要になった時に便利。

Spring Boot で Bean としておけば、 HTTP を提供しながら SFTP を提供とかできます。
試した系の記事はもうありますが、細かいところを色々調べる必要があったのでメモ。

—-

全体はこんな感じ。結構公開用に書き直したりメソッドを開いたりしているので参考程度です。

“`java
@Bean
public SshServer sftpServer(
String serverKeyPath
) throws IOException {

// 1
SshServer server = SshServer.setUpDefaultServer();
server.setPort(8021);

元記事を表示

MPAndroidChartのメモ

MPAndroidChartの使い方メモ
折れ線グラフをScroll(横方向)させる。

//グラフをスクロール可能にする
mChart.setVisibleXRangeMaximum(7f);

元記事を表示

Metabaseでドリルダウン・ドリルスルーのような機能を実装する

#課題
Metabaseの公式ドキュメントを見てみたが、ドリルダウン・ドリルスルーが実現できるのか不明・・・

ディスカッションを検索しても良く分からず。

https://discourse.metabase.com/search?q=drill

#解決策

集計用のダッシュボードと、ドリルダウン先のダッシュボードを作成して、疑似ドリルダウンを実装する。
このやり方でも、意外と色々実現できると思われる。

##①フィルタを実現する

* ドリルダウン先のデータを作成する。

* SQLのwhereに変数を使用する。

* ここでは、 {{ID}}で、ID変数を使用している。
* where以降を [[ where ~ ]] と囲むと、条件指定が抜けていても動作するようになる。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/389658/8f407bd9-f074-e28b-e9f1-4522c7573b99.png)

* ダッシュボード側で、IDと変数のIDを紐づける。

元記事を表示

WebLogic CVE-2021-2109 JNDI RCE

console的JNDI注入,需要登录。

# 复现
1. weblogic 14.1.1
2. jdk8u112
3. [JNDI-Injection-Exploit](https://github.com/welk1n/JNDI-Injection-Exploit)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593424/88a5af7b-2cc7-055e-66a5-1e1727b0cc40.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593424/969d2268-9373-15f0-25ed-2a62093bf742.png)

# 分析
consolejndi.portal中存在`JNDIBindingPageGeneral` jndi绑定的东西

![image.png](https://qiita-image-store.s3.ap-northeast-

元記事を表示

【Java】StringBuilderの使い方 

#はじめに
本記事では2つ以上の文字列を連結させる際に使用するStringBuilderの使い方についてアウトプットします。

#+演算子で文字列結合する問題点
文字列結合で最も簡単な方法は+演算子を使うことですが、以下のような問題点があります。
・Stringインスタンスは不変 (値の変更ができない)
・+によって連結が行われる場合、古いインスタンスは捨てられ、newによって新たなインスタンスが生成される
・大量の文字列を連結させる場合、JVMへの負担が大きくなる

この問題を解決するのがStringBuilderです。

#書き方
StringBuilderは可変なクラスとして設計されているため、newをしなくても文字列の連結が可能です。
そのためJVMへの負担が軽減され、処理が高速化します。

toStringメソッドで文字列ビルダーから文字列を取得する方法が一般的に推奨されています。

“`java
StringBuilder sb = new StringBuilder();

sb.append(“Hello “);
sb.append(“Qiita!”);

Syst

元記事を表示

【Java】java.lang.NullPointerExceptionを避ける方法

#プログラミング勉強日記
2021年1月23日
Javaでコードを書いているときに、よく出てくるNullPointerExcptionの意味と、NullPointerExcptionにならないようにする方法をまとめる。

“`:java.lang.NullPointerException
Request processing failed; nested exception is java.lang.NullPointerException
“`

#NullPointerExceptionとは
 参照型の変数の値にnullが格納されているとき、それを参照しようとしたときには発生する例外である。

> NullPointerException(ナル・ポインタ・エクセプション、ヌル-)は、プログラミング言語Javaにおける例外の一つである。
null値(定義されていない値)の参照型変数を参照しようとした時に発生する。NullPointerExceptionは実行時例外と呼ばれるjava.lang.RuntimeException クラスのサブクラスであるため、try-catch節に

元記事を表示

【JavaScript, Java】数値の桁数を取得する方法

#プログラミング勉強日記
2021年1月25日
数値の桁数の取得方法に困ったので、備忘録として書く。

#JavaScriptで数値の桁数を取得する

“`js
let number = 12345;
let numberDigit = String(nuber).length;
console.log(numberDigit); // 5
“`

#Javaで数値の桁数を取得する

“`java
int number = 12345;
int numberDigit = String.valueOf(number).length();
System.out.println(numberDigit); // 5
“`

#入力した整数値の桁数を出力するプログラム

“`html




sample