1. ホーム >
  2. 書籍 >
  3. Spring徹底入門 Spring FrameworkによるJavaアプリケーション開発

Spring徹底入門 Spring FrameworkによるJavaアプリケーション開発


形式:
書籍
発売日:
ISBN:
9784798142470
価格:
本体4,000円+税
仕様:
B5変・744ページ
分類:
インターネット・ソーシャルメディア

本書籍の他の形式を確認する

  • このエントリーをはてなブックマークに追加

Spring Frameworkの基礎から開発時の指針まで!
定番OSSフレームワークによるJavaシステム開発の入門書!

Javaによるアプリケーション開発の定番フレームワークである、Spring Framework。本書は、DI/AOP、データアクセス(JDBC)、JPA(クエリ)といった基本から、MVC、セキュリティ、バッチ、周辺サブプロジェクトまで、Spring Frameworkの機能や使い方、開発時の指針など、Java開発で、このフレームワークを徹底活用するための知識とノウハウを解説します。

これからSpring FrameworkによるJava開発を始める方、機能をもっと使いこなしたい方など、業務システム開発に携わるJavaエンジニアにおすすめの一冊です。


第1章 Spring Frameworkとは
第2章 Spring Core(DI×AOP)
第3章 データアクセス(Tx、JDBC)
第4章 Spring MVC
第5章 Webアプリケーションの開発
第6章 RESTful Webサービスの開発
第7章 Spring MVC の応用
第8章 Spring Test
第9章 Spring Security
第10章 Spring Data JPA
第11章 Spring + MyBatis
第12章 Spring+Thymeleaf
第13章 Spring Boot
第14章 チュートリアル

付属データはこちら

書籍への問い合わせ

正誤表、追加情報をご確認の上、こちらよりお問い合わせください

書影の利用許諾について

本書籍に関する利用許諾申請はこちらになります

追加情報はありません。

本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。

