Spring = DI/IoC framework
Spring Boot = spring + magic instantiation stuff so just adding dependencies makes them instantiate as beans.
Spring Boot is awesome when it works, but hell to debug when it doesn't. Plain old Spring isn't so bad as you can more easily find out what's going on (and if something is missing it's usually obvious why).
same
I've been reading
https://www.marcobehler.com/
Check the Spring Guides, they give you a better perspective to not just be a codemonkey copy & pasting from SO and Baeldung
Next I'm planning on just following a crash course on YouTube
And perhaps later ask my employer to buy me the course from VMWare themselves
Been learning it recently.
At first I thought this was the most convoluted bullshit I'd ever seen.
But after uses it for a bit I'm starting to realize the "magic" behind it.
They definitely need better teaching information with all the annotations and shit though. Its not difficult to learn, just inaccessible.
>Its not difficult to learn, just inaccessible
this is my gripe with Java ecosystem, most docs are written for people that have been programming in Java since the 90s and assume you have all that knowledge since then.
It's never accessible for new programmers, we need to understand WHY have you come up with this abstraction, what problems is it trying to solve.
Isn't bad, however is a bit heavyweight for small projects. Do you know about any alternative framework for smaller projects? What do you think about Javalin?
I use Spark Java (Javalin's predecessor) at work and it's lovely, very lightweight and let's you compose very custom solutions. Javalin seems like a direct improvement on top of Spark Java. I plan on using it in my next project with Kotlin and suggested to my boss to migrate our codebases to Javalin in Q4.
By the way, Spark Java is not to be confused with Apache Spark. I'm talking about his:
http://sparkjava.com/
I recommend going with Javalin, since it has a little bit more features and it's still maintained, while Spark has been somewhat abandoned since 2019.
By the way, Spark Java is not to be confused with Apache Spark. I'm talking about his:
http://sparkjava.com/
I recommend going with Javalin, since it has a little bit more features and it's still maintained, while Spark has been somewhat abandoned since 2019.
Thanks, anon
>create simple framework to replace old bloated ones >eventually grow into such a fricking monstrosity you need a framework to work with the framework
javagays are mentally ill
Most of Spring's bloat comes from supporting legacy Enterprise stuff.
thought it was a bootloader, was going to reply with "based" to everyone in the thread and distribute mad upcummies, but no, its java microservices webshit reinventing the wheel the 7th time this year
Spring is way older than many JS frameworks, not only is older than Rails, it was forked from a project arguably as old as Ruby. Isn't that bad but supporting a lot of old enterprise cruft in order to get sponsored hurts it.
Quarkus is somewhat like Spring except it picks up on established apis like java ee and microprofile and it is architectured for cloud deployment with super fast startup times and low memory footprint. Can compile to native with graalvm for serverless.
Can i build crappy MVC stuff with it or is it mostly microservices based? I don't mind rolling some code of my own as long as i donlt have to fight too much against the framework.
>create simple framework to replace old bloated ones >eventually grow into such a fricking monstrosity you need a framework to work with the framework
javagays are mentally ill
Alright, I'm interested. Since you seem to have experience with it, how fast I can build something that: >takes a pdf and parses it >saves parsed data >used data to build another pdf with different layout >spits out new pdf to the user
Needs user authentication too, obviously.
2 years ago
Anonymous
2 - 2.5 hrs max
And no, I didn't pull this number out of my ass.
Adding a model, view, and controller set is as easy as typing a single command.
Auth is built in. So is ORM.
2 years ago
Anonymous
>And no, I didn't pull this number out of my ass.
I believe you. >So is ORM
Is it optional, though? I prefer to map rows myself.
2 years ago
Anonymous
Nearly everything in spring is optional.
2 years ago
Anonymous
Yes it is optional but I'd suggest that you try out ActiveRecord once, you may never leave it.
ahh MVC, a game changer
Yes it was a game changer when it came out and it is still a game changer today.
The MVC design pattern makes decent developers out of literal morons.
2 years ago
Anonymous
>Yes it is optional
Alright. >I'd suggest that you try out ActiveRecord once, you may never leave it.
Noted, will do it.
Well if it's that fast and easy it won't hurt to try it out.
thought it was a bootloader, was going to reply with "based" to everyone in the thread and distribute mad upcummies, but no, its java microservices webshit reinventing the wheel the 7th time this year
all the frameworks sucks balls except Express JS, I took it for granted and now my company has switched to .net and this framework is a hell hole, I am not sure how much does Micoshit pays for stack overflow to lie about their framework and tools.
>the equivalent of ASP.NET is Spring MVC
That's not true. ASP.NET is not one thing. There's ASP.NET WebAPI that's the equivalent of Spring Boot. ASP.NET Webapp and MVC which is like MVC. ASP.NET gRPC for gRPC services, ASP.NET Minimal API for microservices. ASP.NET Worker for things like an email service or a simple background process.
>What is the difference between Spring Boot and ASP.NET?
ASP.NET Web API is the equivalent of Spring Boot in dotnet. There aren't a lot of differences. Spring has probably more job offers. ASP.NET is easier to use, more performant and based upon the use of async/await and the Task Parralel Library for Coroutines.
>Let's talk about Spring Boot
If you insist. Spring is the shittiest framework of the shittiest language which makes it shittier than Java itself. If you insist on being a Javajeet use Quarkus. If you want to become an honorary white man and purge the pajeet in you use Go, the KING of distributed systems.
kek I started a project with Spring Boot because Java is my main, but eventually re-wrote it in JavaScript, then TypeScript. For web shit, so much of the useful libraries are TypeScript now. For example, when I wanted to integrate other webapps via oath2, all of those webapps already had oath2 connectors written as JS/TS libraries, some had it for Python, but none for Java. After spending 2 days traversing the Spring Security learning curve, and making no progress (it's so insanely complicated to do a simple thing, so many service classes, config classes, and domain objects to be aware of), I just re-wrote the backend in JavaScript and achieved oath2 connectivity in just a few lines of code. Wanting code completion, I turned to JSDoc, but ran into limitations, so just bit the bullet and learned TypeScript. Holy. Shit. Best decision I've made in my technical learning in many years. It's easily my favorite language now. Once you get the toolchain figured out, it's cake.
tl;dr - I recommend a different tech stack entirely, Java is a bit long in the tooth and nobody builds connectors for it anymore, so you'll be doing a lot of extra work and learning tertiary Spring frameworks to cope.
>when I wanted to integrate other webapps via oath2, all of those webapps already had oath2 connectors written as JS/TS libraries, some had it for Python, but none for Java.
I stopped reading here. I'm not a Java dev. I'm a dotnet c# dev but i know that if something is available in dotnet, then it must be available in Java because the latter has a bigger ecosystem and oauth has been a fully managed thing in .NET since it became a thing.
[...]
All major langs/frameworks have oauth2 connectors for anything relevant
Yes in fact, I even stated the exact framework in the Spring ecosystem which handles oath2. It seems you've entirely misunderstood the post I wrote. I'm referring to the pre-built oath2 client libraries distributed by companies who build the webapps I want to connect to. It's much easier to use the client library than to roll it yourself using Spring Security.
This board is full of morons, no wonder I stopped posting here.
>I'm referring to the pre-built oath2 client libraries distributed by companies who build the webapps I want to connect to
Example?
2 years ago
Anonymous
>Example?
Sure one of many:
https://develop.battle.net/documentation/guides/using-oauth
As you can see, they have client libraries for Ruby and Node, but not Java. If you want, you could use Spring Security, but it will require non-trivial configuration.
2 years ago
Anonymous
>battle.net
First, never heard of that shit. Second, they only have two client libraries and one of them is for fricking Ruby of all languages. If they have one for Ruby and not Java, Python and PHP, it's them who are moronic. Most vendors will port to Java, Python and PHP before thinking of Ruby. And if Spring Security works like Identity Framework Core it should be piss easy to work with it.
2 years ago
Anonymous
[...]
You don't need a custom client made by blizzard. Just your client id, client secret and token url. With those informations you can create an ouath2 client in the spring context.
Nta in the fact Typescript is better for most web based shit but what you want to achieve isn't that hard on Spring.
>but it's so easy >(code snippet omitted)
2 years ago
Anonymous
>battle.net
First, never heard of that shit. Second, they only have two client libraries and one of them is for fricking Ruby of all languages. If they have one for Ruby and not Java, Python and PHP, it's them who are moronic. Most vendors will port to Java, Python and PHP before thinking of Ruby. And if Spring Security works like Identity Framework Core it should be piss easy to work with it.
You don't need a custom client made by blizzard. Just your client id, client secret and token url. With those informations you can create an ouath2 client in the spring context.
>This board is full of morons, no wonder I stopped posting here.
Sorry for saying this, it was very rude, and you guys don't seem like morons, I'm just frustrated. Have a nice day, time for a break for me
>when I wanted to integrate other webapps via oath2, all of those webapps already had oath2 connectors written as JS/TS libraries, some had it for Python, but none for Java.
I stopped reading here. I'm not a Java dev. I'm a dotnet c# dev but i know that if something is available in dotnet, then it must be available in Java because the latter has a bigger ecosystem and oauth has been a fully managed thing in .NET since it became a thing.
>when I wanted to integrate other webapps via oath2, all of those webapps already had oath2 connectors written as JS/TS libraries, some had it for Python, but none for Java.
I stopped reading here. I'm not a Java dev. I'm a dotnet c# dev but i know that if something is available in dotnet, then it must be available in Java because the latter has a bigger ecosystem and oauth has been a fully managed thing in .NET since it became a thing.
All major langs/frameworks have oauth2 connectors for anything relevant
It’s quite comfy, also the reactive stuff is cool. I like it
reactive dies with virtual threads
thank God
Man, just recently I found out spring and spring boot are two different things
I still don't know the difference
spring = collection of depencies and apis.
springboot = framework for backend with preconfigured building blocks.
Spring = DI/IoC framework
Spring Boot = spring + magic instantiation stuff so just adding dependencies makes them instantiate as beans.
Spring Boot is awesome when it works, but hell to debug when it doesn't. Plain old Spring isn't so bad as you can more easily find out what's going on (and if something is missing it's usually obvious why).
what the frick is a bean
Bean (in this context) = Object that's managed by Spring
Other definitions are available. Check your favorite dictionary.
(not the same anon)
it's a java class that is created and managed by Spring's dependency injection container
whats a container
Its really just more annotations
I need to be somewhat acquainted with basics of Spring and Spring Boot for some REST dev. Where should I start?
I'm currently learning it for my new job
same
I've been reading
https://www.marcobehler.com/
Check the Spring Guides, they give you a better perspective to not just be a codemonkey copy & pasting from SO and Baeldung
Next I'm planning on just following a crash course on YouTube
And perhaps later ask my employer to buy me the course from VMWare themselves
There is a nice tutorial from Microsoft using Azure services for spring boot. It can get you started with a basic project to play around.
Been learning it recently.
At first I thought this was the most convoluted bullshit I'd ever seen.
But after uses it for a bit I'm starting to realize the "magic" behind it.
They definitely need better teaching information with all the annotations and shit though. Its not difficult to learn, just inaccessible.
>Its not difficult to learn, just inaccessible
this is my gripe with Java ecosystem, most docs are written for people that have been programming in Java since the 90s and assume you have all that knowledge since then.
It's never accessible for new programmers, we need to understand WHY have you come up with this abstraction, what problems is it trying to solve.
Isn't bad, however is a bit heavyweight for small projects. Do you know about any alternative framework for smaller projects? What do you think about Javalin?
I use Spark Java (Javalin's predecessor) at work and it's lovely, very lightweight and let's you compose very custom solutions. Javalin seems like a direct improvement on top of Spark Java. I plan on using it in my next project with Kotlin and suggested to my boss to migrate our codebases to Javalin in Q4.
By the way, Spark Java is not to be confused with Apache Spark. I'm talking about his:
http://sparkjava.com/
I recommend going with Javalin, since it has a little bit more features and it's still maintained, while Spark has been somewhat abandoned since 2019.
Thanks, anon
Most of Spring's bloat comes from supporting legacy Enterprise stuff.
>this year
>>this year
sorry, month
Spring is way older than many JS frameworks, not only is older than Rails, it was forked from a project arguably as old as Ruby. Isn't that bad but supporting a lot of old enterprise cruft in order to get sponsored hurts it.
Quarkus or Micronaut are very gud
What can you say about them?
Quarkus is somewhat like Spring except it picks up on established apis like java ee and microprofile and it is architectured for cloud deployment with super fast startup times and low memory footprint. Can compile to native with graalvm for serverless.
Can i build crappy MVC stuff with it or is it mostly microservices based? I don't mind rolling some code of my own as long as i donlt have to fight too much against the framework.
>create simple framework to replace old bloated ones
>eventually grow into such a fricking monstrosity you need a framework to work with the framework
javagays are mentally ill
Streetshitter thread.
Sage.
Use Rails for personal projects, you gays. It was designed to be superior to Java and PHP.
Rails is so last decade, get gud
> new == good
what a moronic argument
but even if you're serious then Java Spring is useless according to your own assessment
Become a node Black person - a new backend framework every month.
A new frontend framework every day.
Meanwhile, I'll keep building my prototypes and MVPs in record time with Rails.
Alright, I'm interested. Since you seem to have experience with it, how fast I can build something that:
>takes a pdf and parses it
>saves parsed data
>used data to build another pdf with different layout
>spits out new pdf to the user
Needs user authentication too, obviously.
2 - 2.5 hrs max
And no, I didn't pull this number out of my ass.
Adding a model, view, and controller set is as easy as typing a single command.
Auth is built in. So is ORM.
>And no, I didn't pull this number out of my ass.
I believe you.
>So is ORM
Is it optional, though? I prefer to map rows myself.
Nearly everything in spring is optional.
Yes it is optional but I'd suggest that you try out ActiveRecord once, you may never leave it.
Yes it was a game changer when it came out and it is still a game changer today.
The MVC design pattern makes decent developers out of literal morons.
>Yes it is optional
Alright.
>I'd suggest that you try out ActiveRecord once, you may never leave it.
Noted, will do it.
Well if it's that fast and easy it won't hurt to try it out.
ahh MVC, a game changer
thought it was a bootloader, was going to reply with "based" to everyone in the thread and distribute mad upcummies, but no, its java microservices webshit reinventing the wheel the 7th time this year
moron
all the frameworks sucks balls except Express JS, I took it for granted and now my company has switched to .net and this framework is a hell hole, I am not sure how much does Micoshit pays for stack overflow to lie about their framework and tools.
don't they have now minimal APIs which are a copy of express?
Companies don't jump on new stuff as soon as it's released anon. Even if it's from Microsoft.
>Oracle shill thread again
Java is dead bro
t. nodejs zoomer
What is the difference between Spring Boot and ASP.NET?
the equivalent of ASP.NET is Spring MVC
https://docs.spring.io/spring-framework/docs/current/reference/html/web.html
>the equivalent of ASP.NET is Spring MVC
That's not true. ASP.NET is not one thing. There's ASP.NET WebAPI that's the equivalent of Spring Boot. ASP.NET Webapp and MVC which is like MVC. ASP.NET gRPC for gRPC services, ASP.NET Minimal API for microservices. ASP.NET Worker for things like an email service or a simple background process.
>What is the difference between Spring Boot and ASP.NET?
ASP.NET Web API is the equivalent of Spring Boot in dotnet. There aren't a lot of differences. Spring has probably more job offers. ASP.NET is easier to use, more performant and based upon the use of async/await and the Task Parralel Library for Coroutines.
I'm paid to write spring apps and java, but I would never choose java or spring in my free time.
If you put a gun to my head and force me to pick a JVM language, it's going to be Kotlin or Scala 3.
>Let's talk about Spring Boot
If you insist. Spring is the shittiest framework of the shittiest language which makes it shittier than Java itself. If you insist on being a Javajeet use Quarkus. If you want to become an honorary white man and purge the pajeet in you use Go, the KING of distributed systems.
it would be nice if the king of distributed systems would at least add algebraic data types
> Go, the KING of distributed systems.
if (err != nil)
kek I started a project with Spring Boot because Java is my main, but eventually re-wrote it in JavaScript, then TypeScript. For web shit, so much of the useful libraries are TypeScript now. For example, when I wanted to integrate other webapps via oath2, all of those webapps already had oath2 connectors written as JS/TS libraries, some had it for Python, but none for Java. After spending 2 days traversing the Spring Security learning curve, and making no progress (it's so insanely complicated to do a simple thing, so many service classes, config classes, and domain objects to be aware of), I just re-wrote the backend in JavaScript and achieved oath2 connectivity in just a few lines of code. Wanting code completion, I turned to JSDoc, but ran into limitations, so just bit the bullet and learned TypeScript. Holy. Shit. Best decision I've made in my technical learning in many years. It's easily my favorite language now. Once you get the toolchain figured out, it's cake.
tl;dr - I recommend a different tech stack entirely, Java is a bit long in the tooth and nobody builds connectors for it anymore, so you'll be doing a lot of extra work and learning tertiary Spring frameworks to cope.
>nobody builds connectors for it anymore
This is objectively untrue
>entirely dropping the context
Yes in fact, I even stated the exact framework in the Spring ecosystem which handles oath2. It seems you've entirely misunderstood the post I wrote. I'm referring to the pre-built oath2 client libraries distributed by companies who build the webapps I want to connect to. It's much easier to use the client library than to roll it yourself using Spring Security.
This board is full of morons, no wonder I stopped posting here.
Context doesn't matter because you don't know what you're talking about
>I'm referring to the pre-built oath2 client libraries distributed by companies who build the webapps I want to connect to
Example?
>Example?
Sure one of many:
https://develop.battle.net/documentation/guides/using-oauth
As you can see, they have client libraries for Ruby and Node, but not Java. If you want, you could use Spring Security, but it will require non-trivial configuration.
>battle.net
First, never heard of that shit. Second, they only have two client libraries and one of them is for fricking Ruby of all languages. If they have one for Ruby and not Java, Python and PHP, it's them who are moronic. Most vendors will port to Java, Python and PHP before thinking of Ruby. And if Spring Security works like Identity Framework Core it should be piss easy to work with it.
>but it's so easy
>(code snippet omitted)
You don't need a custom client made by blizzard. Just your client id, client secret and token url. With those informations you can create an ouath2 client in the spring context.
>This board is full of morons, no wonder I stopped posting here.
Sorry for saying this, it was very rude, and you guys don't seem like morons, I'm just frustrated. Have a nice day, time for a break for me
>when I wanted to integrate other webapps via oath2, all of those webapps already had oath2 connectors written as JS/TS libraries, some had it for Python, but none for Java.
I stopped reading here. I'm not a Java dev. I'm a dotnet c# dev but i know that if something is available in dotnet, then it must be available in Java because the latter has a bigger ecosystem and oauth has been a fully managed thing in .NET since it became a thing.
All major langs/frameworks have oauth2 connectors for anything relevant
Nta in the fact Typescript is better for most web based shit but what you want to achieve isn't that hard on Spring.
it gave me a job, so im happy with it
What I want from a framework is the same as from storage tech, databases or an OS
> be boring
> be reliable
> be predictable
And it's all 3. God bless.
The second most bloated framework in history (first was Java Enterprise Edition lmao)
JEE is a set of specs, not a framework, though.
Were you filtered by a bunch of specs even currys understand?