基于元数据信息管理系统_第1页
基于元数据信息管理系统_第2页
基于元数据信息管理系统_第3页
基于元数据信息管理系统_第4页
基于元数据信息管理系统_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORG基于元数据的开发平台基于元数据的开发平台胡胡 欣欣高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORG元数据的概念理解l关于数据的数据,也就是用描述数据的数据。事物元数据1数据1数据2数据3.元数据2元数据3高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORG元数据应用场景1数据元数据高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORG基于元数据的开发平台的作用l通过配

2、置方式快速搭建中小型信息管理系统l可用于分布式架构(权限管理 )高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORG元数据系统中的信息类l信息类通过元数据方式定义出来的一个信息节点就称为信息类,一个信息类对应数据库中的一张表,对应Hibernate中的一个实体类。一个信息类由多个信息属性组成,每个信息属性对应表中的一个字段,对应实体类中的一个成员变量。高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORG基于元数据开发平台功能介绍l信息类的树形管理l信息类的元数据定义l信息类的CRUD功能l信息类的访问控制l

3、基于Spring Web Services的信息类服务接口高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORG基于元数据开发平台功架构图信息类元数据平台引擎信息类服务接口访问控制服务CRUD服务管理控制台信息类数据UI组件企业级应用系统高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORG核心功能开发思路分析Hibernate元数据(XML)实体映射文件实体类velocity模板引擎javassist框架元数据系统动态加载元数据定义高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.

4、IT315.ORG树的两种存储方式比较lXML方式加载时无需进行处理,天然就是树形结构适合于后台的配置管理功能,并发性差l数据库表方式(id,text,parentid)加载时需进行排序处理适合大量用户操作的树,并发性好高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORG“信息目录管理” 业务用例分析技术点:技术点:lExtJs tree控件lJAXB(Java Architecture for XML Binding) OXMlSchema(是用于描述和规范XML文档的逻辑结构的一种语言)高级软件人才实作培训专家高级软件人才实作培训专家! !IT资

5、讯交流网 WWW.IT315.ORG“信息元数据定义” 业务用例分析技术点:技术点:lVelocity模板框架lJavassist字节码框架lHibernate动态加载高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORG“信息数据维护” 业务用例分析高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORG系统中使用到的相关技术点汇总lSchemalJAXBlVelocitylJavassistlspringSecuritylspringWslExtjs高级软件人才实作培训专家高级软件人才实作培训专家! !IT资

6、讯交流网 WWW.IT315.ORGXML Schema 语言lXML Schema 语言也称作 XML Schema 定义(XML Schema Definition,XSD)lXML Schema作用(作用(定义 XML 文档的合法构建模块,类似 DTD)定义可出现在文档中的元素定义可出现在文档中的属性定义哪个元素是子元素定义子元素的次序定义子元素的数目定义元素是否为空,或者是否可包含文本定义元素和属性的数据类型定义元素和属性的默认值以及固定值高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGSchema文件的根元素 (1) xmlns=htt

7、p://2001/XMLSchema 引入w3c命名空间 (2)targetNamespace=. 指定当前Schema文件的命名空间高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORG定义组成XML元素和属性lelement 元素定义一个xml元素element自身的主要属性 :id、name、type lattribute 元素定义一个xml元素的属性attribute 自身的主要属性:id、name、ref 、type、use高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGSc

8、hema语言(XSD)主要数据类型l基本类型l简单类型simpleTypel复杂类型complexType高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGXSD 基本类型最常用的类型是:string decimal integer boolean date time例子:Smith281980-03-27这是相应的简易元素定义: 高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGXSD的简单类型定义simpleTypel值的限定(pattern和enumeration)Aud1高级软件人才实作培训专家

9、高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGXSD的简单类型定义simpleTypel合并了两个简单类型的简单类型高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGXSD的简单类型定义simpleTypel定义单个 simpleType 定义的集合高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGXSD的复杂类型定义complexTypel复杂类型的元素是包含其他元素和/或属性的 XML 元素。高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT

10、315.ORGXML对Schema进行引用指定默认的命名空间指定带前缀的命名空间声明xsi标准命名空间使用xsi:schemaLocation为每个命名空间指定具体的schema文件高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGJAXB概述JAXB(Java Architecture for XML Binding,Java XML绑定架构)是一个业界的标准,是一项可以根据XML Schema产生Java类的技术。该技术可以提供将XML实例文档反向生成Java对象树的方法。能将Java对象树的内容重新写到XML实例文档。另一方面来讲,JAXB提

11、供了快速而简便的方法将XML模式绑定到Java对象,从而使得Java开发者在Java应用程序中能方便加载XML数据,并以XML文件作为数据存储方式。高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGJAXB架构图高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGJAXB实现包括以下组件lSchema编译器(xjc.exe)xjc -d java类目录路径 -p 包名 schema文件名 lSchema生成器 (schemagen.exe)l绑定运行时框架 (rt.jar下的javax.xml.bind包

12、)JAXBContext、Marshaller、Unmarshaller高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGJAXB序列化(对象转xml)JAXBContext context = JAXBContext.newInstance(clazz);Marshaller m = context.createMarshaller();m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);m.setProperty(Marshaller.JAXB_ENCODING, charsetName)

