CN104462605B - 一种数据库持久层框架配置、修改方法及系统 - Google Patents

一种数据库持久层框架配置、修改方法及系统 Download PDF

Info

Publication number
CN104462605B
CN104462605B CN201410855188.8A CN201410855188A CN104462605B CN 104462605 B CN104462605 B CN 104462605B CN 201410855188 A CN201410855188 A CN 201410855188A CN 104462605 B CN104462605 B CN 104462605B
Authority
CN
China
Prior art keywords
data
service condition
module
business
layer frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410855188.8A
Other languages
English (en)
Other versions
CN104462605A (zh
Inventor
佘健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Maipu Communication Technology Co Ltd
Original Assignee
Maipu Communication Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Maipu Communication Technology Co Ltd filed Critical Maipu Communication Technology Co Ltd
Priority to CN201410855188.8A priority Critical patent/CN104462605B/zh
Publication of CN104462605A publication Critical patent/CN104462605A/zh
Application granted granted Critical
Publication of CN104462605B publication Critical patent/CN104462605B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及JAVA应用软件与数据库的交互技术。本发明公开了一种数据库持久层框架配置、修改方法及系统。本发明的配置方法包括步骤:a、获取业务状态锁;b、调用js脚本文件;c、根据数据动态形成sql语句;d、以所述sql语句为参数,操作数据库完成数据访问,返回数据库操作结果;e、根据数据库返回结果进行后续业务操作;f、释放业务状态锁,完成配置。本发明同时公开了数据库持久层框架修改方法及和系统。本发明极大的提高系统可用性,由于动态化加载执行,可随时修改配置文件而无需重启应用,故客户的体验度,产品的稳定性能指标都将大大提高。

Description

一种数据库持久层框架配置、修改方法及系统
技术领域
本发明涉及JAVA(一种程序设计语言)应用软件与数据库的交互技术,尤其涉及一种基于动态js(javascript)扩展的ORM(Object/Relation Mapping)关系映射的数据库持久层框架配置、修改方法及系统。
背景技术
数据库访问技术一直以来都是应用软件领域最常用的技术。是一个业务和数据之间的中间件技术,其框架大大小小很多,包括开源社区框架、个人贡献框架、商业应用软件等,其目的就是实现内存模型与数据库表关系模型之间的相互关系映射,封装和实际业务关联不强的不变化部分,避免开发人员直接使用JDBC代码访问数据库带来的巨大开发量,直接通过它实现业务数据同数据库的访问、存储。目前的数据库持久层框架都是基于xml文件,静态加载配置文件执行的方式,其特点是首次加载,后续直接使用。其框架技术核心原理都是通过配置文件实现同数据库表之间的关系映射,并通过java反射API(ApplicationProgramming Interface)自动将表数据转换为pojo(javaBean)对象,供业务逻辑直接使用(反之亦然),减少了软件开发人员手动写JDBC(Java Data Base Connectivity)访问数据库的工作量,提高工作效率。
现有技术的主要缺点是,程序运行时无法动态更改,修改后需要重新编译重启服务方可生效,其灵活性和可扩展性不强。
发明内容
本发明的目的就是提供一种数据库持久层框架配置方法,解决动态加载配置文件,实现应用逻辑的动态运行可修改性,提高程序的灵活度及业务可定制度。
为实现上述目的,本发明采用的技术方案是,一种数据库持久层框架配置方法,包括以下步骤:
a、获取业务状态锁;
b、调用js脚本文件;
c、根据数据动态形成sql语句;
d、以所述sql语句为参数,操作数据库完成数据访问,返回数据库操作结果;
e、根据数据库返回结果进行后续业务操作;
f、释放业务状态锁,完成配置。
所述步骤a中,如获取业务状态锁失败,返回错误。
所述步骤b中,通过js脚本引擎调用js脚本文件。
本发明还提供了一种数据库持久层框架调整方法,当业务发生变化,需要进行调整时,执行以下步骤:
a、获取业务状态锁;
b、根据业务修改需要调整js脚本文件;
c、根据预设规则判断是否需要手工介入,是则进行手动调整进入步骤d,否则直接进入步骤d;
d、释放业务状态锁,完成修改。
所述步骤a中,如获取业务状态锁失败,返回错误。
本发明的另一个目标是提供一种数据库持久层框架系统,包括业务获取模块、脚本调用模块、语句形成模块、数据操作模块、数据封装模、状态释放模块;
所述业务获取模块,用于获取业务状态锁;
所述脚本调用模块,用于调用js脚本文件;
所述语句形成模块,用于根据数据动态形成sql语句;
所述数据操作模块,用于以所述sql语句为参数,操作数据库完成数据访问,返回数据库操作结果;
所述数据封装模块,用于根据数据库返回结果进行后续的业务操作;
所述状态释放模块,用于释放业务状态锁。
所述业务获取模块,进一步用于,如获取业务状态锁失败,返回错误。
所述脚本调用模块,具体用于通过js脚本引擎调用js脚本文件。
所述系统还包括业务修改模块,所述业务修改模块用于获取业务状态锁,根据业务修改需要调整js脚本文件,根据预设规则判断是否需要手工介入,是则进行手动调整,否则释放业务状态锁,完成业务修改。
所述业务修改模块,进一步用于如获取业务状态锁失败,返回错误。
本发明的有益效果是,极大的提高系统可用性,由于动态化加载执行,可随时修改配置文件而无需重启应用,故客户的体验度,产品的稳定性能指标都将大大提高。具有良好的可扩展性,可通过修改js sql配置文件的方式动态的修改业务逻辑,实现不同的算法逻辑,无限支持需求的变化性和业务逻辑的可定制性。具有高效性,js脚本配置文件简洁、条目清晰,无需遵循xml文件繁琐的配置和规则,对开发、维护来说都可提高其效率。
附图说明
图1是实施例配置方法流程示意图;
图2是实施例修改方法流程示意图;
图3是实施例系统结构示意图。
具体实施方式
下面结合附图及实施例,详细描述本发明的技术方案。
本发明的实现基础是JDK 1.6提供的js脚本引擎,通过这个脚本引擎API,可实现JAVA后台逻辑直接访问js文件的内容,并可实现将后台数据直接推送至js文件,实现js文件操作后台逻辑数据的功能,基于此交互技术,通过脚本引擎的推送功能将后台动态业务数据推送至js sql配置文件以生成动态sql语句供业务逻辑调用。js配置文件可动态修改,无需编译、无需重启,修改后保存即可实现同后台逻辑直接交互,实现动态可扩展性。
实施例
本例数据库持久层框架配置方法流程如图1所述,包括如下步骤:
步骤S1、获取业务状态锁;如获取业务状态锁失败,返回错误。
步骤S2、通过js脚本引擎调用js脚本文件。
步骤S3、根据数据动态形成sql语句。
步骤S4、以所述sql语句为参数,操作数据库完成数据访问,返回数据库操作结果。
步骤S5、根据数据库返回结果进行后续业务操作。
步骤S6、释放业务状态锁,完成配置。
本例数据库持久层框架修改方法流程如图2所述,包括如下步骤:
步骤R1、获取业务状态锁,如获取失败,返回错误,如成功,执行步骤R2。
步骤R2、根据业务修改需要调整js脚本文件。
步骤R3、根据预设规则判断是否需要手工介入,如是,则进入步骤R4进行手动调整,否则进入步骤R5。
步骤R5、释放业务状态锁,完成修改。
本例系统结构如图3所示,包括业务获取模块、脚本调用模块、语句形成模块、数据操作模块、数据封装模、状态释放模块;
所述业务获取模块用于获取业务状态锁,如获取业务状态锁失败,返回错误。
所述脚本调用模块用于通过js脚本引擎调用js脚本文件。
所述语句形成模块用于根据数据动态形成sql语句。
所述数据操作模块用于以所述sql语句为参数,操作数据库完成数据访问,返回数据库操作结果;
所述数据封装模用于根据数据库返回结果进行后续的业务操作;
如图3所示本例系统还包括业务修改模块,所述业务修改模块用于获取业务状态锁,如获取业务状态锁失败,返回错误。如获取了业务状态锁,则根据业务修改需要调整js脚本文件,并根据预设规则判断是否需要手工介入,是则进行手动调整,否则释放业务状态锁,完成业务修改。
在本发明实施例中,系统在运行时可在线进行业务修改。

Claims (8)

1.一种数据库持久层框架配置方法,其特征在于,包括以下步骤:
a、获取业务状态锁;
b、通过js脚本引擎调用js脚本文件,将动态业务数据推送到js sql配置文件以动态形成sql语句;
c、以所述sql语句为参数,操作数据库完成数据访问,返回数据库操作结果;
d、根据数据库返回结果进行后续业务操作;
e、释放业务状态锁,完成配置。
2.根据权利要求1所述的数据库持久层框架配置方法,其特征在于,所述步骤a中,如获取业务状态锁失败,返回错误。
3.一种数据库持久层框架调整方法,其特征在于,当业务发生变化,需要进行调整时,执行以下步骤:
a、获取业务状态锁;
b、根据业务修改需要调整js脚本文件;
c、根据预设规则判断是否需要手工介入,如是,则进行手动调整进入步骤d,否则直接进入步骤d;
d、释放业务状态锁,完成修改。
4.根据权利要求3所述的数据库持久层框架调整方法,其特征在于,所述步骤a中,如获取业务状态锁失败,返回错误。
5.一种数据库持久层框架系统,其特征在于,包括业务获取模块、脚本调用模块、语句形成模块、数据操作模块、数据封装模块、状态释放模块;
所述业务获取模块,用于获取业务状态锁;
所述脚本调用模块,用于通过js脚本引擎调用js脚本文件;
所述语句形成模块,用于将动态业务数据推送到js sql配置文件以动态形成sql语句;
所述数据操作模块,用于以所述sql语句为参数,操作数据库完成数据访问,返回数据库操作结果;
所述数据封装模块,用于根据数据库返回结果进行后续的业务操作;
所述状态释放模块,用于释放业务状态锁。
6.根据权利要求5所述的一种数据库持久层框架系统,其特征在于,所述业务获取模块进一步用于,如获取业务状态锁失败,返回错误。
7.根据权利要求5所述的一种数据库持久层框架系统,其特征在于,所述系统还包括业务修改模块,所述业务修改模块用于获取业务状态锁,根据业务修改需要调整js脚本文件,根据预设规则判断是否需要手工介入,是则进行手动调整,否则释放业务状态锁,完成业务修改。
8.根据权利要求7所述的一种数据库持久层框架系统,其特征在于,所述业务修改模块进一步用于如获取业务状态锁失败,返回错误。
CN201410855188.8A 2014-12-31 2014-12-31 一种数据库持久层框架配置、修改方法及系统 Active CN104462605B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410855188.8A CN104462605B (zh) 2014-12-31 2014-12-31 一种数据库持久层框架配置、修改方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410855188.8A CN104462605B (zh) 2014-12-31 2014-12-31 一种数据库持久层框架配置、修改方法及系统

Publications (2)

Publication Number Publication Date
CN104462605A CN104462605A (zh) 2015-03-25
CN104462605B true CN104462605B (zh) 2019-03-26

Family

ID=52908640

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410855188.8A Active CN104462605B (zh) 2014-12-31 2014-12-31 一种数据库持久层框架配置、修改方法及系统

Country Status (1)

Country Link
CN (1) CN104462605B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107463391B (zh) * 2016-06-03 2020-11-10 阿里巴巴集团控股有限公司 任务处理方法、装置及设备
CN111158646A (zh) * 2019-12-17 2020-05-15 广西交通设计集团有限公司 一种sql轻量化持久层框架及配置方法
CN112506481A (zh) * 2020-12-01 2021-03-16 数字广东网络建设有限公司 业务数据交互方法、装置、计算机设备和存储介质
CN114089979A (zh) * 2021-11-29 2022-02-25 中国联合网络通信集团有限公司 持久层代码更新方法、系统、终端设备及计算机存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6421674B1 (en) * 2000-02-15 2002-07-16 Nortel Networks Limited Methods and systems for implementing a real-time, distributed, hierarchical database using a proxiable protocol
CN1265309C (zh) * 2002-10-30 2006-07-19 华为技术有限公司 一种通过协议代理方式访问数据库的方法
CN101840335A (zh) * 2010-04-16 2010-09-22 广州白云国际机场股份有限公司 一种可配置业务模块的J2EE web应用系统
CN102521266A (zh) * 2011-11-18 2012-06-27 深圳中兴网信科技有限公司 一种实现Javascript文件动态压缩与合并方法
CN103942228B (zh) * 2013-01-23 2018-09-07 北京京东尚科信息技术有限公司 规则引擎、计算方法、业务系统及调用方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"开放业务平台MasterSP";许艳丽;《中国优秀硕士学位论文全文数据库 信息科技辑》;20110315;第23-25页

Also Published As

Publication number Publication date
CN104462605A (zh) 2015-03-25

Similar Documents

Publication Publication Date Title
CN107491485B (zh) 生成执行计划的方法、计划单元装置和分布式NewSQL数据库系统
US10942915B2 (en) Method and apparatus for database
US9904522B2 (en) Web development system
CN104462605B (zh) 一种数据库持久层框架配置、修改方法及系统
US20150026691A1 (en) Task scheduling based on dependencies and resources
US8046373B2 (en) Structured parallel data intensive computing
CN109284184A (zh) 一种基于容器化技术的分布式机器学习平台的搭建方法
CN108874650A (zh) 一种持续集成自动化测试方法
CN108369591B (zh) 用于缓存和参数化ir的系统和方法
CN104133772A (zh) 一种自动生成测试数据的方法
US11341132B2 (en) Generating a producer-driven execution plan from a consumer-driven iterator-based execution plan
US10394805B2 (en) Database management for mobile devices
CN106484394A (zh) 一种双引擎快速软件开发系统
CN109408493A (zh) 一种数据源的迁移方法及系统
US9063753B2 (en) Scripting framework for business objects
Aceto et al. Decision support for mobile cloud computing applications via model checking
CN112463135A (zh) 代码生成方法、代码生成器、电子设备及存储介质
US20150106796A1 (en) Class loading device for a java runtime environment, cluster system and method of executing a function
CN113806429A (zh) 基于大数据流处理框架的画布式日志分析方法
CN113094039B (zh) 一种基于数据库表的代码自动生成系统
CN105653334B (zh) 一种基于saas模式的mis系统快速开发框架
CN105630489A (zh) 数据处理方法和数据处理装置
CN106681781A (zh) 实时计算业务的实现方法和系统
US20130346845A1 (en) Interactive multi device in memory form generation
CA2904244C (en) Method, apparatus and system for generating software

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 610041 15-24 floor, 1 1 Tianfu street, Chengdu high tech Zone, Sichuan

Applicant after: MAIPU COMMUNICATION TECHNOLOGY Co.,Ltd.

Address before: 610041 Maple tower, 16 Hing Hing Road, nine High-tech Zone, Chengdu, Sichuan

Applicant before: MAIPU COMMUNICATION TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: 610041 nine Xing Xing Road 16, hi tech Zone, Sichuan, Chengdu

Patentee after: MAIPU COMMUNICATION TECHNOLOGY Co.,Ltd.

Address before: 610041 15-24 floor, 1 1 Tianfu street, Chengdu high tech Zone, Sichuan

Patentee before: MAIPU COMMUNICATION TECHNOLOGY Co.,Ltd.