タグ

javaに関するcvyanのブックマーク (41)

  • Log4jの深刻な脆弱性CVE-2021-44228についてまとめてみた - piyolog

    2021年12月10日、Javaベースのログ出力ライブラリ「Apache Log4j」の2.x系バージョン(以降はLog4j2と記載)で確認された深刻な脆弱性を修正したバージョンが公開されました。セキュリティ関係組織では過去話題になったHeartbleedやShellshockと同レベルの脆弱性とも評価しています。ここでは関連する情報をまとめます。 1.何が起きたの? Javaベースのログ出力ライブラリLog4j2で深刻な脆弱性(CVE-2021-44228)を修正したバージョンが公開された。その後も修正が不完全であったことなどを理由に2件の脆弱性が修正された。 広く利用されているライブラリであるため影響を受ける対象が多く存在するとみられ、攻撃が容易であることから2014年のHeartbleed、Shellshock以来の危険性があるとみる向きもあり、The Apache Software

    Log4jの深刻な脆弱性CVE-2021-44228についてまとめてみた - piyolog
  • OutOfMemoryErrorの原因と対応(3) | プログラミング

    OutOfMemoryError回避のためのJavaコーディング – 前編と後編でOutOfMemoryErrorの典型的な発生パターンを3つ紹介した。 (A)サイズオーバー型 巨大な領域確保によって一気にヒープの最大サイズをオーバー (B)メモリリーク型 開放されないオブジェクトが溜まり続けることで使用中メモリが徐々に増加し、メモリが枯渇 (C)マルチスレッド型 長時間処理により”死んだ”スレッドがメモリをい尽くす じゃあOutOfMemoryErrorが発生したときに、どのパターンのエラーに該当するのか?これを見抜くための手がかりを最後の話題にしたい。 原因究明の手がかりは・・・? OutOfMemoryErrorの原因究明。見るべきポイントはいくつかある。 再現するかどうかをチェック まずは、特定のURLにアクセスした際に高頻度でOutOfMemoryErrorが発生するかどうか、

    OutOfMemoryErrorの原因と対応(3) | プログラミング
    cvyan
    cvyan 2021/08/05
  • OracleとGoogleのJava著作権侵犯裁判の現状を知る(2018年版) - orangeitems’s diary

    控訴審でOracleGoogleに勝利 Oracleが、Googleに対してここ8年間に渡ってJavaをめぐり約1兆円以上の損害賠償を求めている裁判が行われているのをご存じでしょうか。かの有名なAndroidは一部、Java APIが利用されているのですが、その中で著作権侵害があったとの訴えです。 米国時間で2018/3/27にOracleGoogleに勝利したというニュースが舞い込みました。 jp.techcrunch.com 火曜日(米国時間3/27)に連邦控訴裁がこの訴訟に新しい命を吹き込み、GoogleOracleJava APIsを使ってモバイルオペレーティングシステムAndroidを作ったことは著作権法の侵犯にあたる、と裁定した。 とはいえ、経緯を知らない人にとっては何のことやらわからない記事だと思いますので、短時間で理解できるようにまとめてみたいと思います。 賠償金額

    OracleとGoogleのJava著作権侵犯裁判の現状を知る(2018年版) - orangeitems’s diary
  • Struts2が危険である理由

    はじめに 2017年3月、Struts2にまたしても新たな脆弱性(S2-045、S2-046)が見つかり、複数のウェブサイトにおいて情報漏洩等の被害が発生しました。筆者は2014年4月(およそ3年前)に「例えば、Strutsを避ける」という記事を書きましたが、今読み返してみると「やや調査不足の状態で書いてしまったな」と感じる点もあります。今回、良いタイミングなのでもう一度Struts2のセキュリティについてざっとまとめてみたいと思います。 なぜJavaなのにリモートからの任意のコード実行(いわゆるRCE)が可能なのか Struts2はJavaアプリケーションであり、Java製のアプリケーションサーバ上で動作します。Javaはいわゆるコンパイル型の言語であるため、通常はランタイムにおいて任意のコードを実行することはできず、RCEは難しいはずです。 JavaのウェブアプリケーションでRCEが成

    Struts2が危険である理由
  • 「Java」Java SE 7 Update 51 例外サイト・リスト - プログラム日記

    Java SE 7 Update 51 で導入された「例外サイト・リスト」について、ちょっとしたメモ。 ・Exception Site List http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/exception_site_list.html ・System- and User-Level Properties - Certificate stores and policy files http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/properties.html ドキュメントによると、「例外サイト・リスト」は、deployment.properties の deployment.user.security.exception.sites プロパティに

    「Java」Java SE 7 Update 51 例外サイト・リスト - プログラム日記
  • 俺の言語がこんなに遅いわけがない!? 〜C, Java, PHP, Python, Rubyによるプログラミング言語 速度比較〜 | 株式会社メイプルシステムズ

    こんにちは。最近、複数の言語にまたがった処理が必要なプログラムを書くハメになっている西山です。 いろいろなプログラミング言語を触っているとそれぞれの言語の特性が気になってきます。世の中にはたくさんのプログラミング言語があり、それぞれ特徴を持っていて、いろいろな長所短所があることでしょう。 ひとつ、プログラミング言語の特徴を比較する上で、それらの言語で書かれたプログラムの実行速度というものはわかりやすい指標になるのではないでしょうか。 今回、わたしが思いつくままに選んだ『5つのプログラミング言語で同じ内容の処理を実行しその実行速度を比較する』という実験を行ってみたので、この記事にてご紹介しようと思います。 実験内容 対象言語 まず対象プログラミング言語として C Java PHP Python Ruby を選びました。書きやすかったので。 実行する処理 実行する共通の処理として、これもけっこ

    俺の言語がこんなに遅いわけがない!? 〜C, Java, PHP, Python, Rubyによるプログラミング言語 速度比較〜 | 株式会社メイプルシステムズ
  • 良いプログラマを目指すなら「Java並行処理プログラミング」は今すぐ読むべき - higepon blog

    Java並行処理プログラミングを読み終えた。ここ 1 年に読んだ技術書の中でダントツのベスト。(2位はWorking Effectively With Legacy Code) 「Javaだから関係ない」と思った人にこそ読んで欲しい。僕もここ数年 Java のコードなど一切書いていないが、このを読んで得たものは非常に大きかった。 このでは マルチスレッドプログラミングにおける問題と背景、その対処方法 Java が提供している API の設計と実装 を解説している。分かりやすさとレベルの高さを兼ね備えたとても良い。翻訳も最高。 僕はこのを読んで、Java の並行処理プログラミングは、想像を遙かに超えて進化している事に驚きを隠せなかった。何回も twitterJava すげーと叫んだ。 これを読んでしまうと、最近僕が熱心な Scheme も含めて、自分の身の回りにあるプログ

    良いプログラマを目指すなら「Java並行処理プログラミング」は今すぐ読むべき - higepon blog
  • 第2回 Comet---プッシュ型のWebアプリケーションを作る

    この記事は,日経ソフトウエア2007年1月号,連載「簡単実装で学ぶWeb技術2006」の第7回「Comet――プッシュ型のWebアプリケーションを作る」の再録です。記事は執筆時の情報に基づいており,現在では異なる場合があります。 こんにちは,結城浩です。 今回は,サーバーからデータをプッシュするタイプのWebアプリケーションを作成する技法の「Comet」を紹介します。簡単なチャット・プログラムを通してCometの仕組みを学びましょう。 Cometとは 通常のWebアプリケーションは,クライアント(Webブラウザ)から送られてくるリクエストを受け取って動作します。つまり,WebアプリケーションはユーザーがWeb上のリンクをたどったり,ボタンを押したりすることをきっかけに動くのです。ここで,動きの主導権はクライアント側にあります。クライアントがサーバーから情報を「引き出す」ことによって動作する

    第2回 Comet---プッシュ型のWebアプリケーションを作る
  • Google Japan Blog: Google Web Toolkit で遊んでみました その1

    私の場合、Googleエンジニアとして働いていても、C++ でサーバー側のコードを書いている時間が一番長かったりして、案外イマドキの Web2.0的技術、たとえば Google Maps API 等のウェブサービス APIJavaScriptを活用したフレームワークに触れる機会は少なかったりします。しかし、自社で公開している APIやライブラリを知らないのもアレですし、たまには新しいものに挑戦しないと世の中についていけなくなるのではないか、脳年齢の上昇に歯止めがかからないのではないか、セルライトが増加したり血液がドロドロになるのではないか、といった微妙な恐怖が生活習慣病予備軍を襲います。そんなわけで最近ちょっと気になっているのがGWTことGoogle Web Toolkit です。 GWTを一言で述べるなら、Java「だけ」を使ってAJAXアプリケーションを開発するためのフレーム

    Google Japan Blog: Google Web Toolkit で遊んでみました その1
  • ひがやすを blog - Javaを古くしたやつとRubyを煽っているやつ

    その正体はわかったよ。正体わかった瞬間からだが震えたよ。まじで。 まずは、羽生さんのこのエントリを見て欲しい。 http://d.hatena.ne.jp/habuakihiro/20070922#1190464426 その後によしおりのこの有名なエントリも復習して欲しい。 http://d.hatena.ne.jp/jYoshiori/20070826/1188150596 もうさぁ、変わってないよねぇ。昔からのこの構図。歴史は繰り返すっていうの。 あからさまにいうとさぁ。賢いスーツな奴らと、頭の固くてあわれで保守的なおやじの歴史だよ。 最初は、EJBだよ。EJB。これからは、ビジネスコンポーネントが流通して、もうプログラミングはいらなくなる。コンポーネントの組み合わせを考えるだけでOKみたいな。最初にね、キャッチーな言葉とともに、あらたなテクノロジーを広めようとするのは、賢いスーツな奴

    ひがやすを blog - Javaを古くしたやつとRubyを煽っているやつ
  • Djangoへの片思い日記 - ■Struts脳の恐怖とRails

    Strutsは良いフレームワークであった。 登場時のStrutsは MVCを体現しWebフレームワークとしてプログラマ達に夢を見せた。 今見てしまえば冗長で可読性の低い設定ファイルに 糞のようなtaglibとゲロのようなjspであるが それでも当時はセンセーショナルだった。 しかし、その後、Strutsには悲劇が起きる。 あまりにもセンセーショナルなデビューのおかげで それを金に換えようとしている奴らに目を付けられてしまった。 人月計算とExcelスーツで出来ている奴らだ。 奴らは Strutsをいかに簡単であるか宣伝し 役に立たない講習会で金を取り sessionが何なのかすら知らない人間を大量に生み出した。 そうやって生み出されたStruts脳人間は 「動くコードが正義」の負の面を体現し スパゲティを更に絡ませたActionFormを書き 解読不能なActionを書いた。 勉強など一

    Djangoへの片思い日記 - ■Struts脳の恐怖とRails
  • not found

    not found

  • プログラマーの“宿命”? ファイル操作に関する常識

    プログラマーの“宿命”? ファイル操作に関する常識:プログラマーの常識をJavaで身につける(7)(1/4 ページ) 連載は、Java言語やその文法は一通り理解しているが、「プログラマー」としては初心者、という方を対象とします。Javaコアパッケージを掘り下げることにより「プログラマーの常識」を身に付けられるように話を進めていきます。今回は「ファイル操作」について。OSやアプリケーションなどのさまざまなプログラムでよく行われ、とても身近な存在であるファイル操作の仕方を一から解説します

    プログラマーの“宿命”? ファイル操作に関する常識
  • ITmedia エンタープライズ:矛盾を抱えつつ進化する“Java”――黒船となったRuby on Rails (1/2)

    インターネット全盛以前に誕生したJava。アプリケーション開発の形態が変化していく中で、Javaもまたいろいろな刺激を受けてきている。これまでのJavaと今後のJava、業界キーマンがコラムで語る。 ある年のJavaOneカンファレンスでのことである。筆者は、あるパネルディスカッションを聴いていた。ビル・ジョイ氏がパネリストとして参加していたからである。 ビル・ジョイ氏といえば、UNIXの世界にTCP/IPとページング仮想記憶をもたらした4.2BSDの開発者であり、Sun Microsystems社の創業者の一人であり、そしてジェームズ・ゴスリング氏の上司としてJavaの誕生を後押しした人物でだ。もしビル・ジョイ氏がゴスリング氏の研究開発を認めていなかったら、Javaは(当時は違う名前だったが)失敗プロジェクトの一つとして忘れ去られていただろう。 そのほかならぬビル・ジョイ氏が、会場を埋め

    ITmedia エンタープライズ:矛盾を抱えつつ進化する“Java”――黒船となったRuby on Rails (1/2)
  • 要件定義カード1枚8万円──脱・人月商売宣言 - @IT

    「1タスク8万円」という価格体系を提示し、人月商売からの脱却を宣言するスターロジック代表取締役兼CEO 羽生章洋氏 「二度と人月商売はしません」──スターロジックは7月19日、都内で開催した自社イベント「StarLogic Conference2007」において、エンドユーザー自身による要件定義に基づき、「要件定義のカード1枚当たり8万円(税別)」という価格体系でシステム構築ビジネスを進めていくと発表した。従来の「人月」に基づく見積もりと比べて、1/3から1/5の価格になるという。 「人月換算でコストを請求する商習慣こそが、SI業界のさまざまな問題の根源。人月から脱却するには、納得でき、分かりやすい価格体系を提示することだ」(スターロジック代表取締役兼CEO 羽生章洋氏)。 低コストにできる理由は、ユーザー自ら要件定義を行い仕様を最初に明確にする点と、実装段階で自動生成により生産性を追求し

  • [Java]正しい無限ループの書き方 - きしだのはてな

    boolean д = true; for(;д;){ System.out.println("でれません"); } boolean ω = true; for(;ω;){ System.out.println("ぬけれません"); } boolean ェ = true; for( ;(ェ); ){ System.out.println("終わりません"); } boolean TдT = true; while(TдT){ System.out.println("帰れません"); } 参考 while(1)をfor(;;)って書くやつ(2ch)

    [Java]正しい無限ループの書き方 - きしだのはてな
  • ‘愛’で学ぶ文字コードと文字化けの常識 (1/4) - @IT

    連載は、Java言語やその文法は一通り理解しているが、「プログラマー」としては初心者、という方を対象とします。Javaコアパッケージを掘り下げることにより「プログラマーの常識」を身に付けられるように話を進めていきます。今回は、文字コードや文字化けについて。OSや携帯電話の機種の違い、メール、Webブラウザ、DB入出力、国の違いなどさまざま原因で起きる文字化けを徹底解説! 文字コードや文字化けの知識はプログラマーの常識 今回は、文字コードや文字化けなどの文字に関する常識をJavaを通して身に付けていきます。 私たちプログラマーにとって、文字や文字列を扱うことはとてもありふれたことです。ほとんどのプログラムにおいて、何らかの形で文字や文字列を扱っていることでしょう。 インターネット時代には必須の知識 コンピュータ1台で動作するプログラムを扱っている範囲では、皆さんは特に何の困難に出合うことも

    ‘愛’で学ぶ文字コードと文字化けの常識 (1/4) - @IT
  • プログラマの思索: RubyよりもJavaが好きな理由

    最近、Ruby関西に行ってRubyの勢いを感じている。 そんな時に、Javaの最近の動きを聞く機会があった。 Java6やSeasarの話を聞くと、JavaがC#やRailsの影響を受けているように聞こえた。 でも、話しているうちに、「やっぱりRubyよりもJavaが好きなんだ」と気づいた。 その理由は、「JUnitのようなテスト駆動ツールが揃っている」点に尽きる。 そこで「テスト駆動の観点から眺めたJavaの利点とプログラミング思想」について考察してみる。 【1】テストを意識するとメソッドの行数が自然に短くなる プログラミング初心者のプログラムを見ると、行数がやたらと長く、長いプログラムを書き上げた後からデバッグし始める。 だから、いつまで経っても動かない。 プログラミング中級者になると、行数は長いままだが、少しずつ書いてはプリント出力してデバッグで動作を確認し始める。 この

  • http://www.designwalker.com/2007/04/tlbox.html

    http://www.designwalker.com/2007/04/tlbox.html
  • 月間1000万ビュー近くのアクセスを自社内の40~50台の中古パソコンでさばくWeblioのシステム:ITpro

    Weblioという人気サイトがある。調べたい用語の意味を,200以上の辞書から一度に検索できるサイトだ(参考記事,参考リンク)。2007年2月の実績は,900万ページ・ビュー,120万ユニークIPアドレスを誇る。驚くべきことに,このサイトのすべてのシステムは,ウェブリオ(Weblioを提供している会社)社内に設置された40~50台の中古パソコンでできている(写真1)。 このシステムをほぼ1人で作り上げたのが,ウェブリオ取締役最高技術責任者の佐々木亨氏(写真2右)である。ウェブリオに投資し,同社の社外取締役も務める紀信邦氏(写真2左)は「佐々木氏がいなかったら投資しなかった。彼がいなかったら,同じ事業をするのに10倍のコストがかかる」と語る。佐々木氏は,ハードウエア,ソフトウエア,ネットワークのそれぞれについて豊富な知識を持つ。「特にネットワークに強いのが大きい」と紀氏は評価する。 ウェブリ

    月間1000万ビュー近くのアクセスを自社内の40~50台の中古パソコンでさばくWeblioのシステム:ITpro