本文整理了Java中freemarker.core.Environment.getTemplateDateFormat()
方法的一些代码示例,展示了Environment.getTemplateDateFormat()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Environment.getTemplateDateFormat()
方法的具体详情如下:
包路径:freemarker.core.Environment
类名称:Environment
方法名:getTemplateDateFormat
[英]Gets a TemplateDateFormat using the date/time/datetime format settings and the current locale and time zone. (The current locale is the locale returned by #getLocale(). The current time zone is #getTimeZone() or #getSQLDateAndTimeTimeZone()).
[中]使用日期/时间/日期时间格式设置以及当前区域设置和时区获取TemplateDateFormat。(当前区域设置是由#getLocale()返回的区域设置。当前时区为#getTimeZone()或#GetSqlDateAndTimeZone()。
代码示例来源:origin: org.freemarker/freemarker
DateParser(String text, Environment env)
throws TemplateException {
this.text = text;
this.env = env;
this.defaultFormat = env.getTemplateDateFormat(dateType, Date.class, target, false);
}
代码示例来源:origin: org.freemarker/freemarker
format = getTemplateDateFormat(formatString, dateType, useSQLDTTZ, zonelessInput, false);
代码示例来源:origin: org.freemarker/freemarker
return getTemplateDateFormat(formatString, dateType, equalCurrentTZ == 2, zonelessInput, true);
代码示例来源:origin: org.freemarker/freemarker
DateFormatter(TemplateDateModel dateModel, Environment env)
throws TemplateException {
this.dateModel = dateModel;
this.env = env;
final int dateType = dateModel.getDateType();
this.defaultFormat = dateType == TemplateDateModel.UNKNOWN
? null // Lazy unknown type error in getAsString()
: env.getTemplateDateFormat(
dateType, EvalUtil.modelToDate(dateModel, target).getClass(), target, true);
}
代码示例来源:origin: org.freemarker/freemarker
TemplateDateFormat getTemplateDateFormat(TemplateDateModel tdm, Expression tdmSourceExpr, boolean useTempModelExc)
throws TemplateModelException, TemplateException {
Date date = EvalUtil.modelToDate(tdm, tdmSourceExpr);
TemplateDateFormat format = getTemplateDateFormat(
tdm.getDateType(), date.getClass(), tdmSourceExpr,
useTempModelExc);
return format;
}
代码示例来源:origin: org.freemarker/freemarker
/**
* Gets a {@link TemplateDateFormat} using the date/time/datetime format settings and the current locale and time
* zone. (The current locale is the locale returned by {@link #getLocale()}. The current time zone is
* {@link #getTimeZone()} or {@link #getSQLDateAndTimeTimeZone()}).
*
* @param dateType
* The FTL date type; see the similar parameter of
* {@link TemplateDateFormatFactory#get(String, int, Locale, TimeZone, boolean, Environment)}
* @param dateClass
* The exact {@link Date} class, like {@link java.sql.Date} or {@link java.sql.Time}; this can influences
* time zone selection. See also: {@link #setSQLDateAndTimeTimeZone(TimeZone)}
*/
public TemplateDateFormat getTemplateDateFormat(int dateType, Class<? extends Date> dateClass)
throws TemplateValueFormatException {
boolean isSQLDateOrTime = isSQLDateOrTimeClass(dateClass);
return getTemplateDateFormat(dateType, shouldUseSQLDTTimeZone(isSQLDateOrTime), isSQLDateOrTime);
}
代码示例来源:origin: org.freemarker/freemarker
public TemplateModel get(String pattern) throws TemplateModelException {
TemplateDateFormat format;
try {
format = env.getTemplateDateFormat(pattern, dateType, Date.class, target, dateBI.this, true);
} catch (TemplateException e) {
// `e` should always be a TemplateModelException here, but to be sure:
throw _CoreAPI.ensureIsTemplateModelException("Failed to get format", e);
}
return toTemplateDateModel(parse(format));
}
代码示例来源:origin: org.freemarker/freemarker
/**
* Gets a {@link TemplateDateFormat} for the specified format string and the current locale and time zone. (The
* current locale is the locale returned by {@link #getLocale()}. The current time zone is {@link #getTimeZone()} or
* {@link #getSQLDateAndTimeTimeZone()}).
*
* <p>
* Note on performance: The result will be cached in the {@link Environment} instance. However, at least in 2.3.24
* the cached entries that depend on the current locale or the current time zone or the current date/time/datetime
* format of the {@link Environment} will be lost when those settings are changed.
*
* @param formatString
* Like {@code "iso m"} or {@code "dd.MM.yyyy HH:mm"} or {@code "@somethingCustom"} or
* {@code "@somethingCustom params"}
*
* @since 2.3.24
*/
public TemplateDateFormat getTemplateDateFormat(
String formatString, int dateType, Class<? extends Date> dateClass)
throws TemplateValueFormatException {
boolean isSQLDateOrTime = isSQLDateOrTimeClass(dateClass);
return getTemplateDateFormat(
formatString, dateType,
shouldUseSQLDTTimeZone(isSQLDateOrTime), isSQLDateOrTime, true);
}
代码示例来源:origin: org.freemarker/freemarker
/**
* @param tdmSourceExpr
* The blamed expression if an error occurs; only used for error messages.
*/
String formatDateToPlainText(TemplateDateModel tdm, Expression tdmSourceExpr,
boolean useTempModelExc) throws TemplateException {
TemplateDateFormat format = getTemplateDateFormat(tdm, tdmSourceExpr, useTempModelExc);
try {
return EvalUtil.assertFormatResultNotNull(format.formatToPlainText(tdm));
} catch (TemplateValueFormatException e) {
throw _MessageUtil.newCantFormatDateException(format, tdmSourceExpr, e, useTempModelExc);
}
}
代码示例来源:origin: org.freemarker/freemarker
boolean isSQLDateOrTime = isSQLDateOrTimeClass(dateClass);
boolean useSQLDTTZ = shouldUseSQLDTTimeZone(isSQLDateOrTime);
return getTemplateDateFormat(
formatString,
dateType, locale, useSQLDTTZ ? sqlDateAndTimeTimeZone : timeZone, isSQLDateOrTime);
代码示例来源:origin: org.freemarker/freemarker
@Override
public TemplateDateFormat get(String params, int dateType, Locale locale, TimeZone timeZone, boolean zonelessInput,
Environment env) throws TemplateValueFormatException {
TemplateFormatUtil.checkHasNoParameters(params);
try {
String targetFormatString;
if (localizedTargetFormatStrings != null) {
Locale lookupLocale = locale;
targetFormatString = localizedTargetFormatStrings.get(lookupLocale);
while (targetFormatString == null
&& (lookupLocale = _CoreLocaleUtils.getLessSpecificLocale(lookupLocale)) != null) {
targetFormatString = localizedTargetFormatStrings.get(lookupLocale);
}
} else {
targetFormatString = null;
}
if (targetFormatString == null) {
targetFormatString = this.defaultTargetFormatString;
}
return env.getTemplateDateFormat(targetFormatString, dateType, locale, timeZone, zonelessInput);
} catch (TemplateValueFormatException e) {
throw new AliasTargetTemplateValueFormatException("Failed to create format based on target format string, "
+ StringUtil.jQuote(params) + ". Reason given: " + e.getMessage(), e);
}
}
代码示例来源:origin: org.freemarker/freemarker
/**
* @param blamedDateSourceExp
* The blamed expression if an error occurs; only used for error messages.
* @param blamedFormatterExp
* The blamed expression if an error occurs; only used for error messages.
*/
String formatDateToPlainText(TemplateDateModel tdm, String formatString,
Expression blamedDateSourceExp, Expression blamedFormatterExp,
boolean useTempModelExc) throws TemplateException {
Date date = EvalUtil.modelToDate(tdm, blamedDateSourceExp);
TemplateDateFormat format = getTemplateDateFormat(
formatString, tdm.getDateType(), date.getClass(),
blamedDateSourceExp, blamedFormatterExp,
useTempModelExc);
try {
return EvalUtil.assertFormatResultNotNull(format.formatToPlainText(tdm));
} catch (TemplateValueFormatException e) {
throw _MessageUtil.newCantFormatDateException(format, blamedDateSourceExp, e, useTempModelExc);
}
}
代码示例来源:origin: org.freemarker/freemarker
/**
* Like {@link #getTemplateDateFormat(String, int, Class)}, but allows you to use a different locale than the
* current one. If you want to use the current locale, use {@link #getTemplateDateFormat(String, int, Class)}
* instead.
*
* <p>
* Performance notes regarding the locale and time zone parameters of
* {@link #getTemplateDateFormat(String, int, Locale, TimeZone, boolean)} apply.
*
* @param locale
* Can't be {@code null}; See the similar parameter of
* {@link TemplateDateFormatFactory#get(String, int, Locale, TimeZone, boolean, Environment)}
*
* @see #getTemplateDateFormat(String, int, Class)
*
* @since 2.4
*/
public TemplateDateFormat getTemplateDateFormat(
String formatString,
int dateType, Class<? extends Date> dateClass,
Locale locale)
throws TemplateValueFormatException {
boolean isSQLDateOrTime = isSQLDateOrTimeClass(dateClass);
boolean useSQLDTTZ = shouldUseSQLDTTimeZone(isSQLDateOrTime);
return getTemplateDateFormat(
formatString,
dateType, locale, useSQLDTTZ ? getSQLDateAndTimeTimeZone() : getTimeZone(), isSQLDateOrTime);
}
代码示例来源:origin: org.freemarker/freemarker
/**
* Same as {@link #getTemplateDateFormat(String, int, Class)}, but translates the exceptions to
* {@link TemplateException}-s.
*/
TemplateDateFormat getTemplateDateFormat(
String formatString, int dateType, Class<? extends Date> dateClass,
Expression blamedDateSourceExp, Expression blamedFormatterExp,
boolean useTempModelExc)
throws TemplateException {
try {
return getTemplateDateFormat(formatString, dateType, dateClass);
} catch (UnknownDateTypeFormattingUnsupportedException e) {
throw _MessageUtil.newCantFormatUnknownTypeDateException(blamedDateSourceExp, e);
} catch (TemplateValueFormatException e) {
_ErrorDescriptionBuilder desc = new _ErrorDescriptionBuilder(
"Can't create date/time/datetime format based on format string ",
new _DelayedJQuote(formatString), ". Reason given: ",
e.getMessage())
.blame(blamedFormatterExp);
throw useTempModelExc ? new _TemplateModelException(e, desc) : new _MiscTemplateException(e, desc);
}
}
代码示例来源:origin: org.freemarker/freemarker
TemplateDateFormat format = env.getTemplateDateFormat(tdm, exp, false);
try {
return assertFormatResultNotNull(format.format(tdm));
代码示例来源:origin: org.freemarker/freemarker
TemplateDateFormat format = env.getTemplateDateFormat(tdm, exp, false);
try {
return ensureFormatResultString(format.format(tdm), exp, env);
代码示例来源:origin: org.freemarker/freemarker
throws TemplateException {
try {
return getTemplateDateFormat(dateType, dateClass);
} catch (UnknownDateTypeFormattingUnsupportedException e) {
throw _MessageUtil.newCantFormatUnknownTypeDateException(blamedDateSourceExp, e);
代码示例来源:origin: org.freemarker/freemarker-gae
DateParser(String text, Environment env)
throws TemplateException {
this.text = text;
this.env = env;
this.defaultFormat = env.getTemplateDateFormat(dateType, Date.class, target, false);
}
代码示例来源:origin: org.apache.servicemix.bundles/org.apache.servicemix.bundles.freemarker
DateParser(String text, Environment env)
throws TemplateException {
this.text = text;
this.env = env;
this.defaultFormat = env.getTemplateDateFormat(dateType, Date.class, target, false);
}
代码示例来源:origin: org.freemarker/freemarker-gae
TemplateDateFormat getTemplateDateFormat(TemplateDateModel tdm, Expression tdmSourceExpr, boolean useTempModelExc)
throws TemplateModelException, TemplateException {
Date date = EvalUtil.modelToDate(tdm, tdmSourceExpr);
TemplateDateFormat format = getTemplateDateFormat(
tdm.getDateType(), date.getClass(), tdmSourceExpr,
useTempModelExc);
return format;
}
内容来源于网络,如有侵权,请联系作者删除!