`

将xml于关系式数据库一起使用的思路

阅读更多

http://product.jinku.com/

 

服务器数据库与xml相结合

数据库结构

 

顶层分类表 classification

Clas_id(自增,主键)

Clas_name(唯一键)

 

Xml字段结构和模板

<html id="" name="">

<classify>

<node></node>用于存放分类 id ,有多个说明有多个分类使用了它

<node></node>

</classify

<filepath1></filepath1>//后台模板文件路径

<filepath2></filepath2>//前台显示模板文件路径

<structure>

字段结构

</structure>

</html>

 

需要注意的是后台模板和前台显示模板的对应

 

 

数据表data

Data_id(自增,主键)

class_id

Data_title//文章标题

Data_filepath //数据 xml 文件的绝对路径

Data_html_filepath1//后台显示模板

Data_html_filepath2//前台显示模板

 

目录格式

Db/tableStructure/(1).xml    Xml字段结构和模板

Db/data/($classid)/().xml   md5()(题目标题 + 当前时间戳作为文件名称使其唯一)

Html/1/().html            后台模板 md5( 模板标题 ) 作为文件名称

Html/2/().html            前台显示模板 md5( 模板标题 ) 作为文件名称


数据的处理

 

文章管理

   Insert()  

    1. 选择文章分类,选择该分类下选择相应的模板,加载模板,提交后(class_id,html_id)

    2. 服务器处理

 将文章标题、生成的文章数据xml 的路径、 class_id (html_id=>filepath1 filepath2) 插入到服务器数据库

   说明:html_id 是为了关联后台显示模板和前台显示模板

 

    Delect()

1. 根据data_id 得到数据库中的 Data_filepath ,删除数据库中的这条记录

2. 删除Data_filepath 路径指定的 xml 文件

 

    Select_one()

1. 根据data_id 得到数据库中的 Data_filepath filepath2

2. Data_filepath 路径指定的 xml 文件数据,载入显示模板 filepath2

 

   Select_all() //得到相应分类下的数据 id title

1. 根据class_id, 从数据库服务器得到相应的 id title

 

   Update()id

1. 根据id 从数据库等到 data_filepath  data_html_filepath1

2. data_filepath 得到数据,加载模板 data_html_filepath1

3. 更改后提交

4. 重写Data_filepath 文件

要局部更改的话会很麻烦

思路:

1. 加载数据Select_one id ),显示对应的更改基本模板

2. 当某一个输入框的数据改变时,在其value 值追加 _changed 后缀,这样就标示了那些数据时变化的了(这个可以同个 js 脚本实现)

3. 搜索xml 查询更改

分类管理

Insert()

    输入分类名称,插入到数据库,选择合适的模板,将class_id 追加的模板的 <classify> 节点中

 

Delete()

1. 根据class_id 删除数据库数据,删除 xml 文件中模板中对应的 <node></node> 节点

是否级联删除该分类下的文章另说

 

Select()

1.从数据库中读取

 

Update() // 更新分类名称

1. 根据id ,想服务器数据库更新

 

模板管理

编辑模板

1. 模板id xml 中得到 html_path1  html_path2 模板文件路径 和字段数据结构,更改后,可以选择覆盖原来的和生成新的

问题:模板文件和数据xml 文件关联了,若覆盖了那么会影响原来以它为模板发布的文章

 

添加模板

1. 添加字段数据结构

2. 将相相应的两个模板文件读入,生成模板文件,将两个模板模板文件路径 和字段数据结构追加到1.xml

 

    删除模板

    根据id 删除 xml 节点

 

       查看模板

    根据id 显示两个模板文件,和哪几个分类用到了它

 

    显示所有模板的名称list

    遍历xml 文件

分享到:
评论

相关推荐

    关系型与非关系型数据库(2).docx

    - 列式存储:例如HBase和Cassandra,列式数据库优化了列的读取,减少了I/O操作,适用于数据分析和数据仓库。 - 文档型数据库:如MongoDB,以JSON、XML等文档格式存储数据,适合半结构化数据。 - 键值对数据库:如...

    XML在交互式电子技术手册创作中的应用.pdf

    本文讨论的系统采用XML文档来存储装备的技术手册信息,并使用文档类型定义(DTD:Document Type Definition)来定义XML文档中的标记,描述数据元素之间的关系,并验证文档的有效性。 装备技术手册信息大致可以分为...

    机票预订系统(源码+数据库+sql文件)

    数据库通常是MySQL或Oracle等关系型数据库管理系统,存储着航班信息、用户信息、预订记录等关键数据。 JSP技术的核心特性包括: 1. **声明式编程**:JSP页面可以包含HTML、XML或其他标记语言,开发者可以在其中...

    自定义表单设计思路.docx

    1. **图形化界面**:提供易于使用的拖拽式设计工具,降低设计门槛。 2. **数据绑定**:解决页面元素与数据库字段的映射难题。 3. **动态数据存储**:设计灵活的数据存储机制,支持不同类型数据的高效存储。 4. **表...

    SSH整合思路

    - 事务管理:SSH整合中,通常使用Spring的声明式事务管理,确保数据库操作的原子性和一致性。 - 错误处理:合理配置Struts的全局异常处理,确保程序出错时能够提供友好的错误提示。 - 性能优化:根据实际需求,...

    JSP课程设计宠物店源码+数据库+报告

    数据库部分通常会使用关系型数据库管理系统(RDBMS),如MySQL、Oracle或SQL Server,用于存储和管理宠物店相关的数据,如宠物种类、库存、用户信息、订单等。在这个项目中,可能有一个预设的数据库结构和填充的数据...

    jsp基于Web的可维护的数据库浏览器(源代码+文档).rar

    【标题】:“jsp基于Web的可维护的数据库浏览器(源代码+文档).rar”这个压缩包文件主要包含了一个使用JavaServer Pages(JSP)技术构建的Web应用,它旨在提供一个用户友好的、可维护的数据库浏览解决方案。...

    基于jsp的超市采购管理系统源码数据库.zip

    "基于jsp的超市采购管理系统源码数据库" 这个标题揭示了我们正在探讨的是一个软件开发项目,特别是一个管理系统的源代码,它应用于超市的采购流程。这个系统利用Java Server Pages(JSP)技术进行构建,同时涉及到...

    ASP.NET《数据库原理及应用技术》课程指导平台的开发(源代码+论文).rar

    这个项目的核心在于将ASP.NET的技术与数据库管理系统的理论知识相结合,为用户提供一个交互式的在线学习环境。ASP.NET的优势在于其强大的服务器控件、自动化的状态管理以及内置的安全机制,这些特性使得开发者能够...

    asp.NET的教师科研管理系统(源码+数据库).rar

    包含的数据库可能使用了SQL Server或SQLite等关系型数据库,用于存储教师的个人信息、科研项目详情、论文发表等数据。ASP.NET提供了Entity Framework等ORM工具,简化了与数据库的交互。 4. **身份验证和授权** ...

    基于ssm+mysql萌宠优购系统源码数据库.zip

    MySQL是一款开源、高性能的关系型数据库,广泛应用于Web应用。在萌宠优购系统中,MySQL用于存储商品信息、用户数据、订单记录等,其优秀的查询性能和稳定性为系统提供了可靠的数据支撑。 六、萌宠优购系统功能 1. ...

    jsp网上鲜花销售网站源码带数据库脚本

    - 该系统使用Oracle 1.0作为后台数据库,Oracle是关系型数据库管理系统,支持SQL语言进行数据操作。 - 通过Java的JDBC(Java Database Connectivity)接口,可以建立与Oracle的连接,执行SQL语句进行数据的增删改...

    基于springboot的火锅店管理系统源码数据库.doc

    - **简介**:MySQL是一个开源的关系型数据库管理系统(RDBMS),使用最常用的数据库管理语言—结构化查询语言(SQL)进行数据库管理。MySQL因其性能、可靠性和速度而广受信赖。 - **优势**: - 成熟稳定:拥有多年的...

    [计算机项目]基于java的新闻发布及管理系统系统设计与实现(项目报告+答辩PPT+源代码+数据库).zip

    可能使用的是MySQL或Oracle等关系型数据库,通过JDBC(Java Database Connectivity)接口与Java应用进行交互。SQL语句用于创建、查询、更新和删除数据。 4. **前端技术**: HTML、CSS和JavaScript用于构建用户界面。...

    LINQ To SQL在ASP.NET数据访问中的应用.pdf

    本文档的写作背景假设读者已经具备.NET编程和SQL数据库操作的基础知识,作者魏一搏和徐夏通过向导式的介绍和代码示例,旨在帮助开发者掌握如何在***应用程序中高效地使用LINQ To SQL进行数据访问和管理。整体内容...

    基于SSM+Vue的个性化影片推荐系统+数据库(Java毕业设计,包括源码,教程).zip

    MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。 **Vue.js前端框架解析:** 1. **Vue.js**:是一个用于构建用户界面的渐...

    基于springboot的计算机类考研交流平台源码数据库.docx

    - MySQL是一种开源的关系型数据库管理系统,因其性能稳定、易于使用等特点被广泛应用于各种场景。 - 本项目使用MySQL作为数据库,负责存储用户信息、帖子内容等相关数据。 3. **B/S架构简介** - B/S架构指的是...

    Struts2整合Spring Hibernate的CRUD实例

    Hibernate是一个对象关系映射(ORM)工具,简化了数据库操作。将这三者整合在一起,可以构建出高效、灵活的Web应用。 在"Struts2整合Spring Hibernate的CRUD实例"中,我们将探讨如何将这三个框架无缝集成,实现对...

    底层框架搭建

    通过XML或注解配置,Hibernate可以自动将Java对象映射到数据库表,实现数据的CRUD(Create、Read、Update、Delete)操作。此外,Hibernate支持HQL(Hibernate Query Language)和Criteria API,提供了更灵活的数据...

    Spring2.5整合JPA

    JPA则是一种标准的ORM(对象关系映射)规范,它提供了一种将Java对象模型与关系数据库进行交互的方式。 **JPA简介** JPA允许开发者使用面向对象的方式来处理数据库操作,避免了传统的SQL查询语法,提高了代码的...

Global site tag (gtag.js) - Google Analytics