Velocity读取后台数据

    今天为解决Velocity如何读取后来Java传递的值,上网找了好多资料,但好多资料都讲得不详细,最后很无奈,明知道@红薯 很忙的,都@了一下@红薯 ,@红薯老大还是很亲切的,很快就用Iphone回了我,就是用toolbox解决,感谢@红薯老大。

    现在自己整理一番,并把源码贡献出来,希望可以帮到大家:

一、 我的工程结构如下:

二、 其中各文件的代码如下:

web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
	version="3.0">
	<display-name></display-name>

	<welcome-file-list>
		<welcome-file>index.vm</welcome-file>
	</welcome-file-list>

	<servlet>
		<servlet-name>Velocity</servlet-name>
			<servlet-class>
				org.apache.velocity.tools.view.servlet.VelocityViewServlet
			</servlet-class>
			
			<!-- 这里将把toos.xml添加进来 -->
			<init-param>
				<param-name>test</param-name>
				<param-value>/WEB-INF/tools.xml</param-value>
			</init-param>
			
	</servlet>

	<servlet-mapping>
		<servlet-name>Velocity</servlet-name>
		<url-pattern>*.vm</url-pattern> 
	</servlet-mapping>

</web-app>

tools.xml:

<?xml version="1.0" encoding="utf-8"?>
	
<tools>

	<!-- 这 里可以设置一些静态的数据 -->
	<data key="id" value="999"></data>
	
	<!-- 这里可以设置一些动态的数据,因为是由后台动态传递过来的 -->
	<toolbox scope="application">
		<tool key="test" class="com.test.bean.Test"></tool>
	</toolbox>
</tools>

Test.java:

package com.test.bean;

public class Test {
	
	private String name = "Vincent";
	private int age = 27;
	private String job = "IT";
	private String blog = "http://my.oschina.net/VincentJiang";
	
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getJob() {
		return job;
	}
	public void setJob(String job) {
		this.job = job;
	}
	public String getBlog() {
		return blog;
	}
	public void setBlog(String blog) {
		this.blog = blog;
	}
	
}

index.vm:

<!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
	<h1>Velocity Test</h1>
		<hr>
		
		##这里取toos.xml中key为id相应的value,即999
		$id
		<hr>
		
		##以下三个标记符将取toos.xml中key为test对应的class所返回的值
		$test.name
		<hr>
		$test.age
		<hr>
		$test.job
		<hr>
		<a href="$test.blog">$test.blog</a>
		<hr>
    			
	<SCRIPT >
    </SCRIPT>
</body>
</html>

最后显示出来的页面如下所示:

源码我也上传了,如下:

http://pan.baidu.com/share/link?shareid=416582&uk=3758266068

转载于:https://my.oschina.net/H7QMCSeOLOxu/blog/119682

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值