タグ

Javaに関するhennamanaoのブックマーク (26)

  • Log4j 2のバージョンアップのやりかた - 日々常々

    Log4j 2に脆弱性があるらしい、バージョンアップしたら治るらしい。」 日話題のこのテーマで軽く書いておきます。 未完です。 未完公開の言い訳。更新した内容は最後に書いてます。大きな間違いは(今のとこ)ないので、よかった。 2021-12-20追記: 2.17.0 出てますのでコピペしてそのままにせず適宜読み替えてくださいね。 とにかくバージョンを上げよう ……リリースできるかは別の話として。 バージョンを上げられないことには話になりません。ということでとにかくあげましょう。 Log4j 2のようなログライブラリは多くのプロダクトで使用されています。 意識する/しないに関わらず、ログライブラリは何かしら関連があると思うべきでしょう。 使用しているかの調べ方 常時依存ライブラリリストを出力するなどして管理しているのであればそれを見ればいいだけの話ですが、そうでなければ、 mvn dep

  • 「やばすぎる」 Javaライブラリ「Log4j」にゼロデイ脆弱性、任意のリモートコードを実行可能 iCloudやSteam、Minecraftなど広範囲のJava製品に影響か

    Webセキュリティ製品などを手掛ける米LunaSecの報告によると、Minecraftの他、ゲームプラットフォームのSteamAppleの「iCloud」もこの脆弱性を持つことが分かっており、影響は広範囲に及ぶと考えられるという。 この脆弱性の影響があるのは、Log4jのバージョン2.0から2.14.1までと当初みられていたが、Log4jGitHub上の議論では、1.x系も同様の脆弱性を抱えていることが報告されている。対策には、修正済みのバージョンである2.15.0-rc2へのアップデートが推奨されている。 セキュリティニュースサイト「Cyber Kendra」によれば、この脆弱性に対して付与されるCVE番号は「CVE-2021-44228」という。 脆弱性の報告を受け、Twitter上ではITエンジニアたちが続々反応。「やばすぎる」「思っていたよりずっとひどいバグだった」「なぜこんな

    「やばすぎる」 Javaライブラリ「Log4j」にゼロデイ脆弱性、任意のリモートコードを実行可能 iCloudやSteam、Minecraftなど広範囲のJava製品に影響か
    hennamanao
    hennamanao 2021/12/11
    仕事でよく使ってるんだが〜〜???どうなるんだろ…
  • オラクル、Oracle JDKを再び無料提供へ、本番環境でも利用可。昨日リリースのJava 17から

    オラクルは、同社が提供している企業向けのJavaディストリビューションであるOracle JDKのライセンスを変更し、無料で番環境などでの利用を可能にしました。 同社が9月14日付で公開したブログ「Introducing the Free Java License 」で、次のように説明しています(関連するプレスリリース「Oracle Releases Java 17」)。 Oracle JDKを無料で提供し、四半期ごとのセキュリティアップデートも提供する。 新ライセンス「Oracle No-Fee Terms and Conditions (NFTC)」は、商用利用や番環境での利用を含むすべてのユーザーに対して無料での利用を許可する。 Oracle JDK 17から、この無料のリリースとアップデートの提供を開始する。これは次の長期サポート(LTS:Long Term Support)が

    オラクル、Oracle JDKを再び無料提供へ、本番環境でも利用可。昨日リリースのJava 17から
    hennamanao
    hennamanao 2021/09/15
    なんなんだ
  • 100万件ぐらいのレコードを扱ったらOOMEが出た話。 - 谷本 心 in せろ部屋

    要約 技術的な話だけ教えて、という方のために先に結論だけ書いておきますと、PostgreSQLはクエリを実行した時点で全レコードの情報を一気に読んできてヒープを埋めてしまう場合がある、ということ話です。 たとえば、ResultSet#nextメソッドを使いながら処理を回すようなコードを書いて、少ないヒープでも処理できるようにするのは常套手段だと思いますが、そういうコードを書いていても一気にヒープを消費してしまうことがあるのです。詳しくはこのドキュメントを見てください。 https://jdbc.postgresql.org/documentation/head/query.html#query-with-cursor ことの発端 ちょっと仕事Java + jOOQ + PostgreSQLで、DBのデータを集計するようなバッチ処理を書いてまして、もちろん俺様の書いたコードにバグなんてある

    100万件ぐらいのレコードを扱ったらOOMEが出た話。 - 谷本 心 in せろ部屋
  • 「Java SE 6完全攻略」第53回 ResourceBundleの新機能 その1

    国際化プログラミングで避けて通れないのが、ユーザインターフェースなどで使用される文字列です。 たとえば、メニューバーの文字列は英語であれば「File」と表記し、日語であれば「ファイル」と表記します。言語に応じて変化させるということは、ロケールに応じて変化させるということと同じです。 つまり、これらの文字列はそれぞれのロケールごとに用意しておき、実行時に差し替えます。このようにロケールごとに変化させる文字列などをまとめて地域化リソースと呼びます。 そして、地域化リソースを扱うためのクラスがjava.util.ResourceBundleクラスです。 Java SE 6では、このResourceBundleクラスの機能が大幅に強化されました。 そこで、今週はResourceBundleクラスの基的な使用方法を紹介し、来週から新しい機能について紹介していくことにしましょう。 Resource

    「Java SE 6完全攻略」第53回 ResourceBundleの新機能 その1
  • いまさらですが、職業Javaプログラマーなら理解しておいてほしい「継承」の意味について - 達人プログラマーを目指して

    正しく意味を理解している方にとっては、まったく常識レベルの話であり、何をいまさらと思われる方々も多いかと思いますが、大規模案件のレガシーコードなど、私が仕事で見かけるJavaのコードを読むと、「このコードを書いたSEやPGの方々は、はたして継承の意味を正しく理解していないのではないか」と思われる設計のコードに出会うことが少なからずあります。現在では改良されましたが(Javaプログラミング能力認定試験の問題がかなり改善されていました - 達人プログラマーを目指して)、以前のJavaプログラム認定試験の問題は、そうした不適切な設計がされている典型的な例となっていたのですが、実際、SI業界ではあのような品質のコードのシステムが今でも現役で多数稼動しているというだけでなく、現在でも新たに生み出されているというのは残念ながら紛れもない事実のようなのです。 確かに新人研修で「哺乳類を継承して犬クラスと

    いまさらですが、職業Javaプログラマーなら理解しておいてほしい「継承」の意味について - 達人プログラマーを目指して
  • My Sonatype

    Webhooks Example: IQ and Slack Integration Build a webhook and deploy it to a Serverless framework like AWS Lambda. The Serverless function will consume an IQ policy evaluation event and push a message about it to Slack.

  • トップページ

    SQL データベース操作言語SQLについて、またRDBMSの持つ機能について詳しく解説します。 DB概要、SQL、テーブル操作、データ操作 ... 特集:replication PostgreSQLのレプリケーションシステムを紹介し、それらの機能を比較していきます。 特集:pgbench PostgreSQLのベンチマークテストに用いられるプログラムである pgbench について解説します。 SQL演習問題 各章に用意された演習問題を集めました。

  • Site Cooler NZ | Points to Note When Shopping for a Washing Machine

    Blog Post Featured post Sprinkle delicious dishes as a cook with gourmet cookware Continue reading Points to Note When Shopping for a Washing Machine There are different washing machines brands in New Zealand. When shopping, therefore, you need to ensure that first, you get a quality machine; a machine that will last through many years without breaking down. You check product warranties and review

  • http://japan.internet.com/developer/20080304/26.html

  • Java技術によるWebアプリケーション開発入門 : 富士通

    記事は開発者を対象としたJavaベースのWebアプリケーションの入門書です。 内容について、ご意見・ご要望があれば、SDASに関するご意見・ご要望フォーム よりお願いします。 内容の改良のため、ご質問も歓迎します。 どんな基的なことでも遠慮せずにどうぞ。 目次

  • The Seasar Foundation Project Site

    利用者向け情報 ニュース & Wiki プロダクト一覧 メーリングリスト Eclipseプラグイン Mavenリポジトリ ライセンス 各種リソース イベントサイト ファウンデーションサイト 開発者向け情報 SeasarWiki ソースコードリポジトリ 課題追跡 継続的ビルド 開発者ログイン サーバチームサイト Java プロジェクト S2Container.Java Seasar2 (S2Container) Presentation.Java Cubby Mayaa mobylet S2BlazeDS S2Flex S2JSF S2OpenAMF S2Portlet S2Struts SAStruts Teeda Ymir Persistence.Java DBFlute Doma Kuina S2Dao S2Hibernate S2JDBC S2OpenJPA S2TopLink Co

  • リフレクションはやっぱり遅いのか? - うなの日記

    遅い遅いと敬遠されがちなリフレクションですが、最近のJDKでもやっぱり遅いのか計測してみました。 setメソッドを呼び出して値を設定する処理を10万回実行した際の所要時間を計測 10回試行し平均を取得。 JRE1.5,1.6でそれぞれ試した 結果 JDK1.5.0_09 JDK1.6update1 メソッド呼び出し 1msec 1msec リフレクションを使う(メソッド検索時間は含まない) 87msec 54msec リフレクションを使う(メソッド検索時間を含む) 842msec 582msec やはりそれなりには重いけど、10万回実行してこれだけの差ならよっぽどクリティカルな部分でなければ問題ないのでは、と思いました。 計測で使用したコード 計測タスク。 /** * リフレクションを使って値を設定するタスク * メソッド検索時間を含む */ static class Reflection

    リフレクションはやっぱり遅いのか? - うなの日記
  • Java変態文法最速マスター - プログラマーの脳みそ

    Java基礎文法最速マスター - いろいろ解析日記をリスペクト。 Javaの変態文法・技法一覧です。Javaの基礎をある程度知っている人はこれを読めばJavaの変態をマスターしてJavaを書くことができるようになっています。簡易リファレンスとしても利用できると思いますので、これは足りないと思うものがあれば教えてください。 1.基礎 エンクロージング型内部classの作成 外部classのインスタンスに紐付くインスタンスを生成します。外部クラスのインスタンス - 内部クラスのインスタンス間に、クラス - インスタンスのような関係を持たせることができます。 public class Outer { public class Inner { } } というようなクラスを作った場合、 Outer o = new Outer(); Inner i = o.new Inner(); となります。new

    Java変態文法最速マスター - プログラマーの脳みそ
  • JSPの特徴を理解する

    記事は2001年に執筆されたものです。JSP全般の最新情報は@IT キーワードINDEXの「JSP/Servlet」を、Tomcat全般の最新情報は@IT Java Solutuionのカテゴリ「アプリケーションサーバ(Tomcatなど)」をご参照ください。 やり直し「JSPとTomcat」 途中までかじったが挫折した。スキルチェンジしたい!という読者のために、Tomcatの最新バージョンを使いながらJSPを基礎から解説していく 「Java Solution」フォーラム 2007/4/19 Javaという言語がサンマイクロシステムズによって世に出されてからずいぶんたちました。Javaが登場した当時、Javaといえばアプレットと同義にとらえられ、ブラウザ上で動作するアニメーションやゲームを作成するための技術として世の中に広まっていきました。 しかしながら、アプレットはJavaを用いてできる

    JSPの特徴を理解する
  • Javaでゲーム作りますが何か? - 人工知能に関する断創録

    Javaを使ったゲームプログラミングについて書いてます。 プログラムはJAR形式で公開しているのでダブルクリックで実行してください。 ソースファイルはJARファイルの中に入っているので解凍してご覧下さい。基的に全部ソースファイル入ってます。著作権を主張することはないので自由に使ってください。 リンク切れやリンク先がおかしいなどありましたらコメントをいただけると助かります。 ブログはその他雑多な記事も多いため、記事下にあるナビゲーション機能はほとんど役に立ちません。このページを起点としてリンク先へ、読んだら戻るといった使い方が楽だと思います。 リンク先がない項目は面倒くさくなって解説を書いておらず、ソースファイルの提供のみとなっています。ご了承ください。 かなり昔の記事なので細かい内容に関する質問に私からはお答えできないと思います。もっと人が多いサイトで聞いた方がよいかもしれません。 NE

    Javaでゲーム作りますが何か? - 人工知能に関する断創録
  • 静的オブジェクト指向は設計者が苦労を背負込むシステム

    2009-09-26 北陸Scala第1回開催 2009-04-04 第十四回java-ja勉強会 - 第1回チキチキ 地方巡業withひがやすを飲み会in富山開催 2009-03-20 わんくま大阪勉強会#28 「ジェネリクスを使おう!」 2008-11-08 わんくま富山勉強会#1 開催 2008-08-09 わんくま東京勉強会#23 「C#登場前夜」 2008-04-01 *で始まるタイトルはエイプリルフールネタです 2008-01-26 わんくま東京勉強会#16 「ライブプログラミング」 2007-12-08 わんくま名古屋勉強会#1 「わんくま初めてのJava」 2007-07-28 開店 みねこあさんのところで挙がっていた、 静的オブジェクト指向と動的オブジェクト指向の軽さについての話題から。 Javaは経済的事情をうまく捉えて普及した プログラミングの効率と経済で書いていると

  • デザインパターンの骸骨たち

    『デザインパターン』 うんちくできると、かっこよさそうだよね~。でもあんな分厚い読んでもピンとこないし、だいたいオブジェクト指向ってなに?なにが便利なのかよく分からんのだけど。いいじゃんなんでも。できればいいんだよ、できれば。 な~んて、思っていても、なんとなく オブジェクト指向が気になっている システム開発者は、多いのではないでしょうか?かくいう 私もそんな者の一人でした。 しかし、これだけ もてはやされているオブジェクト指向です。 なんか、便利なはずです。 そこで、私は、GOFのデザインパターン[1]を、できるだけシンプルに表現した、小さな小さなプログラム ~デザインパターンの骸骨たち~ を作ってみました。骸骨達 を骨の髄までしゃぶり尽くつくすせば、オブジェクト指向の真髄まで味わうことができるかも。!? 『デザインパターンの骸骨たち(RE-BONE)』 では、内容を大幅に見直し、Ja

  • サルでもわかる 逆引きデザインパターン 第1章 はじめてのデザインパターン はじめに:

    第1章 はじめてのデザインパターン はじめに デザインパターンとは 特集の構成 すぐわかるオブジェクト指向 すぐわかるUML おわりに 第2章 逆引きカタログ ロジック編 Singleton (シングルトン) Factory/Factory Method (ファクトリ/ファクトリメソッド) Strategy (ストラテジ) Composite (コンポジット) Visiter (ビジタ) 第3章 逆引きカタログ J2EE編 Template Method (テンプレートメソッド) Facade (ファサード) ViewHelper (ビューヘルパ) DAO (Data Access Object) 第4章 逆引きカタログ その他 ユーティリティクラス 実行時例外を標準的に使う Nullオブジェクト 第5章 デザインパターン適用の勘所 はじめに アプリケーションの仕様 リファクタリング前のサ

  • デザインパターンを読み解く

    ポリモーフィズム(サブクラスによる切り替え、抽象化) ここに分類されるのは、オブジェクト指向の第3原則、ポリモーフィズムを使用したパターンです。ポリモーフィズムを使用すると、動的に使用するクラスを切り替えることができます。<参照> 他に分類されているものでも、ポリモーフィズムが重要な位置を占めているものもありますが、ここではそれしか使われていないものを扱います。 ただデザインパターン全体を通して強調されているのは、インターフェースでプログラミングするということです。実装への依存をなくし、そうすることによって設計の骨組みを明らかにするのです。 Template 次のようなメソッドがあった場合に、処理Bのところを条件によって変えたい場合があるとします。 class Hogehoge { void doit() { ... 処理A ... ... 処理B ... ... 処理C ... } }