cborm
Install
v4.x
v4.x
  • Introduction
  • Intro
    • Release History
      • What's New With 4.5.0
      • What's New With 4.4.0
      • What's new With 4.3.x
      • What's New With 4.2.0
      • What's New With 4.1.0
      • What's New With 4.0.0
    • About This Book
      • Author
  • Getting Started
    • Overview
    • Installation
    • Basic Crud - Services
    • Basic Crud - ActiveEntity
  • Base ORM Service
    • Overview
    • Service Properties
    • Concrete Services
    • Service Methods
      • Criteria Queries
        • getRestrictions
        • newCriteria
      • Creation - Population
        • new
        • populate
        • populateFromJSON
        • populateFromQuery
        • populateFromXML
      • Counters
        • count
        • countWhere
        • exists
      • Deleting Entities
        • delete
        • deleteAll
        • deleteByID
        • deleteByQuery
        • deleteWhere
      • Entity Convenience Methods
        • getDirtyPropertyNames
        • getEntityGivenName
        • getEntityMetadata
        • getKey
        • getKeyValue
        • getPropertyNames
        • getTableName
        • isDirty
        • refresh
      • Finders
        • findit
        • findOrFail
        • findByExample
        • findWhere
        • findAll
        • findAllWhere
      • Getters
        • get
        • getOrFail
        • getAll
      • ORM Session
        • clear
        • evict
        • evictCollection
        • evictQueries
        • getSessionStatistics
        • isSessionDirty
        • merge
        • sessionContains
      • Querying
        • executeQuery
        • list
      • Saving Entities
        • save
        • saveAll
      • Utility Methods
        • autoCast
        • createService
        • idCast
        • nullValue
        • when
    • Dynamic Finders+Counters
      • Method Signatures
      • Method Expressions
      • Query Options
    • Automatic Java Types
  • Virtual Services
    • Overview
    • Service Properties
    • Concrete Virtual Services
  • Active Record
    • Active Entity Overview
    • Constructor Properties
    • Usage
    • Validation
  • Criteria Queries
    • Criteria Builder
      • Getting Started
      • Restrictions
        • Value Casting
        • SQL Restrictions
      • Modifiers
      • Results
      • Associations
      • Projections & Aggregates
    • Detached Criteria Builder
      • Getting Started
      • Projections
      • Subqueries
      • DetachedSQLProjection()
      • Criterias
      • Associations
    • Help! I'm Not Getting the Result I expected!
  • Advanced Features
    • Automatic REST Crud
    • Hibernate Logging
    • Mementifier
    • ORM Events
      • Custom Event Handler
    • Unique Property Validation
Powered by GitBook
On this page
  • Some Features
  • Versioning
  • License
  • Important Links
  • Discussion & Help
  • Professional Open Source
  • HONOR GOES TO GOD ABOVE ALL

Was this helpful?

Edit on GitHub
Export as PDF

Introduction

ColdBox ORM Extensions for Hibernate

NextRelease History

Last updated 11 months ago

Was this helpful?

The cborm module is a module that will enhance your experience when working with the ColdFusion ORM powered by . It will not only enhance it with dynamic goodness but give you a fluent and human approach to working with Hibernate. Basically making working with Hibernate not SUCK!

Some Features

  • Service Layers with all the methods you could probably think off to help you get started in any project

  • Virtual service layers so you can create virtual services for any entity in your application

  • Automatic RESTFul resources handler, focus on your domain objects and business logic, not the boilerplate of REST

  • ActiveEntity our implementation of Active Record for ORM

  • Fluent queries via Hibernate's criteria and detached criteria queries with some Dynamic CFML goodness

  • Automatic transaction demarcation for save and delete operations

  • Dynamic finders and counters for expressive and fluent shorthand SQL

  • Automatic Java casting

  • Entity population from json, structs, xml, and queryies including building up their relationships

# A quick preview of some functionality

var book = new Book().findByTitle( "My Awesome Book" );
var book = new Book().getOrFail( 2 );
new Book().getOrFail( 4 ).delete();
new Book().deleteWhere( isActive:false, isPublished:false );

property name="userService" inject="entityService:User";

return userService.list();
return userService.list( asStream=true );

var count = userService.countWhere( age:20, isActive:true );
var users = userService.findAllByLastLoginBetween( "01/01/2019", "05/01/2019" );

userService
    .newCriteria()
    .eq( "name", "luis" )
    .isTrue( "isActive" )
    .getOrFail();

userService
    .newCriteria()
    .isTrue( "isActive" )
    .joinTo( "role" )
        .eq( "name", "admin" )
    .asStream()
    .list();

userService
    .newCriteria()
    .withProjections( property="id,fname:firstName,lname:lastName,age" )
    .isTrue( "isActive" )
    .joinTo( "role" )
        .eq( "name", "admin" )
    .asStruct()
    .list();

In other words, it makes using an ORM not SUCK!

Versioning

<major>.<minor>.<patch>

And constructed with the following guidelines:

  • Breaking backward compatibility bumps the major (and resets the minor and patch)

  • New additions without breaking backward compatibility bumps the minor (and resets the patch)

  • Bug fixes and misc changes bumps the patch

License

Important Links

Discussion & Help

Professional Open Source

  • Custom Development

  • Professional Support & Mentoring

  • Training

  • Server Tuning

  • Security Hardening

  • Code Reviews

HONOR GOES TO GOD ABOVE ALL

Because of His grace, this project exists. If you don't like this, then don't read it, it's not for you.

"Therefore being justified by faith, we have peace with God through our Lord Jesus Christ: By whom also we have access by faith into this grace wherein we stand, and rejoice in hope of the glory of God." Romans 5:5

Entity validation via

Includes the to produce memento states from any entity, great for producing JSON

Ability for finders and queries to be returned as Java streams using our project.

The ColdBox ORM Module is maintained under the guidelines as much as possible.Releases will be numbered with the following format:

Apache 2 License:

Code:

Issues:

ForgeBox:

The Ortus Community is the way to get any type of help for our entire platform and modules:

The ColdBox ORM Module is a professional open source software backed by offering services like:

cbValidation
Mementifier project
cbStreams
Semantic Versioning
http://www.apache.org/licenses/LICENSE-2.0
https://github.com/coldbox-modules/cbox-cborm
https://ortussolutions.atlassian.net/browse/CBORM
https://forgebox.io/view/cborm
https://community.ortussolutions.com
Ortus Solutions, Corp
Much More
Hibernate
Ortus Solutions, Corp