書籍・SEshop限定PDF:ご購入刷数
電子書籍 最終更新日:2018年04月20日
発生刷 ページ数 書籍改訂刷 電子書籍訂正 内容 登録日
1刷 009
1.4「Java EE との関係」9行目
2刷
2003年にはJ2SE 1.4がリリースされ、
2003年にはJ2EE 1.4がリリースされ、
2016.09.07
1刷 013
「パスワードをハッシュ化するインターフェイスの実装例」1行目
2刷
public interface s {
public interface PasswordEncoder {
2016.09.07
1刷 014
「UserServiceクラスを使うアプリケーションの実装例」1つ目のコード 1行目
2刷
UserRepository userRepository = new JdbcUserRepository();
UserRepository userRepository = new JdbcUserRepository(dataSource);
2016.09.07
1刷 016
「DIコンテナからインスタンスを取り出す実装例」1行目
2刷
ApplicationContext context = ApplicationContext context =
ApplicationContext context =
2016.09.07
1刷 021
「■ アノテーションベースConfiguration」1つ目のコードのキャプション
2刷
Bean定義を行なうアノテーションによるBean定義の実装例(UserRepositoryImple.java)
Bean定義を行なうアノテーションによるBean定義の実装例(UserRepositoryImpl.java)
2016.09.07
1刷 022
1つ目のコードのキャプション
2刷
Bean定義を行なうアノテーションベースConfigurationの実装例(UserServiceImple.java)
Bean定義を行なうアノテーションベースConfigurationの実装例(UserServiceImpl.java)
2016.09.07
1刷 023
1行目
2刷
<context:component-scan>要素のbase-packages属性に
<context:component-scan>要素のbase-package属性に
2016.09.07
1刷 024
最下部のコード 2行目
2刷
<property name="password" ref="passwordEncoder" />
<property name="passwordEncoder" ref="passwordEncoder" />
2016.09.07
1刷 033
下から3行目
5刷
この場合、ifListにはIntIF1、IntIF2、IntStringのBeanのリストが注入されます。
この場合、ifListにはIntIF1、IntIF2、StringIFのBeanのリストが注入されます。
2017.09.01
1刷 036
「代入可能な型によるフィルタの設定例(Java Configの場合)」
5刷
basePackages = "com.example.demo" includeFilters = {
basePackages = "com.example.demo", includeFilters = {

カンマを追加
2017.09.01
1刷 038
「スキャン対象から除外するコンポーネントを指定するための設定例」下から2行目
2刷
@ComponentScan.Filter(type = FilterType.ANNOTATION pattern = ...
@ComponentScan.Filter(type = FilterType.ANNOTATION, pattern = ...

カンマを追加
2016.09.28
1刷 041
「prototypeスコープのPasswordEncoderのBean定義」説明文
3刷
このBeanをsingletonスコープのUserService Beanが使用します。
このBeanをsingletonスコープのUserServiceBeanが使用します。
2016.11.14
1刷 046
「独自のスコープの実装例」
3刷
@Bean CustomScopeConfigurer customScopeConfigurer() {   CustomScopeConfigurer configurer = new CustomScopeConfigurer();   Map scopes = new HashMap<>();   scopes.put("thread", new SimpleThreadScope());   return configurer; }
@Bean static CustomScopeConfigurer customScopeConfigurer() {   CustomScopeConfigurer configurer = new CustomScopeConfigurer();   configurer.addScope("thread", new SimpleThreadScope());   return configurer; }
2016.12.15
1刷 048
下から1~2行目
3刷
インターフェイス実装したクラスです。
インターフェイス実装したクラスです。
2016.11.14
1刷 057
「BeanのデフォルトのスコープをprototypeにするJava Configの実装例」コードの2行目
3刷
public class AppgConfig {
public class AppConfig {
2016.11.14
1刷 060
「Target」の説明文
5刷
TargetオブジェクトはAdvicedオブジェクトと呼ばれることもあります。
TargetオブジェクトはAdvisedオブジェクトと呼ばれることもあります。
2017.09.01
1刷 070
「型で対象のJoin Pointを選択する」1つ目の記述例
5刷
within(com.example.service.*)
within(com.example.service..)

アスタリスクをドットに訂正
2017.09.01
1刷 077
「XMLによるBean定義例」
5刷
<bean id="conversionService"
class="org.springframework.format.support.FormattingConversionServiceFactoryBean" />
</bean>
<bean id="conversionService"
class="org.springframework.format.support.FormattingConversionServiceFactoryBean" />
2017.09.01
1刷 083
「プロパティファイルの定義例」の説明文、「Java Configにおけるプロパティファイルの場所の設定例」のコード
3刷
以下の赤字部分の内容を追加します。
「プロパティファイルの定義例」の説明文・・・ プロパティファイルの場所はJava Configに@org.springframework.context.annotation.PropertySource アノテーションを付与することで指定できます。なお、@Valueによる設定値のインジェクションを利用する場合はorg.springframework.context.support.PropertySourcesPlaceholderConfigurerのBean定義もあわせて必要になります(Spring 4.3からはPropertySourcesPlaceholderConfigurerのBean定義がなくてもインジェクションできるようになっています)。 「Java Configにおけるプロパティファイルの場所の設定例」のコード・・・ @Configuration @PropertySource("classpath:application.properties") public class AppConfig {   @Bean   static PropertySourcesPlaceholderConfigurer placeholderConfigurer() {     return new PropertySourcesPlaceholderConfigurer();   } // ・・・ }
2016.11.14
1刷 089
「■ オブジェクトの生成」4行目、7行目
3刷
4行目・・・ 例: "{1,2,3}") 7行目・・・ 「new型のFQCN[インデックス]」
4行目・・・ 例: "{1,2,3}" 7行目・・・ 「new 型のFQCN[インデックス]」

7行目は「new」と「型」の間に半角スペースを入れます。
2016.11.14
1刷 091
下から2行目
3刷
③ isOpen メソッドは、リソースを読み込ための
③ isOpen メソッドは、リソースを読み込むための
2016.11.14
1刷 097
「2.7.1 MessageSourceインターフェイスと実装クラス」の最後の文
5刷
Spring 3.2より前のバージョンでは、ResourceBundleMessageSourceとReloadableResourceBundleMessageSourceの間には大きな機能差がありましたが、ResourceBundleMessageSourceでもJava SE 6から追加された仕組みを利用して「プロパティファイルのエンコーディング(defaultEncoding)」「キャッシュ期間(cacheMillis)」などが指定できるようになったため、この2つのクラスの機能差は縮まっています。
Spring 3.1.3より前のバージョンでは、ResourceBundleMessageSourceとReloadableResourceBundleMessageSourceの間には大きな機能差がありましたが、ResourceBundleMessageSourceでもJava SE 6から追加された仕組みを利用して「プロパティファイルのエンコーディング(defaultEncoding)」「キャッシュ期間(cacheSeconds)」などが指定できるようになったため、この2つのクラスの機能差は縮まっています。
2017.09.01
1刷 123-124
「RowCallbackHandlerの実装例」
5刷
2017.09.01
1刷 124
「RowCallbackHandlerを用いたDaoクラスの実装例」
5刷
2017.09.01
1刷 134
1つ目のコードブロックの1行目
2刷
修正前
修正前

1行目のインデントを修正
2016.10.25
1刷 134
本文最終行
2刷
方に基づいており、アプリケーション開発者は本質的な処理ロジックのみを実装します。メソッド
方に基づいており、アプリケーション開発者は本質的な処理ロジックのみを実装します。
2016.09.28
1刷 135
一番上のサンプルコード
2刷
修正後
修正後

3行目以降のインデントを修正します。
2016.09.28
1刷 152
web.xmlの設定例
6刷

(1)の範囲を修正
2018.04.20
1刷 153
コンフィギュレーションクラス(WebMvcConfig)の定義例
5刷
@Configuration @EnableWebMvc public class WebMvcConfig extends WebMvcConfigurerAdapter {
@Configuration @EnableWebMvc @ComponentScan("example.app")
public class WebMvcConfig extends WebMvcConfigurerAdapter {
2017.09.01
1刷 160
JSP(src/main/webapp/WEB-INF/echo/input.jsp)の作成例の説明文1
6刷
<form:from>要素
<form:form>要素
2018.04.20
1刷 160
「メモ」1行目
2刷
<form:from> には
<form:form> には
2016.09.28
1刷 166
「Controllerの実装例」1行目
2刷
package springbook.app;
package example.app;
2016.09.28
1刷 207
「●@org.springframework.format.annotation.DateTimeFormat」2行目
2刷
java.long.Longに加え、
java.lang.Longに加え、
2016.09.28
1刷 428
表9.6「SimpleUrlAuthenticationFailureHandler」の説明 1行目
2刷
コンストラクタに指定したURL(defaultTargetUrl)
コンストラクタに指定したURL(defaultFailureUrl )
2016.08.10
1刷 532
「SQLの記述例」
3刷
INSERT INTO meeting_room (room_id, room_name, capacity)   VALUES (#{roomId}, #{roomName}, #{capacity}
INSERT INTO meeting_room (room_id, room_name, capacity)   VALUES (#{roomId}, #{roomName}, #{capacity})

2行目の末尾に「)」を追加します。
2016.12.15
1刷 606
コードのキャプション
2刷
messages.propertiesの定義例
messages_ja.propertiesの定義例
2016.08.10
1刷 606
「テンプレートファイル内でメッセージを解決する際の実装例」
5刷
$[変数名}
${変数名}
2017.09.01
1刷 617
「application.propertiesの定義例」1行目
2刷
user.name=user
security.user.name=user
2016.09.28
1刷 622
「メモ」の3行目
5刷
target/META-INF/spring-configuration-metadata.json
target/classes/META-INF/spring-configuration-metadata.json
2017.09.01
1刷 625
下から2行目の後に図13.12を追加
5刷
図13.12 ヘルスチェック結果の表示
2017.09.01
1刷 630
上から1行目
5刷
GaugeServiceとCounterServiceの利用例
CounterServiceの利用例
2017.09.01
1刷 646
「User.java」7行目
4刷
public class User {
public class User implements Serializable {
2017.05.08
1刷 660
注釈①
5刷
JpaRepositoryインターフェイスを継承してReservationRepositoryエンティティ用のリポジトリインターフェイスを作成する。
JpaRepositoryインターフェイスを継承してReservationエンティティ用のリポジトリインターフェイスを作成する。
2017.09.01
1刷 663
「Reservation.java」3行目
5刷
public class Reservation {
public class Reservation implements Serializable {
2017.09.01
1刷 693
「メモ」の「Windowsの場合」
5刷
$ mvnw.cmd package
> mvnw.cmd package
2017.09.01