A Fully Code Integrated Dynamic DataBase Management System for the Java Platform

Overview

dynamic-database

A fully code integrated minimal database management system for Java, Scala, Kotlin or Groovy projects.

It is written in Java and can be used in any other programming language that can run on the JVM.

Since, the database is fully code integrated, this means NO other program or piece of software is needed to use it. There is no need for any installation procedure 😉 . Its just some java class reading and writing data to a file in a formatted manner.

So, All you need is either the source code or the tiny precompiled-jar

Required Java Version

If you want to use this library through the jar then you need to have at least 17 as the compilation level.

Simply, you need java 17 if you want to use this library through the jar.

How it works

Let's first understand how it works,

  • DataSetNames and Entries(i.e their values) are the building blocks
  • No Keywords are used
  • What the files contain is just the data you defined
  • Follows a small, simple & easy structure to define data

It is so simple that you can even modify the data easily within a text editor.

How Data is DEFINED

Let's take an example:

There is a file named test.data that contains this data in the following format,

>User Name
-omegaui
>Age
-19
>Location
-I live in my city
|and in my house
>Repo Info
-22
-Git
-GitHub

In this example, there are four data set names namely

"User Name" holding value "omegaui"

"Age" holding value "19"

"Location" holding multi lined value "I live in my city\nand in my house"

"Repo Info" holding values "22", "Git" and "GitHub"

The Structure followed here is as follows:

  • > defines the data set name

  • - defines the values/entries which correspond to the nearest upper data set

  • | defines a multi lined value, this character gets converted to '\n' during the read operation

Multiple Values can be defined in a single data set by adding new lines followed by a - character like in case of the "Repo Info" data set in this example.

It is useful when suppose you need to store the font information selected by the user

like:

>Editor Font
-Ubuntu Mono
-BOLD
-14

How Data is READ

We just need an object of the omegaui.dynamic.database.DataBase class to read data from this file

package test;

import omegaui.dynamic.database.DataBase;

import java.io.File;

public class Main {
    public static void main(String[] args) {
        DataBase dataBase = new DataBase(new File("test.data")); // Auto-Reads the DataBase
        dataBase.getEntriesAsString("Location").forEach(System.out::println);
    }
}

The Code above produces the following output

I live in my city
and in my house

The DataBase class has more functions to try, have a look at its documentation.

How Data is STORED

If you have a large data to store, then, instead typing each value one by one, you can utilize the DataBase class to write it to the file with correct structure.

The DataBase class not only reads the database but also it is capable of modifying it.

Lets take an example:

package test;

import omegaui.dynamic.database.DataBase;

public class Main {
    public static void main(String[] args) {
        DataBase dataBase = new DataBase(".some-data"); // Auto-Creates the file if it does n't already exists!
        dataBase.addEntry("Do you like this?","Yes!\nIts incredible.");
        dataBase.save();
    }
}

This code will generate a file called ".some-data" with the following data:

>Do you like this?
-Yes!
|Its incredible.

MORE EXAMPLES

I recommend taking a look at its documentation.

OR

See omegaide,

It is an excellent example of how you can utilize dynamic-database for your projects.

It contains multiple classes(they have a Manager.java suffix) which use omegaui.dynamic.database.DataBase to store and read user data like IDE Settings and Project Info.

You might also like...

Spring REST API for financial management, developed with Java 11, JWT for authentication, JUnit for unit testing and Oracle Database

Spring REST API for financial management, developed with Java 11, JWT for authentication, JUnit for unit testing and Oracle Database

control_financial Spring REST API for financial management, developed with Java 11, JWT for authentication, JUnit for unit testing and Oracle Database

May 27, 2022

Relational database project, PC Builder, for the Database Systems Design course.

README: Starting the Progam: This program was built and ran on the Eclipse IDE. To run, first create the database, "ty_daniel_db", using the ty_dani

Jan 6, 2022

Human Resource Management System (Java & React)

Human Resource Management System (Java & React)

🚀 HumanResourceManagementSystem 📌 Steps İş Arayanlar sisteme kayıt olabilmelidir. ✔️ İş verenler sisteme kayıt olabilmelidir. ✔️ ️ Sisteme genel iş

Sep 12, 2022

