Java 如何在velocity模板中将字符串解析为bigInteger?
如何在velocity模板中将字符串解析为bigInteger 如果我们有integer,那么我们可以做如下操作(但不确定,我们如何为bigIntger类型执行此操作):Java 如何在velocity模板中将字符串解析为bigInteger?,java,velocity,biginteger,Java,Velocity,Biginteger,如何在velocity模板中将字符串解析为bigInteger 如果我们有integer,那么我们可以做如下操作(但不确定,我们如何为bigIntger类型执行此操作): 要做到这一点,您需要在上下文中使用一个小助手类: public class NumberHelper { public static final NumberHelper INSTANCE = new NumberHelper(); private Exception lastError = null;
要做到这一点,您需要在上下文中使用一个小助手类:
public class NumberHelper {
public static final NumberHelper INSTANCE = new NumberHelper();
private Exception lastError = null;
private NumberHelper() {
// intentionally empty
}
public void setLastError(Exception lastError) {
this.lastError = lastError;
}
public Exception getLastError() {
return lastError;
}
public BigInteger parseBigInteger(String numberAsString) {
BigInteger retVal = null;
try {
retVal = new BigInteger(numberAsString);
} catch(NumberFormatException e) {
setLastError(e);
}
return;
}
}
现在把它放到你的上下文中:
context.put("numberHelper", NumberHelper.INSTANCE);
并在模板上使用它
#set( $Integer = 0 )
#set( $input1InInteger = $numberHelper.parseBigInteger($input1) )
要做到这一点,您需要在上下文中使用一个小助手类:
public class NumberHelper {
public static final NumberHelper INSTANCE = new NumberHelper();
private Exception lastError = null;
private NumberHelper() {
// intentionally empty
}
public void setLastError(Exception lastError) {
this.lastError = lastError;
}
public Exception getLastError() {
return lastError;
}
public BigInteger parseBigInteger(String numberAsString) {
BigInteger retVal = null;
try {
retVal = new BigInteger(numberAsString);
} catch(NumberFormatException e) {
setLastError(e);
}
return;
}
}
现在把它放到你的上下文中:
context.put("numberHelper", NumberHelper.INSTANCE);
并在模板上使用它
#set( $Integer = 0 )
#set( $input1InInteger = $numberHelper.parseBigInteger($input1) )
如果你可以使用
java.lang.Long
,你可以做:#set($int=0)#set($Long=$int.longValue())
如果你可以使用java.lang.Long
,你可以做:#set($int=0)#set($Long=$int.longValue())
@Dhaval你的问题表明velocity现在支持BigInteger。您使用的是什么版本?Velocity支持所有Java对象。。。我不明白为什么BigInteger从那时起就不总是得到支持view@Dhaval您的问题表明velocity现在支持BigInteger。您使用的是什么版本?Velocity支持所有Java对象。。。我不明白为什么BigInteger不能从这个角度得到支持