Deprecated: Function get_magic_quotes_gpc() is deprecated in /virtual/rizworks/public_html/mashpote.net/wp-includes/load.php on line 926 Notice: Trying to access array offset on value of type bool in /virtual/rizworks/public_html/mashpote.net/wp-includes/theme.php on line 2360 Deprecated: Function get_magic_quotes_gpc() is deprecated in /virtual/rizworks/public_html/mashpote.net/wp-includes/format
モンキチョウ3月2日、モンシロチョウ3月6日、ナミアゲハ3月8日、ウグイス3月8日、サクラ3月13日――。 これは今年、私が勝手に観測した「初見」「初鳴き」「開花」の記録だ。たまたま気づいただけなので、データとしての価値はないが、「今年は春が一度にやって来た?」と感じさせる生き物のメッセージだ。 植物の開花や鳥の初鳴きなど生物の季節的反応を調べる「生物季節観測」は、気象庁が1953年から70年近く全国の気象台や測候所で実施してきた。それによるとモンシロチョウ初見の平年は横浜で4月6日、鹿児島で3月3日、札幌で5月4日。ウグイス初鳴きの平均は横浜3月18日、鹿児島3月4日、青森4月21日。 やはり今年は例年より早そうだが、気象庁の記録は2020年までしかない。植物34種目、動物23種目あった観測対象を21年にサクラ開花など6種目9現象に大幅縮小したからだ。都市化で観測がむずかしくなったためと
Springが初めて発表されたのが2002年なので、およそ20年に近い時間が経ちました。今はJavaと言えば当たり前のようにSpringを使っていて、Spring MVCやMaven、propertiesのような煩雑な環境構築と初期設定の問題も、Spring Bootが登場したおかげでだいぶマシになりましたね。特に自分の場合がそうですが、Spring Boot、Gradle、yamlを使ってXMLは一つもないアプリをよく書いていて、なんでも楽と思います。 こうも発展を成し遂げているSpringですが、実は数年前から、そもそものSpring MVCの問題を改善したいという声があり、Spring 5.0からはMVCとは全く違う、新しいフレームワークが登場していました。それが今回紹介します、Spring WebFluxです。 Spring WebFluxはMVCと何が違うか最初から作り直したフレ
いつからかわかりませんが、Springの各プロジェクトのにサポート期間がわかりやすく掲載されるようになっていたという話です。 たとえば、Spring Frameworkを例にしてみます。プロジェクトのトップページにある、「SUPPORT」を選択してみます。 すると、「リリース日」、「OSSサポート」、「商用サポート」、「将来のリリース」のそれぞれの日付が表示され、グラフも描画されます。 「OSSサポート」はSpringコミュニティによる、無償でのセキュリティアップデートおよびバグフィックスが行われる期間ですね。 「商用サポート」はOSS版のEOL後も続く、有償のサポートです。 「将来のリリース」は、まだ未リリースのバージョンです。 「OSSサポート」の詳細はこちら、 VMware Tanzu OSS Support | Support | VMware Tanzu 「商用サポート」の詳細は
はじめに こんにちは!macでSTSの環境構築を行った者です。 今回は「HelloWorldファイルとHelloWorldのテストコードファイルを作成し、jarに保存してmacで実行してみる」ところまで実施しました。 前回同様、Spring徹底入門を参考に進めました。簡単な手順ですが、バージョンのせいかJUnitで実行する辺りやjarにする辺りで思いの外詰まったので記事にしました。 ぜひ俺の屍を越えていってください。 使用環境とバージョン macOS Catalina jdk14.0.1 JUnit5 Maven 3.6.3_1 STS 4.6.1 Spring Boot 2.3 Spring Initializrでプロジェクトの雛形を作る まずSpring Initializrでプロジェクトの雛形を作成します。 Spring InitializrはSpring Bootが提供しているWe
Spring Boot & IntelliJ IDEA: Auto reload Thymeleaf templates without restart Spring Boot is fast becoming a popular choice for building standalone, Spring-based & production-ready web applications, from RESTful APIs to enterprise-scale websites. It offers out-of-the-box features to automatically configure Spring and 3rd-party libraries whenever possible. There is absolutely zero XML configuration
Log4j 2のバージョンアップのやりかた からの派生。 特化した内容なので別エントリにします。 2021-12-13追記: 今気づいたけどSpring公式ブログの[Log4J2 Vulnerability and Spring Boot](https://spring.io/blog/2021/12/10/log4j2-vulnerability-and-spring-boot)見るほうがシンプルでよいかもです。 本稿はバージョンダウンとか選択とかに興味あればって感じ。……`./gradlew dependencyInsight --dependency {}` なんてあったのね。 2021-12-20追記: `2.17.0` 出てますのでコピペしてそのままにせず適宜読み替えてくださいね。 条件 Gradle 7.3.1 SpringBoot 2.6.1 SpringBootで、Grad
On behalf of the team and everyone who has contributed, I'm happy to announce that Spring Boot 3.0.0-M1 has been released and is now available from https://repo.spring.io/milestone. This milestone starts our exciting journey to the next generation of the Spring Framework and raises our baseline from Java 8 to Java 17. We are planning to release a new milestone of Spring Boot 3.0 every two months.
はじめに 背景について build.gradleやH2とFlywayの設定など @SpringBootTestとConfigurationクラス coreサブプロジェクトのServiceとRepository さて本題の単体テスト つまづいた点(指定のH2が立ちあがらない場合) ※KDDIコマースフォワード㈱ 、略称「KCF」は2019年4月1日、同グループ会社の㈱ルクサと合併し「auコマース&ライフ株式会社」として再設立いたしました。 本記事は2019年3月31日以前に書かれた記事のアーカイブとなります。予めご了承ください。 はじめに こんにちは、KCFのエンジニアの坂本です。 私たちの開発チームでは、Java × Spring Boot でORマッパーに MyBatis 3 を採用しています。 今日は、そのMyBatisを使ってる場合の単体テストについて書いてみたいと思います。 背景に
1. はじめに 諸事情によりspring bootのWebアプリを作ることになりました。その際、組み込みh2dbを利用することなったので、その際、困ったことや調べたことをまとめました。 ちなみにspring bootのバージョンは1系の1.5.17です。 2. pom.xmlに依存関係を追加 pom.xmlの依存関係にspring-boot-starter-jdbcとh2を追加します。 Spring Initializrでプロジェクトを作成する場合は以下の2つを追加すれば同じになります。 H2 JDBC <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>co
Speaker: Phil Webb (@phillip_webb) Timecodes Use the timecodes below if you want to jump to a specific part of the presentation: 00:27 - Intro 01:59 - Creating the Demo 04:01 - Building Docker Images with the Spring Boot Plugin 09:21 - Building Docker Images with a Dockerfile 16:40 - Customizing Layers 21:38 - Graceful Shutdown 25:19 - Kubernetes Probes 30:55 - Configuration Properties End-to-End
フォーム送信を同期的に処理する際のブラウザのリロード・バック操作対策として定番である、Post-Redirect-GetパターンをSpring MVCで実装する方法を調査した。 まとめ Controllerメソッドでリダイレクトするには redirect:{View} を返却する。(参考) Postメソッドを受けるControllerメソッドから、リダイレクト後のGetメソッドを受けるControllerメソッドにデータを渡すには、Flash Attributeを利用する。 バリデーション結果の引継ぎはTymeleafテンプレートで参照できるように以下のキー名でFlash Attributeに格納する。 org.springframework.validation.BindingResult.{クラス名 (camel case)} リダイレクト後に、初回のフォーム表示をしたControll
この記事はZOZO Advent Calendar 2021 #5 23日目の記事になります。 はじめに Spring Bootアプリケーションのコンテナ化をしてみました。 またSpring BootではSpring Boot2.3からCloud Native Buildpacksに対応しているため、 Dockerfileを使ったパターンとCloud Native Buildpacksの2パターンでコンテナ化を行ってみました。 コンテナとは 仮想化技術の一つでアプリケーションの実行環境も含めてコンテナとすることで 環境に依存せずアプリケーションを実行することができる技術です。 Dockerとは コンテナ仮想化を用いてアプリケーションを開発・配置・実行するためのオープンプラットフォームです。 Cloud Native Buildpacksとは Cloud Native Buildpacksは
oauth2 clientを実装する機会って結構ありますよね。 私の所属会社でもSSOのフェデレーションプロトコルにoidcを採用しているため、割と最近spring securityのoauth2 clientを見ながらクライアント機能の実装を行いました。 しかし、日本語情報をあまり見かけず苦労したので知見をまとめて残しておきます。 前提知識 Authorization Code Grant Flowについて理解していること この記事のスコープ 書くこと spring securityを利用したoauth2 clientの実装サンプルとその解説 kotlinの言語仕様について一部解説する kotlinで実装したが、利用FWがSpring BootのためJavaユーザからも読まれることを想定しているため。 書かないこと oauth2やopenid connectに関する解説 認証フローの種類
Spring Bootにはプロファイルという、環境ごとの設定やBean構成のロードを切り替える機能があります。プロファイルは、名前ベースで切り替えることができ、とても直感的に使うことができて便利です。 ところが少し変わったことをしようとすると、途端に躓いてしまう部分でもあるので、プロファイルをもう一歩踏み込んで使うためのポイントをいくつかまとめてみます。 要件 環境 Java 8 Kotlin 1.2.41 Spring Boot 2.0.4.RELEASE 基本的な使い方 以下のようなテストがあった場合に、userへ何がDIされるかをプロファイルを使って切り替えてみます。 @RunWith(SpringRunner::class) @SpringBootTest class DemoSpringProfileApplicationTests { @Autowired lateinit v
Spring Bootでリクエストとレスポンスのログを出力するフィルターを書いたので共有します。 オリジナル オリジナルとの違い ログの形式をJSONにした GETなどでBodyが無い場合も、要素を追加 Multipartやアップロードファイルに対応 ロギングフィルターなので可能な限り Exception をキャッチ RuntimeException も回収している APIのログなのでリクエストやレスポンスのJSONをパース slf4jやlombokは使っていない ロガーは GenericFilterBean のものを使用した AbstractRequestLoggingFilter や CommonsRequestLoggingFilter を参考にしている ログファイルはZabbixで拾ってフィルターしてほしい import java.io.IOException; import ja
We have discussed a lot on spring security and created multiple sample examples on it. You can check all these articles here - Spring Security Tutorials. In this article, we will discuss exception handling in spring security. To do so we will implement the interface AuthenticationEntryPoint to handle the authentication exception and implement AccessDeniedHandler interface to handle access denied e
🗃 {Programming/Java/org/springframework/boot/context/config} 🏷 Spring Boot 🏷 Config Data API 🏷 Kubernetes 🗓 Updated at 2020-11-17T05:21:38Z 🗓 Created at 2020-10-23T08:29:13Z 🌎 English Page 目次 Config Data API Config Tree なぜConfig Treeがサポートされたのか? 実際に試してみる アプリケーションの作成 ローカルで実行 Dockerイメージの作成 Kubernetesへデプロイ Config Data API Spring Boot 2.4でプロパティを追加でロードするためのConfig Data APIが追加され、 spring.config.i
まずは、Spring および Spring Boot を使用するメリットをおさらいします。 Spring を使うメリット Spring が提供する機能のうちコアとなるものは、DI(=IoC)コンテナ です。 そのため、誤解を恐れず Spring を使用するメリットを一言で表すと、 「アプリケーション内でのインスタンスの生成知識をDIコンテナにて一括で管理することで、 実装の差し替えを容易にしたり、テスト容易性(Testability)を高めること」 です。 具体的には、役割ごとにアプリケーションのレイヤーを分割し、 別のレイヤーへの依存関係を DI により解決する(interface を constructor injection する) ことにより、 Profile に応じて開発環境は Mock を使用するといった環境に合わせた振る舞いの変更や、各レイヤーに閉じて Testability
本ガイドラインでは、アプリケーションを、次の3レイヤに分割する。 アプリケーション層 ドメイン層 インフラストラクチャ層 各層には、以下のコンポーネントが含まれる。
こちらのポストは随分と内容が古くなってきたため、新たに書き直しました。 Spring 初学者が最初に知るべき責務とレイヤーと DDD (2020年 改訂) このポストは、過去にQiitaで書いたものを改訂したものです。 新年度を迎えるたび、Qiitaでのポストへたびたび「いいね」がつくので、入社等をきっかけに、新たな環境ではじめてSpringに触れる方もきっと多いのでしょう。自分の周囲に対しても、Springを説明する際によく使用していたポストだったので、内容の見直しも兼ねて、こちらのサイトに改訂版としてポストしておこうかと。 レイヤーアーキテクチャ Springでは各コンポーネントの責務に応じたステレオタイプアノテーションが用意されており、これらがどう連携するかについては、レイヤーアーキテクチャをイメージすると理解しやすいです。 Springでの各責務レイヤーは、以下のように連携します。
概要 Spring Boot のデフォルト設定では 404 Not Found や 500 Internal Server Error が発生した際に Whitelabel Error Page や JSON が返される Web ブラウザからのアクセスには HTML を返すようになっている curl などのマシンクライアントからのアクセスには JSON を返すようになっている 独自に設置した error.html や error/404.html では JSON が返されるのを止めることができない ErrorController インターフェースを実装したクラスを用意してエラー時に返す HTML や JSON をカスタマイズしたほうが良い 今回の動作確認環境: Java 11 + Spring Boot 2.2.1 最低限のエラーページ実装例 エラー発生時はすべて 404 Not Foun
Spring Cacheとは Spring Cacheのアーキテクチャ データ読み込み時の流れ Spring Cacheを構成するコンポーネント Cache AOP CacheManager ハッシュテーブル 実装 キャッシュ無効 キャッシュ有効 Spring Cacheの主な機能 @Cacheable キャッシュキー KeyGenerator CacheManager @CachePut @CacheEvict 参考文献 Spring Cacheとは Spring Cacheは、Springでキャッシュ機能を使用するためのライブラリです。 Spring Cacheでは抽象的なキャッシュ機能の枠組みを提供します。そのため、内部の具体的な実装を気にせずに簡単にキャッシュ機能を使うことができます。 実装はデフォルト設定のほか、既存のキャッシュライブラリを使用することができます。例えば、Caff
Spring Dataは、実行可能なクエリを定義する多くの方法を提供します。 これらの1つは、@Queryアノテーションです。 このチュートリアルでは、how to use the @Query annotation in Spring Data JPA to execute both JPQL and native SQL queriesを示します。
はじめに この資料は WebRTC Meetup Fukuoka の講演資料です。 自己紹介 名前: なかゆうすけ(@Tukimikage) 仕事: WebRTC Platform SkyWay Technical solutions Technical support Developer relations コミュニティ: WebRTC Meetup Tokyo主催 WebRTC Beginners Tokyo主催 講演のターゲット ターゲット WebRTCを使ってみたいと考えているエンジニア WebRTCを実際に使っているエンジニア では、始めます WebRTCは今年で仕様が登場して7年目 WebRTC誕生5周年の時にメッセージがwebrtc.orgで公開された 参考: WebRTC Update 2016 Summer これから成し遂げたいこと(2016年当時) オーディオとビデオの
spring.devtools.restart.enabled=true spring.devtools.restart.exclude=META-INF/maven/**,META-INF/resources/**,resources/**,static/**,public/**,templates/**,**/*Test.class,**/*Tests.class,git.properties,META-INF/build-info.properties spring.devtools.restart.log-condition-evaluation-delta=true spring.devtools.restart.poll-interval=1s spring.devtools.restart.quiet-period=400ms IntelliJ IDEAの設定 結局はここから
これは、なにをしたくて書いたもの? Spring Integrationを少し試しておきたいな、と思いまして。 Spring Integration Spring Integrationは、EIP(Enterprise Integration Patterns)をSpringで実現するためのものです。 Extends the Spring programming model to support the well-known Enterprise Integration Patterns. Spring Integration 宣言的なアダプターを使い、外部システムとSpringベースのアプリケーションを軽量なメッセージングで統合します。 Spring Integration enables lightweight messaging within Spring-based applica
JavaのOSSフレームワーク「Spring Framework」を中心に、ソフトウェア開発に関するさまざまな知見が交わされるカンファレンス「SpringOne 2020」が2020年9月2日〜3日の2日間、オンラインで開催されました。本記事では多岐にわたる内容の中から注目すべきトピックをまとめてレポートします。 本記事のレポーター 谷口 展郎、堀口 研一、岩塚 卓弥、栗原 伸豪(NTT ソフトウェアイノベーションセンタ) 田端 一也、高橋 寛恒、樋口 隆寛(NTTデータ) 神谷 法正、関戸 将史(NTTコムウェア) SpringOneとは SpringOneは、VMware Inc.(以下VMware)が開発を牽引するOSSのアプリケーション・フレームワークであるSpring Framework(以下Spring)や、同社の商用プラットフォームVMware Tanzu(以下Tanzu)に
スライド概要 動画はこちら→ https://www.youtube.com/watch?v=LGtdpsmMfvI #jsug Spring Fest 2020での発表資料です。 Springの根幹機能はDIとAOPです。しかし、普通に使っているだけだと「@Autowiredを付ければ代入されるんでしょ?」「@Transactionalを付ければ割り込みされるんでしょ?」くらいの曖昧な理解に陥りがちです。 このセッションでは、DIやAOPの重要機能や仕組みを丁寧に解説します。Springの根幹を理解して、初級者から中級者へ、中級者から上級者へステップアップしましょう! ※発表では無かった内容を[おまけ]として加えました
Security of the application is very important, especially for your HTTP API. JWT is one of the ways for securing (i.e. authentication and authorization) your HTTP API. JSON Web Token (JWT) is a JSON-based open standard (RFC 7519) for creating access tokens that assert some number of claims. [source] This time, I want to share my experience on how to secure your HTTP API in Spring Webflux using JWT
こんにちは。ECプラットフォーム部マイグレーションチームの高橋です。 マイグレーションチームとは ZOZOTOWNでは、システム的にレガシーな部分が多く存在しており、全体的なシステムリプレイスを進めています。その中でサーバーアプリケーションのリニューアルを行うために、2019年に発足したのがマイグレーションチームです。 現在は、データの取得・更新処理の実装の置き換えを主に対応しています。もともとのシステムではSQL Serverのストアドプロシージャを実行し、データの取得・更新を行っていた処理を、JavaでAPIとして実装し直し随時移行しています。 Spring Bootのバージョンアップ チーム発足以来、参照系の処理をSpring Bootを採用してJavaのAPIに移行することを中心に進めてきました。 ようやく、参照系のAPI作成の終わりが少しずつ見え始めたため、先延ばしになっていたS
コントローラで HttpServletRequest を参照できるようにするために、@Autowiredでインスタンス変数requestを追加する。 request.getRemoteAddr() でIPアドレスを取得できる。 HogeController.java @Autowired private HttpServletRequest request; public String getRemoteAddr() { return request.getRemoteAddr(); } デフォルトのままではIPv6形式になってしまうので、IPv4形式のアドレスを返すようにするために、application.properties に以下の設定を追加する。 server.address=127.0.0.1
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く