`
Java_大猫
  • 浏览: 173437 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

基于velocity 生成HTML 的公用方法。

阅读更多
基于velocity 生成HTML 的公用方法。
很简单留着纪念。时间长了容易忘记。
/**
	 * 通过velocity 模板生成静态HTML 文件
	 * @param htmlName 文件名称
	 * @param toFilePath 文件位置
	 * @param vmTemPath velocity模板文件路径
	 * @param map 集合
	 * @param contextName 模板循环名称
	 */
	public  void createHtmlByVelocity(String htmlName,String toFilePath,
										String vmTemPath,Map<String,Object> params,String contextName){
		String filePath=toFilePath+File.separator+htmlName+".html";
       
		try {
			FileOutputStream fos = new FileOutputStream(filePath);    
			 BufferedWriter writer  = new BufferedWriter(new OutputStreamWriter(    
			        fos, Const.EncodingUTF8));
			 Template velocity_template =velocityEngine.getTemplate(vmTemPath,Const.EncodingUTF8); 
			 
			 VelocityContext context = new VelocityContext();  
			 context.put(contextName, params);
			 velocity_template.merge(context,writer ); 
			 writer.close();
			 
			 
		} catch (Exception e) {
			log.error("文件路径失败!",e);
			throw new MYException("文件路径失败!", e);
		}
	}
	




 
          <h2>${list.title}</h2>  
        <table border="1" style="margin-left: 100px" >  
            <tr>  
              
                <th class="jobs-time">序号</th>  
                <th class="jobs-title">名称</th>  
                <th class="jobs-title">mobileNo</th>  
                <th class="jobs-title">email</th>  
              
                <th class="jobs-title">操作------${list.test}---asasddd</th>  
            </tr>  
			
         #foreach($course in ${list.list})  
          
            <tr>  
                <td width="13%" align="center">  
                  ${course.userId}  
                </td>  
               <td>${course.name}</td>  
      
              <td>${course.mobileNo}</td>  
      
              <td>${course.email}</td>  
                
             
            </tr>  
            #end   
        </table>  







	


前台使用方式 类似于MAP 的 key 和 value 方式。这样的话 方便一些 ,后台方面就可以减少模板地方的代码书写一次性 向VM返回一个值
分享到:
评论

相关推荐

    基于Velocity的代码生成器

    【基于Velocity的代码生成器】是一种实用的工具,它利用Apache Velocity模板引擎来自动化Java代码的生成过程。在J2EE开发中,大量的重复性编码工作可以通过代码生成器来简化,提高开发效率和代码质量。 Velocity是一...

    SpringBoot Velocity 代码生成模板

    Velocity是Apache软件基金会的一个开源项目,它是一个基于Java的模板引擎,用于生成动态内容。Velocity通过简单的语法,如`${variable}`,将模板与Java对象(称为上下文)连接起来,允许开发者在模板中插入动态内容...

    Velocity+Struts生成html

    ** Velocity + Struts 生成 HTML ** 在Java Web开发中,Velocity和Struts是两个非常重要的框架,它们常被用来构建动态网站和企业级应用。Velocity是一个基于模板语言的轻量级视图技术,而Struts则是一个MVC(Model-...

    velocity生成静态页面实例

    在这个过程中,`VelocityEngine`负责加载和解析模板,`evaluate()`方法将模板和上下文合并,生成HTML字符串。最后,我们可以将`htmlOutput`写入到一个HTML文件中,这样就完成了静态页面的生成。 在提供的压缩包文件...

    Velocity Template的另类用法:生成XML

    总结,Velocity Template作为一种强大的文本生成工具,不仅限于HTML页面的生成,还可以巧妙地应用于XML文档的生成。通过将业务数据与模板结合,可以快速、灵活地生成定制化的XML内容,极大地提高了开发效率。对于...

    Velocity 生成Action、Serv、Dao代码

    总结来说,`Velocity 生成Action、Serv、Dao代码`是一种高效的方法,利用 Velocity 模板引擎自动化生成Java项目中的常见三层架构代码。通过理解并运用这一技术,开发者可以提高开发效率,减少重复劳动,使代码更加...

    itext加载velocity生成PDF

    `iText`是一个流行的Java库,专门用于创建和处理PDF文档,而`Velocity`则是一个强大的模板引擎,常用于动态生成HTML、XML等文本。将两者结合,我们可以利用`Velocity`的模板能力来动态生成PDF内容,这在SpringMVC...

    基于RCP和velocity的java代码生成器

    基于RCP和velocity的java代码生成器 该代码生成器只可用于mysql数据库 版权公司所有 仅供交流学习 注意:请把templates文件下的模板拷贝到C:根目录下 各类都有注释 JDK6 Myeclipse6开发

    一个粗糙的代码生成器,基于velocity

    【标题】:“一个粗糙的代码生成器,基于velocity” 这个标题揭示了我们正在讨论的是一款使用Velocity模板引擎作为基础的代码生成工具。Velocity是Apache软件基金会的一个开源项目,它是一个用Java编写的模板语言,...

    velocity 入门文档及应用源码,很适合做自动代码生成

    3. **基于Ant+Velocity的简单代码生成器的思路与实现 - - Java - JavaEye论坛.mht**:这个文件可能是一个论坛帖子的存档,展示了使用Ant和Velocity构建代码生成器的具体步骤和案例讨论。 4. **velocity(1).rar** 和 ...

    velocity生成静态网页并分页

    在IT行业中,Velocity是一款强大的Java模板引擎,常用于生成动态Web内容并转化为静态HTML页面,以提高网站的访问速度和效率。本项目的核心是利用Velocity模板语言和分页技术,生成具有分页功能的静态网页。 ...

    linyi.rar 使用Velocity生成代码

    Velocity由Apache软件基金会开发,是基于Java的模板引擎,它将HTML、XML或其他格式的模板与数据源(如Java对象)结合,生成最终的输出。Velocity的语法简洁,易于理解和使用,且与视图层分离,有利于实现MVC架构。 ...

    Velocity代码生成工具

    **Velocity**是一种基于Java的模板引擎,它能够将模板文件与数据模型相结合来生成最终的文档或文本输出。Velocity的设计初衷是使得非程序员也能够轻松编写模板,并且允许程序员通过简单的API调用来驱动这些模板。 *...

    velocity实例

    在IT行业中,Velocity被广泛应用于代码生成工具,如本实例所示,它可以用来自动生成getter、setter方法以及toString等常用代码段,极大地提高了开发效率。 Velocity的工作原理基于模板语言,它允许开发者将业务逻辑...

    Velocity Demo

    Velocity Demo是基于Velocity框架的一个示例项目,旨在帮助初学者快速上手并理解Velocity的工作原理和用法。在这个项目中,"Myvelocity"可能是指包含Velocity模板文件和其他相关配置的目录。 Velocity的核心概念...

    itext+velocity 填充字段 html转pdf

    总的来说,`iText` 和 `Velocity` 的结合使用,为开发人员提供了一种高效且灵活的方法来生成带有动态数据的PDF文件,特别适用于合同模板的填充和生成。这种方法既可以利用HTML的易编辑性,又能享受到PDF的标准化和...

    velocity语法与使用方法

    然而,基于题目要求,本回答将着重于解析Velocity的相关知识点,并简要提及Tomcat的部分配置内容作为背景。 ### Tomcat部署项目配置背景 在文档中提到了如何通过修改`server.xml`文件来配置Tomcat中的Web应用程序...

    一套基于SpringMVC+velocity框架的web应用 ,基于注解

    在Velocity模板中,开发者可以通过#set指令设置变量,#if进行条件判断,#foreach进行循环,以及引用Java对象的方法等,实现动态内容的生成。Velocity的宏和 VelocityContext 进一步增强了模板的功能和灵活性。 ...

    html移动开发手势缩放(纯干货)(基于hammer velocity)

    本教程将详细介绍如何利用Hammer.js和Velocity.js这两个库来实现在HTML页面上的手势缩放功能,尤其适用于Android和iOS设备。 Hammer.js是一个轻量级的手势库,它提供了丰富的手势识别功能,如滑动、双击、捏合等,...

Global site tag (gtag.js) - Google Analytics