Re: New Article "10 Best Java Frameworks to Use in 2021"

2021-03-09 Thread Gordan Krešić

On 09. 03. 2021. 08:29, Craig Mitchell wrote:


Too late.  Flame war!  ;P  But seriously, what's wrong with using Hibernate 
as JPA provider?  Okay, yes, there is nothing to learn, it does all its 
magic behind the scenes, but is there something better?  Or maybe using JPA 
is bad, and we go back to pure SQL?  I'm curious.


I did try various ORMs, including some for non-relational databases (but 
then it's not an ORM, but... what?) but never figured out the benefits. They 
all demo well, but when I go past most basic usage, they always felt more 
like an obstacle than a tool.


Only case where I would agree using ORM saves time are projects with high 
number of tables compared to complexity of their usage (simple SELECTs on 
hundreds or thousands of tables). But, I don't have such a project in my 
portfolio.


Can you name few other benefits? Type safety? "Compile-time checks" of SQL 
"queries"? I can see *some* benefits there, but hardly ones that justifies 
learning another, fairly complex, DSL on top of SQL.


From time to time I found a survey with question like "Which ORM do you 
use?" and there are usually low-double-digits of percentages of users who 
claim to be using "raw JDBC with SQL". It gives me hope that I'm not a lone 
lunatic, but still, 80+% of users must know *something*, right?


So, if we assume that someone already knows SQL (and it's an 'if', I know), 
what would be the benefits of using ORM of any kind?


Bonus question: I've been looking for years for a most simplistic SQL 
templating library, mainly for things like reusing WHERE clauses (i usually 
end up with fairly complex ones used in multiple queries), linking '?' with 
setters on PreparedStatements and things like that. I even wrote small lib 
because I was tired of experimenting, but I seriously doubt that I'm the 
only one with this need and would instead like to contribute to already 
existing project rather than maintain my own.


-gkresic.

--
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/21b217be-c3b1-884e-8a98-4709ae383d7b%40steatoda.com.


Re: New Article "10 Best Java Frameworks to Use in 2021"

2021-03-09 Thread Michael Conrad
JDBI3 is the answer to ORMS.

It's not an ORM. per-se :-)

And the Sql Object component allows strong typing in a much easier way.

You use annotations to define sql statements with parameters in interface
classes. Or, optionally, sql files.

https://jdbi.org/

At work I ended up converting all our DB accesses, both raw and JPA over to
JDBI3.

Here is an example:
https://github.com/CherokeeLanguage/AudioQualityVote/blob/main/audio-quality-vote-db/src/main/java/com/cherokeelessons/audio/quality/db/AudioQualityVoteDao.java


On Tue, Mar 9, 2021 at 3:10 AM Gordan Krešić 
wrote:

> On 09. 03. 2021. 08:29, Craig Mitchell wrote:
> >
> > Too late.  Flame war!  ;P  But seriously, what's wrong with using
> Hibernate
> > as JPA provider?  Okay, yes, there is nothing to learn, it does all its
> > magic behind the scenes, but is there something better?  Or maybe using
> JPA
> > is bad, and we go back to pure SQL?  I'm curious.
>
> I did try various ORMs, including some for non-relational databases (but
> then it's not an ORM, but... what?) but never figured out the benefits.
> They
> all demo well, but when I go past most basic usage, they always felt more
> like an obstacle than a tool.
>
> Only case where I would agree using ORM saves time are projects with high
> number of tables compared to complexity of their usage (simple SELECTs on
> hundreds or thousands of tables). But, I don't have such a project in my
> portfolio.
>
> Can you name few other benefits? Type safety? "Compile-time checks" of SQL
> "queries"? I can see *some* benefits there, but hardly ones that justifies
> learning another, fairly complex, DSL on top of SQL.
>
>  From time to time I found a survey with question like "Which ORM do you
> use?" and there are usually low-double-digits of percentages of users who
> claim to be using "raw JDBC with SQL". It gives me hope that I'm not a
> lone
> lunatic, but still, 80+% of users must know *something*, right?
>
> So, if we assume that someone already knows SQL (and it's an 'if', I
> know),
> what would be the benefits of using ORM of any kind?
>
> Bonus question: I've been looking for years for a most simplistic SQL
> templating library, mainly for things like reusing WHERE clauses (i
> usually
> end up with fairly complex ones used in multiple queries), linking '?'
> with
> setters on PreparedStatements and things like that. I even wrote small lib
> because I was tired of experimenting, but I seriously doubt that I'm the
> only one with this need and would instead like to contribute to already
> existing project rather than maintain my own.
>
> -gkresic.
>
> --
> You received this message because you are subscribed to the Google Groups
> "GWT Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to google-web-toolkit+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/google-web-toolkit/21b217be-c3b1-884e-8a98-4709ae383d7b%40steatoda.com
> .
>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/CAFHWztzuWPOsC2Wh%3DM4a-tGgi_tS8s-pqi9%2B9_jiS31-x9yvPg%40mail.gmail.com.


Re: New Article "10 Best Java Frameworks to Use in 2021"

2021-03-09 Thread lofid...@gmail.com
@TBroyer: of course we are going to start a flame war for Hibernate ;-)

"Hibernate" is the most searched word in Google 2021... OK, I mean "how to 
hibernate your PC" :-)

I agree with @Gordan, it depends on the use case. Strangely enough, we have 
today ORM also on Android *Room* 
(https://developer.android.com/training/data-storage/room) and iOS *Core 
Data *(https://developer.apple.com/documentation/coredata). So from the 
resources and speed point of view, it seems that they are just fine.

Actually it's a pitty that the standard *SQLJ* 
(https://en.wikipedia.org/wiki/SQLJ) did not get any further, I think it 
would be a good choice if you need SQL but need the "type and compile time" 
safety in Java.

Cheers,
Lofi
Gordan Krešić schrieb am Dienstag, 9. März 2021 um 09:11:06 UTC+1:

> On 09. 03. 2021. 08:29, Craig Mitchell wrote:
> > 
> > Too late.  Flame war!  ;P  But seriously, what's wrong with using 
> Hibernate 
> > as JPA provider?  Okay, yes, there is nothing to learn, it does all its 
> > magic behind the scenes, but is there something better?  Or maybe using 
> JPA 
> > is bad, and we go back to pure SQL?  I'm curious.
>
> I did try various ORMs, including some for non-relational databases (but 
> then it's not an ORM, but... what?) but never figured out the benefits. 
> They 
> all demo well, but when I go past most basic usage, they always felt more 
> like an obstacle than a tool.
>
> Only case where I would agree using ORM saves time are projects with high 
> number of tables compared to complexity of their usage (simple SELECTs on 
> hundreds or thousands of tables). But, I don't have such a project in my 
> portfolio.
>
> Can you name few other benefits? Type safety? "Compile-time checks" of SQL 
> "queries"? I can see *some* benefits there, but hardly ones that justifies 
> learning another, fairly complex, DSL on top of SQL.
>
> From time to time I found a survey with question like "Which ORM do you 
> use?" and there are usually low-double-digits of percentages of users who 
> claim to be using "raw JDBC with SQL". It gives me hope that I'm not a 
> lone 
> lunatic, but still, 80+% of users must know *something*, right?
>
> So, if we assume that someone already knows SQL (and it's an 'if', I 
> know), 
> what would be the benefits of using ORM of any kind?
>
> Bonus question: I've been looking for years for a most simplistic SQL 
> templating library, mainly for things like reusing WHERE clauses (i 
> usually 
> end up with fairly complex ones used in multiple queries), linking '?' 
> with 
> setters on PreparedStatements and things like that. I even wrote small lib 
> because I was tired of experimenting, but I seriously doubt that I'm the 
> only one with this need and would instead like to contribute to already 
> existing project rather than maintain my own.
>
> -gkresic.
>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/085a1566-808c-40de-b4e4-aed64ddc8bc2n%40googlegroups.com.


Re: New Article "10 Best Java Frameworks to Use in 2021"

2021-03-09 Thread Raúl Pampliega Mayoral
We are using .Net in our backend with NHibernate and i must to say that 
using Linq To Sql is very helpful and let you have all queries strong 
typed. We also have  to mantain a small part of queries with ado directly 
due to performance.

I don't think using something like Hibernate would be bad nowadays If Java 
could have something like Linq to Sql (maybe something like jOOQ).

PD: God save flame wars!!! 

El martes, 9 de marzo de 2021 a las 10:34:18 UTC+1, lofid...@gmail.com 
escribió:

> @TBroyer: of course we are going to start a flame war for Hibernate ;-)
>
> "Hibernate" is the most searched word in Google 2021... OK, I mean "how to 
> hibernate your PC" :-)
>
> I agree with @Gordan, it depends on the use case. Strangely enough, we 
> have today ORM also on Android *Room* (
> https://developer.android.com/training/data-storage/room) and iOS *Core 
> Data *(https://developer.apple.com/documentation/coredata). So from the 
> resources and speed point of view, it seems that they are just fine.
>
> Actually it's a pitty that the standard *SQLJ* (
> https://en.wikipedia.org/wiki/SQLJ) did not get any further, I think it 
> would be a good choice if you need SQL but need the "type and compile time" 
> safety in Java.
>
> Cheers,
> Lofi
> Gordan Krešić schrieb am Dienstag, 9. März 2021 um 09:11:06 UTC+1:
>
>> On 09. 03. 2021. 08:29, Craig Mitchell wrote: 
>> > 
>> > Too late.  Flame war!  ;P  But seriously, what's wrong with using 
>> Hibernate 
>> > as JPA provider?  Okay, yes, there is nothing to learn, it does all its 
>> > magic behind the scenes, but is there something better?  Or maybe using 
>> JPA 
>> > is bad, and we go back to pure SQL?  I'm curious. 
>>
>> I did try various ORMs, including some for non-relational databases (but 
>> then it's not an ORM, but... what?) but never figured out the benefits. 
>> They 
>> all demo well, but when I go past most basic usage, they always felt more 
>> like an obstacle than a tool. 
>>
>> Only case where I would agree using ORM saves time are projects with high 
>> number of tables compared to complexity of their usage (simple SELECTs on 
>> hundreds or thousands of tables). But, I don't have such a project in my 
>> portfolio. 
>>
>> Can you name few other benefits? Type safety? "Compile-time checks" of 
>> SQL 
>> "queries"? I can see *some* benefits there, but hardly ones that 
>> justifies 
>> learning another, fairly complex, DSL on top of SQL. 
>>
>> From time to time I found a survey with question like "Which ORM do you 
>> use?" and there are usually low-double-digits of percentages of users who 
>> claim to be using "raw JDBC with SQL". It gives me hope that I'm not a 
>> lone 
>> lunatic, but still, 80+% of users must know *something*, right? 
>>
>> So, if we assume that someone already knows SQL (and it's an 'if', I 
>> know), 
>> what would be the benefits of using ORM of any kind? 
>>
>> Bonus question: I've been looking for years for a most simplistic SQL 
>> templating library, mainly for things like reusing WHERE clauses (i 
>> usually 
>> end up with fairly complex ones used in multiple queries), linking '?' 
>> with 
>> setters on PreparedStatements and things like that. I even wrote small 
>> lib 
>> because I was tired of experimenting, but I seriously doubt that I'm the 
>> only one with this need and would instead like to contribute to already 
>> existing project rather than maintain my own. 
>>
>> -gkresic. 
>>
>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/c4655882-aab3-4950-b424-412cc5aa9b38n%40googlegroups.com.


Re: New Article "10 Best Java Frameworks to Use in 2021"

2021-03-09 Thread Thomas Broyer


On Tuesday, March 9, 2021 at 8:29:33 AM UTC+1 Craig Mitchell wrote:

> Indeed it's a joke, cannot be otherwise: it says you should use Hibernate 
>> in 2021! (in the conclusion, it even says you should learn it)
>> (I won't give my opinion on the others in the list, don't want to start a 
>> flame war 😉)
>>
>
> Too late.  Flame war!  ;P  But seriously, what's wrong with using 
> Hibernate as JPA provider?  Okay, yes, there is nothing to learn, it does 
> all its magic behind the scenes, but is there something better?  Or maybe 
> using JPA is bad, and we go back to pure SQL?  I'm curious.
>

Yes, JPA, not Hibernate per se.

jOOQ FTW!
(or SQLDelight; or even JDBI, or MyBatis if you prefer)

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/c096eaae-0291-4e99-a199-f7582a933514n%40googlegroups.com.


Re: New Article "10 Best Java Frameworks to Use in 2021"

2021-03-09 Thread Vegegoku
I don't like Hibernate/JPA because of the horror and terror it gave me 
during my career years. Yet 
Hibernate appeared in times when we were having a hard time dealing with 
database and SQL in java, mapping/parsing query results, or even 
constructing the queries themselves and I have seen it going wildly bad.
Hibernate then came with its benefits and problems .. (maybe too many 
problems) but it came first .. and was adopted by so many.. and it became a 
large part of Java ecosystem ..so large that you hardly find a project that 
talks to the database and not using hibernate.. (we would like to see more 
of this)
I am not sure but maybe hibernate was there around 2008 (the oldest version 
I checked in maven central) imagine by that we had JOOQ first ..or JDBI 
..or whatever suggested alternative... (I think most of them came after 
2010 checking the issue trackers on Github) .. imagine we had text blocks 
:-) way before hibernate came along.

Now you see projects using hibernate for no reason (especially with how 
easy it is being promoted by spring).. from using it for simple CRUD (can 
be replaced by one of the suggested solutions) or for the complex queries 
(which should be replaced with one of the suggested solutions) I think.

BTW,  
@Thomas you didn't start a flame war it was just a flame, I got to learn 
few things from this conversation so why not flame the rest of the list? 


On Tuesday, March 9, 2021 at 3:44:02 PM UTC+2 t.br...@gmail.com wrote:

> Main issues with JPA: the entity caches, and lazy-loading which makes 
> things work but are a PITA for performance (I've worked on a project where 
> each and every HTTP request causes between 10 and 30 SQL queries, only to 
> get the user's information and access rights; being so bad might very well 
> be caused by the app architecture too, as it also has N+1 issues on some 
> screens; but definitely JPA is to blame as well).
> (also, the Criteria API is 🤢)
>
> On Tuesday, March 9, 2021 at 10:34:18 AM UTC+1 lofid...@gmail.com wrote:
>
>> @TBroyer: of course we are going to start a flame war for Hibernate ;-)
>>
>> "Hibernate" is the most searched word in Google 2021... OK, I mean "how 
>> to hibernate your PC" :-)
>>
>> I agree with @Gordan, it depends on the use case. Strangely enough, we 
>> have today ORM also on Android *Room* (
>> https://developer.android.com/training/data-storage/room) and iOS *Core 
>> Data *(https://developer.apple.com/documentation/coredata). So from the 
>> resources and speed point of view, it seems that they are just fine.
>>
>> Actually it's a pitty that the standard *SQLJ* (
>> https://en.wikipedia.org/wiki/SQLJ) did not get any further, I think it 
>> would be a good choice if you need SQL but need the "type and compile time" 
>> safety in Java.
>>
>> Cheers,
>> Lofi
>> Gordan Krešić schrieb am Dienstag, 9. März 2021 um 09:11:06 UTC+1:
>>
>>> On 09. 03. 2021. 08:29, Craig Mitchell wrote: 
>>> > 
>>> > Too late.  Flame war!  ;P  But seriously, what's wrong with using 
>>> Hibernate 
>>> > as JPA provider?  Okay, yes, there is nothing to learn, it does all 
>>> its 
>>> > magic behind the scenes, but is there something better?  Or maybe 
>>> using JPA 
>>> > is bad, and we go back to pure SQL?  I'm curious. 
>>>
>>> I did try various ORMs, including some for non-relational databases (but 
>>> then it's not an ORM, but... what?) but never figured out the benefits. 
>>> They 
>>> all demo well, but when I go past most basic usage, they always felt 
>>> more 
>>> like an obstacle than a tool. 
>>>
>>> Only case where I would agree using ORM saves time are projects with 
>>> high 
>>> number of tables compared to complexity of their usage (simple SELECTs 
>>> on 
>>> hundreds or thousands of tables). But, I don't have such a project in my 
>>> portfolio. 
>>>
>>> Can you name few other benefits? Type safety? "Compile-time checks" of 
>>> SQL 
>>> "queries"? I can see *some* benefits there, but hardly ones that 
>>> justifies 
>>> learning another, fairly complex, DSL on top of SQL. 
>>>
>>> From time to time I found a survey with question like "Which ORM do you 
>>> use?" and there are usually low-double-digits of percentages of users 
>>> who 
>>> claim to be using "raw JDBC with SQL". It gives me hope that I'm not a 
>>> lone 
>>> lunatic, but still, 80+% of users must know *something*, right? 
>>>
>>> So, if we assume that someone already knows SQL (and it's an 'if', I 
>>> know), 
>>> what would be the benefits of using ORM of any kind? 
>>>
>>> Bonus question: I've been looking for years for a most simplistic SQL 
>>> templating library, mainly for things like reusing WHERE clauses (i 
>>> usually 
>>> end up with fairly complex ones used in multiple queries), linking '?' 
>>> with 
>>> setters on PreparedStatements and things like that. I even wrote small 
>>> lib 
>>> because I was tired of experimenting, but I seriously doubt that I'm the 
>>> only one with this need and would instead like to contribute to alrea

Re: New Article "10 Best Java Frameworks to Use in 2021"

2021-03-09 Thread Douglas de Oliveira Mendes
I wouldn't say you don't have to learn anything because it does magic. I
like hibernate to keep code clean but gotta know what's going on to keep
performance fine and get rid of concurrency issues, overwriting data..

Em ter., 9 de mar. de 2021 04:29, Craig Mitchell 
escreveu:

> Indeed it's a joke, cannot be otherwise: it says you should use Hibernate
>> in 2021! (in the conclusion, it even says you should learn it)
>> (I won't give my opinion on the others in the list, don't want to start a
>> flame war 😉)
>>
>
> Too late.  Flame war!  ;P  But seriously, what's wrong with using
> Hibernate as JPA provider?  Okay, yes, there is nothing to learn, it does
> all its magic behind the scenes, but is there something better?  Or maybe
> using JPA is bad, and we go back to pure SQL?  I'm curious.
>
> --
> You received this message because you are subscribed to the Google Groups
> "GWT Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to google-web-toolkit+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/google-web-toolkit/ab5682c8-8547-40cc-b687-df492ebbadc5n%40googlegroups.com
> 
> .
>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/CADkeT6oyc7AqM_A1NyFjSNKrdKc-suKQZQr%3DRSitbCi%2BZReiOA%40mail.gmail.com.


Re: New Article "10 Best Java Frameworks to Use in 2021"

2021-03-09 Thread Thomas Broyer


On Tuesday, March 9, 2021 at 4:10:44 PM UTC+1 aka...@gmail.com wrote:

> BTW,  
> @Thomas you didn't start a flame war it was just a flame, I got to learn 
> few things from this conversation so why not flame the rest of the list? 
>

Really? Let's go.

Spring: I think the thing I dislike the most about Spring is what many 
people like about it: it's an entire, wide, and fat, ecosystem. You can 
hardly use one piece of Spring without using everything else; I mean, each 
Spring piece builds on top of another Spring piece, so it's basically an 
all-or-nothing. I also fear that people doing mostly Spring won't know how 
to do things without it (like most big/fat framework actually). I'm a 
no-framework guy; I think each library should be usable on its own (good 
for it if it provides adapters to make it easier to use within a particular 
framework, I won't care), and Spring is the exact opposite.

Maven: well, Maven is so utterly broken as a scalable build tool… They're 
finally talking about Maven 4 bringing breaking changes to the "build POM" 
(as opposed to the "deployed POM" you use from repositories), but as long 
as they'll keep that linear lifecycle, and project model being mutable (and 
mutated!) during build execution, it'll be a big no-go for me. If you need 
to learn one build tool, let it be Gradle, not Maven.
(fwiw, I'm migrating all projects at work from Maven to Gradle; I'm being 
*asked* to migrate them, because it makes things so much more usable and 
enjoyable!)

Mockito: well, most of the time, you shouldn't use mocks. If you *need* mocks, 
it generally says more about the structure and testability of your code 
than the readability of your tests. Of all mocking tools, indeed Mockito is 
likely the best, but it's the kind of tools you shouldn't be reaching for 
to being with.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/b01b3294-2289-400f-83d7-8c9fe6adf275n%40googlegroups.com.


Re: New Article "10 Best Java Frameworks to Use in 2021"

2021-03-09 Thread Gordan Krešić

On 09. 03. 2021. 17:28, Thomas Broyer wrote:


Spring: I think the thing I dislike the most about Spring is what many 
people like about it: it's an entire, wide, and fat, ecosystem. You can 
hardly use one piece of Spring without using everything else; I mean, each 
Spring piece builds on top of another Spring piece, so it's basically an 
all-or-nothing. I also fear that people doing mostly Spring won't know how 
to do things without it (like most big/fat framework actually). I'm a 
no-framework guy; I think each library should be usable on its own (good for 
it if it provides adapters to make it easier to use within a particular 
framework, I won't care), and Spring is the exact opposite.


Besides being a kitchen sink, it's also very slow. We can argue about speed 
of Spring layer in an app having database and network stacks, but comparing 
just that one layer with non-Spring code may result in 10x difference in 
throughput (not 10%, but 10x - order of magnitude).


If anyone is interested in details, here is sample test case I put to demo 
this (it was a bet :) ):


https://github.com/gkresic/muddy-waters

"Whale" is the way we are building things past few years, but Shark may be 
interesting if you are considering microservices. Notice that Whale is 
feature-comparable to Megalodon (Spring), yet 3-4 times faster (and provides 
interchangeable libs, as you pointed out).


Relevant fact: prior to that test I had zero experience with Rapidoid and 
DSL-JSON - I found them simply by googling "fast java [ (rest server) (JSON) 
]". Also, I had verly limited (and outdated) experiece with Spring. Yet, 
both are implemented in only few lines of code, but they differ an order of 
magnitude in speed.


-gkresic.

--
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/f634d87b-da9d-918f-ed8a-50fe73fdb3b8%40steatoda.com.


Re: New Article "10 Best Java Frameworks to Use in 2021"

2021-03-09 Thread Thomas Broyer
Using a similar approach to your "whale" for 8 years or so too.
We add to that Lightbend Config and Picocli (after having tested args4j and 
jcommander), and jOOQ then indeed.
Using RestEASY or GraphQL-Java depending on needs, along with 
Handlebars-java and/or Jackson.
But I know I can easily switch from Jetty to Tomcat or Undertow or 
whatever, from RestEASY to Jersey (I've actually done the reverse, because 
integrating with Guice was hard at the time), from Guice to Dagger or H2 or 
whatever, from Jackson to Moshi or GSON, etc.
And more importantly, we copy/paste/adapt a couple files that glue those 
things together (Jetty with RestEASY and static files serving, RestEASY and 
Guice, etc.) from projects to projects, rather than packaging them into a 
lib that would try to be generic: patterns over frameworks.

On Tuesday, March 9, 2021 at 5:47:03 PM UTC+1 Gordan Krešić wrote:

> On 09. 03. 2021. 17:28, Thomas Broyer wrote:
> > 
> > Spring: I think the thing I dislike the most about Spring is what many 
> > people like about it: it's an entire, wide, and fat, ecosystem. You can 
> > hardly use one piece of Spring without using everything else; I mean, 
> each 
> > Spring piece builds on top of another Spring piece, so it's basically an 
> > all-or-nothing. I also fear that people doing mostly Spring won't know 
> how 
> > to do things without it (like most big/fat framework actually). I'm a 
> > no-framework guy; I think each library should be usable on its own (good 
> for 
> > it if it provides adapters to make it easier to use within a particular 
> > framework, I won't care), and Spring is the exact opposite.
>
> Besides being a kitchen sink, it's also very slow. We can argue about 
> speed 
> of Spring layer in an app having database and network stacks, but 
> comparing 
> just that one layer with non-Spring code may result in 10x difference in 
> throughput (not 10%, but 10x - order of magnitude).
>
> If anyone is interested in details, here is sample test case I put to demo 
> this (it was a bet :) ):
>
> https://github.com/gkresic/muddy-waters
>
> "Whale" is the way we are building things past few years, but Shark may be 
> interesting if you are considering microservices. Notice that Whale is 
> feature-comparable to Megalodon (Spring), yet 3-4 times faster (and 
> provides 
> interchangeable libs, as you pointed out).
>
> Relevant fact: prior to that test I had zero experience with Rapidoid and 
> DSL-JSON - I found them simply by googling "fast java [ (rest server) 
> (JSON) 
> ]". Also, I had verly limited (and outdated) experiece with Spring. Yet, 
> both are implemented in only few lines of code, but they differ an order 
> of 
> magnitude in speed.
>
> -gkresic.
>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/675fdd9a-3745-46c5-a2e0-b9843c5d1c25n%40googlegroups.com.


Re: New Article "10 Best Java Frameworks to Use in 2021"

2021-03-09 Thread Craig Mitchell
I was ready to dislike Spingboot, because of its all encompassing nature.  
But it just works, and works well.

Unlike Maven, grrr, Maven.

Most informative flame war I've been in.  Thanks all, I've learnt a lot.  :)

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/e73a59ba-c887-477e-bcf7-1f5906b6622en%40googlegroups.com.


Re: New Article "10 Best Java Frameworks to Use in 2021"

2021-03-09 Thread Craig Mitchell
Also now switching from JPA (Hibernate), to jOOQ.  As, while our DB is 
(currently) fairly simple, it needs to be as fast as possible.  So, thanks 
again!  :)

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/09e86967-dec8-4c3a-a919-d439c31fbec9n%40googlegroups.com.