13、;m.setProperty(Marshaller.JAXB_FRAGMENT, false);if( schemaLocation != null & schemaLocation.trim()!=)m.setProperty(Marshaller.JAXB_SCHEMA_LOCATION, schemaLocation); outputStream = new FileOutputStream(f:/temp/xxx.xml);m.marshal(object, outputStream);高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.O

14、RGJAXB反序列化(xml转对象)JAXBContext jaxbContext ;Object object = null ;jaxbContext = JAXBContext.newInstance(clazz);StreamSource stremSource = new StreamSource(inputStream) ;/反序列化Unmarshaller unmarshaller = jaxbContext.createUnmarshaller() ;object = unmarshaller.unmarshal(stremSource) ;高级软件人才实作培训专家高级软件人才实

15、作培训专家! !IT资讯交流网 WWW.IT315.ORG在Spring中使用JAXB高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGVelocity概述lVelocity是一个基于java的模板引擎。它使得开发人员通过强大的模版语言来与Java中定义的对象进行交互。l模板引擎(这里特指用于Web开发的模板引擎)是为了使用户界面与业务数据(内容)分离而产生的,它可以生成特定格式的文档,用于网站的模板引擎就会生成一个标准的HTML文档。l生成源代码(rapidFramework)l生成配置文件veloeclipse - http:/ !IT资讯交流

16、网 WWW.IT315.ORG模板引擎运行原理模板引擎模板文件数据输出高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGVelocity基本语法l变量定义、引用变量定义、引用#set变量名变量名 定义变量 ,例如:#set( $foo = bar )$变量名变量名 用来输出引用的变量, 例如:$foo 用来明确标识Velocity变量! 用来强制把不存在的变量显示为空白ljava对象的引用对象的引用$对象对象.属性属性 用来输出对象的属性 $对象对象.方法方法 调用对象的方法 $对象对象 调用对象的toString()方法输出 用来明确标识对象 !

17、 用来强制把不存在的对象显示为空白l条件判断语句#if 、#elseif 、#else、#endl循环语句#foreach、in #endl注释# 和和 #* *#高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORG Velocity基本开发步骤当Velocity应用于开发时的基本步骤设置模板文件的基准目录初始化Velocity创建Context对象添加数据到Context选择模板合并模板和数据产生输出页面或文件高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGSpring整合Velocityl引入vel

18、ocity.jar和velocity-tool.jarlspring配置文件加入如下配置高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGJavassist概述l什么是什么是Javassist (asm、cglib) Javassist是一个开源的分析、编辑和创建Java字节码的类库。是jboss的一个子项目,其主要的优点,在于简单,而且快速。直接使用java编码的形式,而不需要了解虚拟机指令,就能动态改变类的结构,或者动态生成类高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGClassPool和Ct

19、ClasslCtClass实例是用来描述一个java的class文件的抽象,可以与一个class文件相关联,并获得一个操作句柄lClassPool类的实例是CtClass对象的容器高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGJavassist例子(创建新的类)ClassPool pool = ClassPool.getDefault();CtClass cc = pool.makeClass(Point);高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGJavassist例子(copy方式创建新

20、的类)ClassPool pool = ClassPool.getDefault();CtClass cc = pool.get(Point);cc.setName(Pair);高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGJavassist例子(继承方式创建子类)ClassPool pool = ClassPool.getDefault();CtClass cc = pool.get(test.Rectangle);cc.setSuperclass(pool.get(test.Point);cc.writeFile();高级软件人才实作培训专

21、家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGHibernate实体映射文件动态加载lspring容器启动时自定义加载实体映射文件高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGHibernate实体映射文件热加载l系统运行中,热加载实体映射文件高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORGWeb ServicelWeb service 就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。这就是说,你能够用编程的方法通过Web来调用这个应用程序。lWeb Service的三要素:wsdlsoapuuid高级软件人才实作培训专家高级软件人才实作培训专家! !IT资讯交流网 WWW.IT315.ORG什么是WSDLlWSDL 全称Web Ser

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论