Hit a interesting issue today using MariaDB with JOOQ. I have a project that can be configured to use different underlying databases depending on client requirements and I use JOOQ to simplify this for me. One of the tables are structured as follow:
Just a quick post on how to setup Dagger 2 with maven to compile without messing with eclipse settings. Just remember to include target/generated-sources to your class-path.
I have a very old project still running on Jboss 6 AS, it has been on the TODO list to write but since it is of low importance, only used internally and it just works.
Fetching strategies are used to optimize the SQL generated by Hibernate. Using Object Relational Mapping (ORM) tools does have a overhead for the all the benefits it provides but this can be reduced by understanding it.
When using a ORM like hibernate it is always a good idea to check what SQL is generated/executed. This is how you enable a log of the SQL executed on the MySQL/MariaDB server:
How to add Cross-origin resource sharing (CORS) filter to a embedded Jetty server. Jetty comes with a CORS filter that is easy to use. Add the following to you maven:
When running a private MAVEN repository via https with self-signed certificate in my case Archiva. You will run into a error when trying to upload/download artifacts.
This is a interesting issue I found using Hibernate. You have 2 independent application both using the same database. What I found that if one application submits a value to the database the second application does not see the updated/new entry. If you use direct SQL on the database the changed/new entry is visible and the same is true if you use the JDBC directly without hibernate.
If you are using docker to run MySQL/MariaDB and you are trying to connect to the database from the machine running the docker instance you could run into this error:
Something I have now seen a few times in projects is people not being aware of how ThreadPoolExecutor works. When creating a ThreadPoolExecutor you have to arguments to set minPoolSize, maxPoolSize, keepAliveTime and workQueue. Now the gotcha is in when the ThreadPoolExecutor creates a new thread for execution especially when using unbounded size Queues. For example when looking at this ThreadPoolExecutor constructor: