初识Velocity
哇,好长时间没有写文章啦~
楼主最近在工作中认识了一个叫做Velocity的java的模板引擎,小白的我去网上看了一下,应用还蛮多的,然而我目前接触到的只是用于基于模板生成这块的知识,想写个文章记下,以后随时可以看下,只是一个简单的用xml生成javaBean的步骤,有需要的同学可以交流下~~~或者给我推荐一些好的文章
Velocity模板生成方法(xml生成JavaBean):
1.根据需求编写xml文件(其实很多格式的文件都可以,像json啦),或者已有xml模板的格式,模板的好处就是你下次再添加需求的时候可以直接在xml中按照格式添加就好啦,xml格式可以像下面这样~
<?xml version="1.0" encoding="UTF-8"?>
<xml-body>
<table name="" desc="">
<column name="" type="" desc="" />
<column name="" type="" desc="" />
<column name="" type="" desc="" />
<column name="" type="" desc="" />
<column name="" type="" desc="" />
<column name="" type="" desc="" />
</table>
</xml-body>
2.有了xml文件,那就要解析它,我们要生成javaBean,所以说,我们就把xml中一个table当做一个类,table下的column当做它的属性,这样,以后你再想多加一个类,在xml中加一个table就行了,这时你需要根据你的需求来定义一个xml解析类,将解析结果放在你的存储对象中(自己定义类来保存解析的结果),解析xml的方式,DOM或SAX都可以;
3.有了解析结果的存储对象,现在可以编写模板了,模板是以xxx.vm(放在src的目录下)的形式,Velocity模板的有它的语法,大家可以看看这个,其实这个不用太琢磨,语法什么的一会就看懂了,也没必要一次看完,用到什么再找就行了,其实就是像java语法似的,用一些循环,变量什么的将存储对象里的值来填充vm模板里的变量,从而生成想要的java代码;
看似只有这简单的3步,但要自己真正实现起来还得仔细的想一想,怎样定义xml格式便于解析,解析放到怎样的存储对象中去,想要什么样的java代码要怎样写vm文件,编码格式,vm文件位置,这些都要注意,不过一般工作上这些都已经做好了,我们主要还是要了解整个过程,有兴趣可以写个demo试一下;
vm文件位置问题lz也没解决呢,现在是放在src目录下;设置了位置也不行,QAQ,有大神知道了说一下哈~
初识Velocity的更多相关文章
- jQuery-velocity.js 插件的简易使用
初识Velocity动画,感觉它并没有那么强大,但是渐渐感觉它的ui动画可以让我们简易的使用到我们的项目中. Velocity动画的简介: 下载地址:http://www.julian.com/res ...
- VTL(Velocity Templates Language,即Velocity模板语言)初识语法总结
1.velocity是一门基于Java语言的视图表现层模板引擎,它可以取代jsp,比jsp更高效. 2.velocity变量的定义与引用 (1).定义一个变量:#set ($a = "vel ...
- Velocity.js初识
Velocity.js官网:http://julian.com/research/velocity/ 兼容IE8和Android2.3 Velocity.js基本用法 效果图: CSS .box{ w ...
- ? 初识Webx 3
初识webx 2: http://www.cnblogs.com/lddbupt/p/5552351.html Webx Turbine建立在Webx Framework的基础上,实现了页面渲染.布局 ...
- 细细品味大数据--初识hadoop
初识hadoop 前言 之前在学校的时候一直就想学习大数据方面的技术,包括hadoop和机器学习啊什么的,但是归根结底就是因为自己太懒了,导致没有坚持多长时间,加上一直为offer做准备,所以当时重心 ...
- 武林高手?敏捷开发,唯velocity取胜
去年学习软件工程教材,初识敏捷开发.目前所在的团队,也是使用敏捷开发方式.今天读了这篇文章,对于这段时间的效率有所警醒.其次,个人认同文章中的用户故事,结对编程思想. 文章援引:http://gitb ...
- Velocity笔记--使用Velocity获取动态Web项目名的问题
以前使用jsp开发的时候,可以通过request很轻松的获取到根项目名,现在换到使用velocity渲染视图,因为已经不依赖servlet,request等一些类的环境,而Web项目的根项目名又不是写 ...
- Velocity初探小结--velocity使用语法详解
做java开发的朋友一般对JSP是比较熟悉的,大部分人第一次学习开发View层都是使用JSP来进行页面渲染的,我们都知道JSP是可以嵌入java代码的,在远古时代,java程序员甚至在一个jsp页面上 ...
- Velocity初探小结--Velocity在spring中的配置和使用
最近正在做的项目前端使用了Velocity进行View层的数据渲染,之前没有接触过,草草过了一遍,就上手开始写,现在又回头细致的看了一遍,做个笔记. velocity是一种基于java的模板引擎技术, ...
随机推荐
- LDAP-HA安装与配置(Keepalived方式实现)
LDAP部署 安装LDAP(主节点) 安装LDAP Server yum install db4 db4-utils db4-devel cyrus-sasl* krb5-server-ldap -y ...
- .net 程序 动态 控制IIS 站点域名绑定
第一步:引用 导入 System.EnterpriseServices及System.DirectoryServices 两个引用 程序引用: using System.DirectoryServic ...
- Sql Server数据字典
1:添加字段属性或者表属性 execute sys.sp_addextendedproperty @name = N'MS_Description', @value = N'要添加的属性信息', @l ...
- 如何使用 Pylint 来规范 Python 代码风格
如何使用 Pylint 来规范 Python 代码风格 转载自https://www.ibm.com/developerworks/cn/linux/l-cn-pylint/ Pylint 是什么 ...
- FragmentXlistview
package com.example.lenovo.tablayout; /** * Created by lenovo on 2018/7/18. */ import android.os.Asy ...
- 一个mysqldump的报错
1.MySQL版本 5.7.14-log 2.问题分析 mysqldump -uxxx -pxxx db_nale 一般来讲上述命令主要是用于MySQL的逻辑备份,用来备份某个数据的全部表,但是我在执 ...
- js·逻辑运算
|| 遇到第一个为真就返回 && 遇到第一个为假就终止,返回false,如果没遇到就返回最后那一个 5&&4&&2&&1 ==> ...
- PTA9
这个作业属于哪个课程 C语言程序设计2 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/software-engineering-class2-2018/ ...
- [删括号][判断可行性的dp]
链接:https://ac.nowcoder.com/acm/problem/21303来源:牛客网题目描述 给你一个合法的括号序列s1,每次你可以删除一个"()" 你可以删除0个 ...
- C++动态链接库方法调用
//定义内存的信息结构 [StructLayout(LayoutKind.Sequential)] public struct MEMORY_INFO { public uint dwLength; ...