Skip to content

SQL DAL Maker is a generator of DTO, Model, and DAO classes to access relational databases. Target programming languages: PHP, Java, C++, Python, and Go. To generate the class, you declare it in XML meta-program.

License

Notifications You must be signed in to change notification settings

panedrone/sqldalmaker

Repository files navigation

SQL DAL Maker

About

SQL DAL Maker is a generator of DTO, Model, and DAO classes to access relational databases. Target programming languages: PHP, Java, C++, Python, and Go. To generate the class, you declare it in XML meta-program.

At the stage of code generation, the target database must exist and be available for JDBC connection. Generated code is being synchronized with the current database schema using "live" JDBC metadata.

Implemented in Java as plug-ins for Eclipse IDE and IntelliJ-Platform.

Project Docs: https://sqldalmaker.sourceforge.net

Quick Start in mp4: https://github.com/panedrone/sqldalmaker/releases/tag/latest

Hello Example

<sdm>
    <dto-class name="Message" ref="messages"/>
    <dao-class name="MessagesDao">
        <crud dto="Message"/>
        <query-list method="get_messages_like(key)" ref="get_messages_like.sql"/>
    </dao-class>
</sdm>
def generated_code_in_action():
    ds = scoped_ds()
    dao = MessagesDao(ds)
    m = Message()
    m.text = "Hello, World!"
    dao.create_message(m)
    print(m.id) # new "id" is available now
    m.text = "Hello, SDM World!"
    dao.update_message(m)
    for msg in dao.get_messages_like("hello%"):
        print(msg)
    dao.delete_message(m.id)

Demo Projects

PHP React.js
Java
C++ QtSql Qt
Python Vue.js
Go database/sql + sqlx + gorm React.js, Vue.js

About

SQL DAL Maker is a generator of DTO, Model, and DAO classes to access relational databases. Target programming languages: PHP, Java, C++, Python, and Go. To generate the class, you declare it in XML meta-program.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published