Human resource management system with java spring

Human resource management system with java spring

Pair Programming This project developed with Emin Ümüt Erarslan a.k.a 8CA5F İnsan Kaynakları Yönetim Sistemi Bu proje Engin Demiroğ' un Java-React kam

Dec 26, 2022

N-Layer Architecture human resource management system project with Java.

N-Layer Architecture human resource management system project with Java.

HRMS Project Backend N-Layer Architecture human resource management system project with Java. Report Bug · Request Feature About The Project Built Wit

Dec 26, 2022

Human Resources Management System Using React with Java

Human Resources Management System Using React with Java

File Directory Main Adapters Abstract Concretes Business Abstract Concretes Core / Utilities Regex Results Upload Data Access Abstract Entities Concre

Jul 28, 2021

Java - Backend for Human Resource Management System

HRMS (Human Resource Management System) Main Directory PostgreSQL (Heroku)Live API Java(1.8) - Spring Boot based. Dependencies: Spring Boot DevTools S

Dec 26, 2022

Event Management System - Java servlet

Event-Management-System-in-Java Event Management System - Java servlet Java Project based on JDBC, Java Servlet and Server Deployment Project Aim Deve

Nov 17, 2022

Library Management System made using java 📚

Library Management System 📚 About the project This project was made using java ☕ It uses MySQL database to store data User Interfaces made using java

Oct 18, 2021
Releases(v1.0-stable)
Owner
omega ui
Adding Feathers to Development
omega ui
Business Application Platform - no-code/low-code platform to build business applications

Orienteer What is Orienteer Orienteer is Business Application Platform: Easy creation of business applications Extendable to fit your needs Dynamic da

Orienteer 189 Dec 6, 2022
Library Management System in Java (Netbeans IDE , Mysql Database)

library_management_system_javaSwing Library Management System in Java (Netbeans IDE , Mysql Database) [+] Description About this project: Login Page:

Aditya Deshmukh 4 Dec 24, 2022
Student management system with sql database,Jsp & Java (Front end with HTML & CSS)

studentmanagementsystem Student management system with sql database,Jsp & Java (Front end with HTML & CSS) what this basically is that it integrates t

Isaac 7 Oct 3, 2022
Team 5468's 2022 FRC robot code. This code is written in Java and is based off of WPILib's Java control system and utilizes a command based system

FRC 2022 Team 5468's 2022 FRC robot code. This code is written in Java and is based off of WPILib's Java control system and utilizes a command based s

null 4 Oct 4, 2022
Apollo is a reliable configuration management system suitable for microservice configuration management scenarios.

English | 中文 Apollo - A reliable configuration management system Apollo is a reliable configuration management system. It can centrally manage the con

Apollo 27.6k Jan 5, 2023
A compact and highly efficient workflow and Business Process Management (BPM) platform for developers, system admins and business users.

Flowable (V6) Maven Central: Docker Images: License: Homepage: https://www.flowable.org/ flowable / flowəb(ə)l / a compact and highly efficient workfl

Flowable 6k Jan 7, 2023
Another fully updated version of the Homework Planner.

The Homework Planner Description This is another updated version of the homework planner, which is a simple and user-friendly application that allows

Wesley 2 Jan 17, 2022
This project archetype is a template for creating a fully functional MVC web application using Hibernate, JSTL and Bootstrap

This project archetype is a template for creating a fully functional MVC web application using Hibernate, JSTL and Bootstrap. It has an automatic database creation, auto initial load of the data, with different variety of users. It also has a checkstyle to check the proper coding of your project immediately right after you enter the code.

null 90 Oct 21, 2022
Integrated related support for Spring Boot projects

Table of Contents xyz-support 介绍 引入 当前引用Spring Boot版本 当前引用外部依赖的版本 当前已支持的服务 文件(对象存储)服务 文档服务 手册 文件(对象存储)服务 配置 使用例子 api介绍 文档服务 excel服务 配置 使用例子 api介绍 xyz-

xiaoyezi 3 Oct 20, 2021
DataCap is integrated software for data transformation, integration and visualization.

DataCap (incubator) DataCap is integrated software for data transformation, integration and visualization. Require Must-read for users: Be sure to exe

EdurtIO 184 Dec 28, 2022