问题
I am having Grails GORM based application.One web service and one website both are running on different port and sharing common database and tables.
What i have done is created domain class for both application which are having same fields and domain class name.For example Registration table having userName and password fields.One can register through web service and also from website.
My current applications is working fine...but is it a feasible solution..?
Thanks,
Viral
回答1:
You could run into race/locking conditions but I've seen this done on many occasions. My only suggestion is that you not maintain separate domain classes. Put common domain classes in a plugin and install said plugin in both applications.
Another common approach I've seen that mimics your approach is deploying a customer facing app separate from the admin/cms. Both talk to the same database, they're just running in different tomcat instances.
回答2:
You can create a separate Gradle application which use GORM depenancy which only contains common domain classes. Create those classes (POJO) into src/main/groovy/bla/xyz, annotate them with
grails.gorm.annotation.Entity
This will make GORM identify your POJO as domain classes.
Build this application, publish it and use that as your dependancy into your other Grails application.
Before going all out, do try this with one single POJO class. Publish it into your local m2 repo and use it as dependancy into your grails application, check it out.
Hope this will help
来源:https://stackoverflow.com/questions/9844472/grails-one-database-and-more-than-one-application