クラス AbstractJackson2View
java.lang.ObjectSE
org.springframework.context.support.ApplicationObjectSupport
org.springframework.web.context.support.WebApplicationObjectSupport
org.springframework.web.servlet.view.AbstractView
org.springframework.web.servlet.view.json.AbstractJackson2View
- 実装されているすべてのインターフェース:
Aware、BeanNameAware、ApplicationContextAware、ServletContextAware、View
- 既知の直属サブクラス
MappingJackson2JsonView,MappingJackson2XmlView
Jackson ベースおよびコンテンツ型に依存しない
AbstractView 実装の抽象基本クラス。- 導入:
- 4.1
- 作成者:
- Jeremy Grelle, Arjen Poutsma, Rossen Stoyanchev, Juergen Hoeller, Sebastien Deleuze
フィールドのサマリー
フィールドクラス org.springframework.web.servlet.view.AbstractView から継承されたフィールド
DEFAULT_CONTENT_TYPEクラス org.springframework.context.support.ApplicationObjectSupport から継承されたフィールド
loggerインターフェース org.springframework.web.servlet.View から継承されたフィールド
PATH_VARIABLES, RESPONSE_STATUS_ATTRIBUTE, SELECTED_CONTENT_TYPEコンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明protected ObjectSEfilterAndWrapModel(MapSE<StringSE, ObjectSE> model, HttpServletRequestEE request) MappingJacksonValueコンテナーでモデルをフィルターし、オプションでラップします。protected abstract ObjectSEfilterModel(MapSE<StringSE, ObjectSE> model) 指定されたモデルから不要な属性を除外します。final JsonEncodingこのビューのJsonEncodingを返します。final ObjectMapperこのビューのObjectMapperを返します。protected voidprepareResponse(HttpServletRequestEE request, HttpServletResponseEE response) レンダリングのために指定されたレスポンスを準備します。protected voidrenderMergedOutputModel(MapSE<StringSE, ObjectSE> model, HttpServletRequestEE request, HttpServletResponseEE response) ビューを実際にレンダリングするには、サブクラスでこのメソッドを実装する必要があります。voidsetDisableCaching(boolean disableCaching) 生成された JSON のキャッシュを無効にします。voidsetEncoding(JsonEncoding encoding) このビューのJsonEncodingを設定します。abstract voidsetModelKey(StringSE modelKey) このビューによってレンダリングされるモデルの属性を設定します。voidsetObjectMapper(ObjectMapper objectMapper) このビューのObjectMapperを設定します。voidsetPrettyPrint(boolean prettyPrint) 出力を書き込むときにデフォルトのプリティプリンターを使用するかどうか。voidsetUpdateContentLength(boolean updateContentLength) レスポンスの "Content-Length" ヘッダーを更新するかどうか。protected voidwriteContent(OutputStreamSE stream, ObjectSE object) 実際の JSON コンテンツをストリームに書き込みます。protected voidwritePrefix(JsonGenerator generator, ObjectSE object) メインコンテンツの前にプレフィックスを書きます。protected voidwriteSuffix(JsonGenerator generator, ObjectSE object) メインコンテンツの後にサフィックスを記述します。クラス org.springframework.web.servlet.view.AbstractView から継承されたメソッド
addStaticAttribute, createMergedOutputModel, createRequestContext, createTemporaryOutputStream, exposeModelAsRequestAttributes, formatViewName, generatesDownloadContent, getAttributesMap, getBeanName, getContentType, getRequestContextAttribute, getRequestToExpose, getStaticAttributes, isExposePathVariables, render, setAttributes, setAttributesCSV, setAttributesMap, setBeanName, setContentType, setExposeContextBeansAsAttributes, setExposedContextBeanNames, setExposePathVariables, setRequestContextAttribute, setResponseContentType, toString, writeToResponseクラス org.springframework.web.context.support.WebApplicationObjectSupport から継承されたメソッド
getServletContext, getTempDir, getWebApplicationContext, initApplicationContext, initServletContext, isContextRequired, setServletContextクラス org.springframework.context.support.ApplicationObjectSupport から継承されたメソッド
getApplicationContext, getMessageSourceAccessor, initApplicationContext, obtainApplicationContext, requiredContextClass, setApplicationContext
フィールドの詳細
updateContentLength
protected boolean updateContentLength
コンストラクターの詳細
AbstractJackson2View
メソッドの詳細
setObjectMapper
このビューのObjectMapperを設定します。設定しない場合、デフォルトのObjectMapperが使用されます。カスタム構成された
ObjectMapperを設定することは、JSON 直列化プロセスをさらに制御する 1 つの方法です。もう 1 つのオプションは、直列化する型に Jackson が提供するアノテーションを使用することです。この場合、カスタム構成の ObjectMapper は不要です。getObjectMapper
このビューのObjectMapperを返します。setEncoding
このビューのJsonEncodingを設定します。デフォルトでは、UTF-8 が使用されます。getEncoding
このビューのJsonEncodingを返します。setPrettyPrint
public void setPrettyPrint(boolean prettyPrint) 出力を書き込むときにデフォルトのプリティプリンターを使用するかどうか。これは、ObjectMapperを次のように設定するためのショートカットです。ObjectMapper mapper = new ObjectMapper(); mapper.configure(SerializationFeature.INDENT_OUTPUT, true);
デフォルト値は
falseです。setDisableCaching
public void setDisableCaching(boolean disableCaching) 生成された JSON のキャッシュを無効にします。デフォルトは
trueで、クライアントは生成された JSON をキャッシュできません。setUpdateContentLength
public void setUpdateContentLength(boolean updateContentLength) レスポンスの "Content-Length" ヘッダーを更新するかどうか。trueに設定すると、コンテンツの長さを判別し、レスポンスの 'Content-Length' ヘッダーを設定するために、レスポンスがバッファーに入れられます。デフォルト設定は
falseです。prepareResponse
クラスからコピーされた説明:AbstractViewレンダリングのために指定されたレスポンスを準備します。デフォルトの実装では、HTTPS 経由でダウンロードコンテンツを送信するときに IE バグの回避策が適用されます。
- オーバーライド:
- クラス
AbstractViewのprepareResponse - パラメーター:
request- 現在の HTTP リクエストresponse- 現在の HTTP レスポンス
renderMergedOutputModel
protected void renderMergedOutputModel(MapSE<StringSE, ObjectSE> model, HttpServletRequestEE request, HttpServletResponseEE response) throws ExceptionSEクラスからコピーされた説明:AbstractViewビューを実際にレンダリングするには、サブクラスでこのメソッドを実装する必要があります。最初のステップは、リクエストの準備です。JSP の場合、これはモデルオブジェクトをリクエスト属性として設定することを意味します。2 番目のステップは、たとえば RequestDispatcher を介した JSP を含む、実際のビューのレンダリングです。
- 次で指定:
- クラス
AbstractViewのrenderMergedOutputModel - パラメーター:
model- 静的な属性よりも動的な値が優先される、結合された出力マップ(非null)request- 現在の HTTP リクエストresponse- 現在の HTTP レスポンス- 例外:
ExceptionSE- レンダリングに失敗した場合
filterAndWrapModel
MappingJacksonValueコンテナーでモデルをフィルターし、オプションでラップします。- パラメーター:
model-renderMergedOutputModel(java.util.Map<java.lang.String, java.lang.Object>, jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse)に渡されるモデルrequest- 現在の HTTP リクエスト- 戻り値:
- レンダリングされるラップまたはアンラップされた値
writeContent
実際の JSON コンテンツをストリームに書き込みます。- パラメーター:
stream- 使用する出力ストリームobject-filterModel(java.util.Map<java.lang.String, java.lang.Object>)から返された、レンダリングされる値- 例外:
IOExceptionSE- 書き込みに失敗した場合
setModelKey
このビューによってレンダリングされるモデルの属性を設定します。設定すると、他のすべてのモデル属性は無視されます。filterModel
指定されたモデルから不要な属性を除外します。戻り値は、別のMapSE または単一の値オブジェクトのいずれかです。- パラメーター:
model-renderMergedOutputModel(java.util.Map<java.lang.String, java.lang.Object>, jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse)に渡されるモデル- 戻り値:
- レンダリングされる値
writePrefix
メインコンテンツの前にプレフィックスを書きます。- パラメーター:
generator- コンテンツの書き込みに使用するジェネレーター。object- 出力メッセージに書き込むオブジェクト。- 例外:
IOExceptionSE
writeSuffix
メインコンテンツの後にサフィックスを記述します。- パラメーター:
generator- コンテンツの書き込みに使用するジェネレーター。object- 出力メッセージに書き込むオブジェクト。- 例外:
IOExceptionSE