哇,好长时间没有写文章啦~

楼主最近在工作中认识了一个叫做Velocity的java的模板引擎,小白的我去网上看了一下,应用还蛮多的,然而我目前接触到的只是用于基于模板生成这块的知识,想写个文章记下,以后随时可以看下,只是一个简单的用xml生成javaBean的步骤,有需要的同学可以交流下~~~或者给我推荐一些好的文章

Velocity下载

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的更多相关文章

  1. jQuery-velocity.js 插件的简易使用

    初识Velocity动画,感觉它并没有那么强大,但是渐渐感觉它的ui动画可以让我们简易的使用到我们的项目中. Velocity动画的简介: 下载地址:http://www.julian.com/res ...

  2. VTL(Velocity Templates Language,即Velocity模板语言)初识语法总结

    1.velocity是一门基于Java语言的视图表现层模板引擎,它可以取代jsp,比jsp更高效. 2.velocity变量的定义与引用 (1).定义一个变量:#set ($a = "vel ...

  3. Velocity.js初识

    Velocity.js官网:http://julian.com/research/velocity/ 兼容IE8和Android2.3 Velocity.js基本用法 效果图: CSS .box{ w ...

  4. ? 初识Webx 3

    初识webx 2: http://www.cnblogs.com/lddbupt/p/5552351.html Webx Turbine建立在Webx Framework的基础上,实现了页面渲染.布局 ...

  5. 细细品味大数据--初识hadoop

    初识hadoop 前言 之前在学校的时候一直就想学习大数据方面的技术,包括hadoop和机器学习啊什么的,但是归根结底就是因为自己太懒了,导致没有坚持多长时间,加上一直为offer做准备,所以当时重心 ...

  6. 武林高手?敏捷开发,唯velocity取胜

    去年学习软件工程教材,初识敏捷开发.目前所在的团队,也是使用敏捷开发方式.今天读了这篇文章,对于这段时间的效率有所警醒.其次,个人认同文章中的用户故事,结对编程思想. 文章援引:http://gitb ...

  7. Velocity笔记--使用Velocity获取动态Web项目名的问题

    以前使用jsp开发的时候,可以通过request很轻松的获取到根项目名,现在换到使用velocity渲染视图,因为已经不依赖servlet,request等一些类的环境,而Web项目的根项目名又不是写 ...

  8. Velocity初探小结--velocity使用语法详解

    做java开发的朋友一般对JSP是比较熟悉的,大部分人第一次学习开发View层都是使用JSP来进行页面渲染的,我们都知道JSP是可以嵌入java代码的,在远古时代,java程序员甚至在一个jsp页面上 ...

  9. Velocity初探小结--Velocity在spring中的配置和使用

    最近正在做的项目前端使用了Velocity进行View层的数据渲染,之前没有接触过,草草过了一遍,就上手开始写,现在又回头细致的看了一遍,做个笔记. velocity是一种基于java的模板引擎技术, ...

随机推荐

  1. s21day19 python笔记

    s21day19 python笔记 一.面向对象的基本知识 1.1 基本格式 # 定义类 class 类名: def 方法名(self,name): print(name) return 123 de ...

  2. ubuntu18安装navicat

    1.登陆 http://www.navicat.com.cn/download/navicat-for-mysql 页面下载navicat安装包,务必选位置1-64bit ps: 中文版乱码问题严重, ...

  3. python leetcode 颠倒二进制数

    我的做法,,这个题在于必须补0 def reverseBits(n): num=32-len(bin(n)[2:]) m = bin(n)[2:][::-1] if num > 0: for i ...

  4. 在Ubuntu15.10中,使用wxPython的webview和JS进行交互

    在Ubuntu下进行wxPython开发,因为需求,所以使用了wxPython的webview和JS的交互. 在Windows下,下图显示的代码可以正常的运行,但是在Ubuntu下进行开发,以下的代码 ...

  5. java 大数运算[转]

    用JAVA 实现算术表达式(1234324234324 + 8938459043545)/5 + 343434343432.59845 因为JAVA语言中的long 定义的变量值的最大数受到限制,例如 ...

  6. GraphQL搭配MongoDB入门项目实战

    什么是GraphQL GraphQL 是一种面向 API 的查询语言.在互联网早期,需求都以 Web 为主,那时候数据和业务需求都不复杂,所以用 RestAPI 的方式完全可以满足需求.但是随着互联网 ...

  7. 修复因为存储空间问题引起的nexus 服务启动异常

      故障描述 因为nexus所在服务器存储空间满了, 做了部分清理操作,结果nexus 启动异常,提示错误信息基本类似如下: build 285537d2767275f460df32c6a3be01b ...

  8. How to detect, enable and disable SMBv1, SMBv2, and SMBv3 in Windows and Windows Server

    转自:https://support.microsoft.com/en-us/help/2696547/detect-enable-disable-smbv1-smbv2-smbv3-in-windo ...

  9. mysql 生成时间序列数据 - 存储过程

    由于时间自动转换为int值, 做一步转化,也可在调用时处理 use `test`; CREATE table test.test1 as SELECT state, id, `规格条码`, `色号条码 ...

  10. jmeter的简单http接口用法

    1.  jmeter的启动:windows下的环境 进入jmeter的并目录双击启动 Mac电脑 进入bin目录找到jmeter.sh 文件 在终端执行./jmeter.sh 或者./jmeter. ...