Java/Velocity/MathTool
Содержание
- 1 Math tool: round to a given integer
- 2 Reference Class method in Mathtool
- 3 Velocity MathTool: Add
- 4 Velocity MathTool Divide
- 5 Velocity MathTool: Maximun
- 6 Velocity MathTool Minimum
- 7 Velocity MathTool: Multiply
- 8 Velocity Math Tool: Power
- 9 Velocity Math Tool Random
- 10 Velocity MathTool Random Between
- 11 Velocity Math Tool Round To Integer
- 12 Velocity Math Tool: Subtract
Math tool: round to a given integer
import java.io.StringWriter;
import java.io.Writer;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.MathTool;
public class MathToolExample {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/mathTool.vm");
VelocityContext ctx = new VelocityContext();
ctx.put("math", new MathTool());
ctx.put("aNumber", new Double(5.5));
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
-------------------------------------------------------------------------------------
4.45678 rounded to 3 places is $math.roundTo(3, "4.45678")
Reference Class method in Mathtool
import java.io.StringWriter;
import java.io.Writer;
import java.util.ArrayList;
import java.util.Collection;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.MathTool;
public class ProductList {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/calculation.vm");
VelocityContext ctx = new VelocityContext();
Collection products = new ArrayList();
products.add(new Product("Product 1", 112.199));
products.add(new Product("Product 2", 113.991));
products.add(new Product("Product 3", 111.919));
ctx.put("productList", products);
ctx.put("math", new MathTool());
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
public class Product {
private String name;
private double price;
public Product(String aName, double aPrice) {
name = aName;
price = aPrice;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
}
-------------------------------------------------------------------------------------
#set($totalPrice = 0)
#foreach($product in $productList)
$product.Name $$product.Price
#set($totalPrice = $math.add($totalPrice, $product.Price))
#end
Total Price: $$totalPrice
Velocity MathTool: Add
import java.io.StringWriter;
import java.io.Writer;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.MathTool;
public class MathToolExample {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/mathTool.vm");
VelocityContext ctx = new VelocityContext();
ctx.put("math", new MathTool());
ctx.put("aNumber", new Double(5.5));
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
-------------------------------------------------------------------------------------
$math.random is a random number
Velocity MathTool Divide
import java.io.StringWriter;
import java.io.Writer;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.MathTool;
public class MathToolExample {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/mathTool.vm");
VelocityContext ctx = new VelocityContext();
ctx.put("math", new MathTool());
ctx.put("aNumber", new Double(5.5));
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
-------------------------------------------------------------------------------------
$aNumber / 3.2 = $math.div($aNumber, "3.2")
Velocity MathTool: Maximun
import java.io.StringWriter;
import java.io.Writer;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.MathTool;
public class MathToolExample {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/mathTool.vm");
VelocityContext ctx = new VelocityContext();
ctx.put("math", new MathTool());
ctx.put("aNumber", new Double(5.5));
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
-------------------------------------------------------------------------------------
The maximum of $aNumber and 3.2 is $math.max($aNumber, "3.2")
Velocity MathTool Minimum
import java.io.StringWriter;
import java.io.Writer;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.MathTool;
public class MathToolExample {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/mathTool.vm");
VelocityContext ctx = new VelocityContext();
ctx.put("math", new MathTool());
ctx.put("aNumber", new Double(5.5));
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
-------------------------------------------------------------------------------------
The minimum of $aNumber and 3.2 is $math.min($aNumber, "3.2")
Velocity MathTool: Multiply
import java.io.StringWriter;
import java.io.Writer;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.MathTool;
public class MathToolExample {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/mathTool.vm");
VelocityContext ctx = new VelocityContext();
ctx.put("math", new MathTool());
ctx.put("aNumber", new Double(5.5));
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
-------------------------------------------------------------------------------------
$aNumber * 3.2 = $math.mul($aNumber, "3.2")
Velocity Math Tool: Power
import java.io.StringWriter;
import java.io.Writer;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.MathTool;
public class MathToolExample {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/mathTool.vm");
VelocityContext ctx = new VelocityContext();
ctx.put("math", new MathTool());
ctx.put("aNumber", new Double(5.5));
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
-------------------------------------------------------------------------------------
$aNumber ^ 3.2 = $math.pow($aNumber, "3.2")
Velocity Math Tool Random
import java.io.StringWriter;
import java.io.Writer;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.MathTool;
public class MathToolExample {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/mathTool.vm");
VelocityContext ctx = new VelocityContext();
ctx.put("math", new MathTool());
ctx.put("aNumber", new Double(5.5));
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
-------------------------------------------------------------------------------------
$math.random is a random number
Velocity MathTool Random Between
import java.io.StringWriter;
import java.io.Writer;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.MathTool;
public class MathToolExample {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/mathTool.vm");
VelocityContext ctx = new VelocityContext();
ctx.put("math", new MathTool());
ctx.put("aNumber", new Double(5.5));
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
-------------------------------------------------------------------------------------
$math.random(1, 20) is a random number between 1 and 20
Velocity Math Tool Round To Integer
import java.io.StringWriter;
import java.io.Writer;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.MathTool;
public class MathToolExample {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/mathTool.vm");
VelocityContext ctx = new VelocityContext();
ctx.put("math", new MathTool());
ctx.put("aNumber", new Double(5.5));
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
-------------------------------------------------------------------------------------
4.45678 rounded to the nearest integer is $math.roundToInt("4.45678")
Velocity Math Tool: Subtract
import java.io.StringWriter;
import java.io.Writer;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.MathTool;
public class MathToolExample {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/mathTool.vm");
VelocityContext ctx = new VelocityContext();
ctx.put("math", new MathTool());
ctx.put("aNumber", new Double(5.5));
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
-------------------------------------------------------------------------------------
$aNumber - 3.2 = $math.sub($aNumber, "3.2")