Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

雑に書くぞ! Faster and Easier Use and Redistribution of Java SE | Oracle Java Platform Group, Product Management Blog このエントリを読む限り、Oracle JDKのダウンロードが商用サポート契約者にのみ限られる、という話は書いていない。 The Oracle JDK will continue as a commercial long term support offering * The Oracle JDK will primarily be for commercial and support customers once OpenJDK binaries are interchangeable with the Oracle JDK (target late 2018) *
この記事は、「Java Advent Calendar 2016 - Qiita」の4日目の記事となります。 昨日は、@susumuisさんの「Javaが僕にくれたもの | susumuis Info」でした。 明日は、@fukushiwさんのご担当となります。 ローカルキャッシュ、今ならなにを使うでしょう? Javaのキャッシュライブラリといえば、なにを使うでしょうか?OSSものを中心に考えると、次の2つあたりが浮かぶのではないかなぁと思います。 Ehcache ※2系が強いのかな? Google Guava なお、今回は分散キャッシュは考えないことにします。あくまで、ローカルキャッシュを対象に。 Ehcacheについては、すでにAPIが刷新された3系がリリースされており、現時点で3.1が利用できます。…あんまり名前を聞きませんけれど。 ここで、対象として挙げたいのが、今回紹介するCaf
こちらのスライドは以下のサイトにて閲覧いただけます。 https://www.docswell.com/s/ockeghem/ZM6VNK-phpconf2021-spa-security シングルページアプリケーション(SPA)において、セッションIDやトークンの格納場所はCookieあるいはlocalStorageのいずれが良いのかなど、セキュリティ上の課題がネット上で議論されていますが、残念ながら間違った前提に基づくものが多いようです。このトークでは、SPAのセキュリティを構成する基礎技術を説明した後、著名なフレームワークな状況とエンジニアの技術理解の現状を踏まえ、SPAセキュリティの現実的な方法について説明します。 動画はこちら https://www.youtube.com/watch?v=pc57hw6haXk
4/7に、LINEさんのオフィスで開催された「JVM Operation Casual Talks」。 一部で、Cassandra Casualだったのではないかという疑惑もありましたが、なかなかためになる話が多くて、あとできっと資料を見たくなる日が来そうなので、ちょっとまとめておこうと思う。 こちらもあわせて読みたい JVM Operation Casual Talks #jvmcasual - Togetter Understanding Memory Management of JavaVM in 15 minutes (@stanakaさん) https://speakerdeck.com/stanaka/understanding-memory-management-of-javavm-in-15-minutes @stanakaさん、どこでJVM使ってるのかと思ったら、今日は
Javaトラブルでは『情報がなくて、再現もなかなかしません』といった状況に陥ることがある。このような状況を回避するために、以下の3つの代表的なトラブルを例に、アプリケーションサーバを再起動する前に何を取得すれば良いのかをまとめてみる。 アプリケーションから応答がない アプリケーションが遅い ヒープメモリが足りない(OutOfMemoryErrorの発生) アプリケーションから応答がない 取得する情報 スレッドダンプ データ取得方法 スレッドダンプとは、コマンド実行時点でのJavaスレッド実行状態を出力したものである。応答がない場合、何らかの要因によりどこかで処理が止まっていることが想定される。スレッドダンプは『どこで止まっているのか?』を切り分けるのに大切な情報である。 取得方法はJDKのバージョンによって色々ある。 kill -3 <pid> (少なくとも1.4.2にはある〜JDK7でも
型パラメータつきクラスHoeがあるとして、指定された型パラメータをHoeクラスの中から知る方法。 public class Hoe<E> { private Class<E> type; public Hoe(E... e) { @SuppressWarnings("unchecked") Class<E> type = (Class<E>) e.getClass().getComponentType(); this.type = type; } public Class<E> getType() { return type; } } こうすると、具体的な型パラメータを取得できる。 例えば Hoe<Fuga> hoe = new Hoe<Fuga>(); という文があった場合、hoe.getType()はFuga.classになる。 かなり裏技的だけど。
About Kuromoji Kuromoji is an open source Japanese morphological analyzer written in Java. Kuromoji has been donated to the Apache Software Foundation and provides the Japanese language support in Apache Lucene and Apache Solr 3.6 and 4.0 releases, but it can also be used separately. Downloading Download Apache Lucene or Apache Solr if you want to use Kuromoji with Lucene or Solr. See below for so
以下では、これらのメソッドを使って、リクエストされたURLからパス情報を取り出す例をいくつか紹介します。リクエストされたURLは、仮に「http://localhost:8080/javatips/ServletPath/sample_param/」とします。 out.println(request.getContextPath()); // /javatips out.println(request.getServletPath()); // /ServletPath out.println(request.getPathInfo()); // /sample_param/ out.println(request.getPathTranslated()); // C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\
2020-07-22更新: 以下の投稿で情報をアップデートしています。 https://blog.kengo-toda.jp/entry/2020/07/21/223136 いつも購読させていただいている id:teppeis さんのブックマークに以下のエントリが流れてきて、なるほどこいつはたしかに厄介だと思いました。 javaのロガーが多すぎて訳が解らないので整理してみました - 文系プログラマによるTIPSブログ ただSLF4Jが最も先進的かつ著名なインタフェースである以上、配布側としてはSLF4Jを使いつつ問題を解決したいところです。他のインタフェースを使ったりオレオレ実装を使ったりしてしまうと、それこそユーザの自由度を奪ってしまう形になります。 実際、SLF4Jを配布パッケージに含めないという簡単な解決法がありますので、簡単に紹介します。悲劇を繰り返さないためにライブラリ開発者がす
【概要】 Look & Feel を自作する方法の紹介。自分好みの Look & Feel を作成して使用したり、公開したりするための Tips。 【キーワード】 Look & Feel、Look And Feel、lnf、ルック&フィール、自作、つくり方 ... もっと読む 【概要】 プライベートなメソッドやフィールドに外部から強引にアクセスする方法。カプセル化を破壊するので通常のプログラミングではまず使うべきではないが、ライブラリ利用時にどうしてもある状態をつくり出したい時や、private メソッドに対するテストケースを作成し ... もっと読む 【概要】 クラスローダーを自作する方法の紹介。クラスローダーの自作が有効なケースとして代表的なものは次の通り。 ・同一 FQN で異なるクラスを扱いたい(複数バージョンのライブラリを同一 JVM 上で取り扱いたいときなど) ・クラスの定義を
まだ正月休みなのです。暇なので訳してみました。 この記事は 1年半以上前に Play の生みの親である Guillaume Bort がブログに書いたものです。 (2012/8/19追記: リンク切れしていたためリンクを貼り直しました) なぜ Playframework では Servlet が一切使われていないのかについて、簡潔に書いています。 丸山先生が Play に注目し始めた今、Play2.0 のリリースが間近に迫った今、あらためて読むと面白いかも知れません。 なぜ Play は Servlet を使っていないのか Servlet API に準拠せずに Java web フレームワークを作ることはかなり変に思えるかも知れない。大抵の人はなぜこんな普通じゃない選択をしたのかを聞いてくる。気に入ってくれる人も何人かいるが、大半は毛嫌いする。正直に言うと、 Play フレームワークの一番
このエントリは Java Advent Calendar 2011 の一環で、第 1 日目のエントリーです。 やっぱり、櫻庭といえば Java SE の新しいところでしょう (これ去年も書いたなぁ ^ ^;;)。ということで、Java SE 8 の目玉機能となっている Project Lambda を取りあげます。 結果的に超長文になってしまいましたww 厳密にいえば、Lambda はクロージャではありません。 追記: ここでいっているクロージャはレキシカルスコープが使用できる無名関数のことを意味しています。 (るとさん、コメントありがとうございました) では、ラムダ式とはなんなのか? それはタスクを簡単に書くことを目的とした、単一メソッドのインタフェースのインスタンス生成を簡単に書くための簡易記法です。ようするにシンタックスシュガーでしかありません。 ここでいうタスクは、特にパラレルに処
Java 8、Java 9はどうなるのか。JavaOneの基調講演で示された方向性。JavaOne 2011 7月に登場した「Java 7」に続くバージョンとして開発中の「Java 8」「Java 9」。 オラクル Java Platformチーフアーキテクト Mark Reinhold氏は、サンフランシスコで先週、10月4日から開催された「JaveOne 2011」の基調講演で、「Java 8」の機能として予定されている、マルチコアプロセッサへの対応を目的とした「Project Lambda」、大規模プログラミングへの対応を目指す「Project Jigsaw」の紹介を行いました。 さらに「Java 9」の構想としてビッグデータ、マルチテナント対応などがあることを明らかにしました。 本記事は「「Java 7」とはどんなリリースだったのか、チーフアーキテクトが解説。JavaOne 2011
長年Javaを書いてきた人間としてはちょっと情けないことに、先日、会社で自分の書いたコードが原因でちょっとしたバグを出してしまいました。きちんとテストファーストで単体試験は書いていたのですがテストが不十分でしたね。 バグの原因は、Fileクラスの仕様をちょっと勘違いして使っていたことが原因でした。FileクラスにはrenameTo()というメソッドがあって、このメソッドの呼び出しにより、操作が成功すればもともとFileクラスのオブジェクトに対応していたファイルの名前がファイルシステム上で変更されます。ここで、うっかり、Fileクラスが可変なクラスだと勘違いしてしまっていたのですが、実は、Java Docにも明記されている通り、Fileクラスは不変(immutable)なクラスであり、一度生成したら状態が決して変更されることがない設計となっています。これは、以下のテストケースを見ると確認でき
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く