What Is Spring IOC [closed] - java

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 6 years ago.
Improve this question
I am a newbie to Java world, coming from .Net. In the .net world we don't have so many options. I have some basic questions to help me get some more context.
Is the Spring Framework built on top of Java SE or Java EE?
Or are Java EE and Java SE Oracles products? Meaning Java SE is Oracle's implementation of Java?
What is Spring Framework built on? In other words, if I wanted to build a Spring like Framework would I start with Java SE as a base?
Thanks

Java SE (Standard Edition) and Java EE (Enterprise Edition) are not concrete products, they are specifications. There are implementations of these specifications available. Oracle's JDK (Java Development Kit) is an implementation of the Java SE specification.
Basically:
Java SE = the Java programming language + the API of the standard library
Java EE = extra APIs for enterprise computing
Meaning Java SE is Oracle's implementation of Java?
No, Oracle's JDK is Oracle's implementation of Java SE (the specification).
Oracle also has a Java EE SDK which is an implementation of the Java EE specification, which includes the GlassFish application server. There are other implementations of Java EE available, such as WildFly (formerly JBoss), IBM's WebSphere and Oracle's WebLogic Server.
Spring is a library and framework built on Java SE, but it also supports some of the Java EE specification. You do not need a Java EE application server to use Spring.
About IoC (Inversion of Control), see: What is Inversion of Control?

Related

Which Jakarta ee version is compatible with Java 10? [closed]

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 2 years ago.
Improve this question
I am currently migrating a project to jdk 10, and since the Java.xml.* have been deprecated, I have used Jakarta ee instead.
Which Jakarta ee version is compatible with Java 10?
Which Jakarta EE version is compatible with Java 10?
I don't know if that is actually an answerable question. Java / Jakarta EE is fundamentally a set of specifications. The specifications do not prescribe a specific Java SE platform or compatibility requirements1.
So what you should really be doing is selecting the EE implementation you intend to use (e.g. Glassfish, JBoss, WebSpere, Weblogic, Wildfly and so on) based on the versions of Java that they require.
Having said that, you should not be targeting Java 10 as an execution platform. It has reached its end of life. You should either target Java 11 (which currently the latest Java LTS release) or the latest non-LTS release. But beware that non-LTS Java releases only have a life time of 6 months.
At this point in time (2 years after its end-of-life) it is likely that most Java EE implementations will no longer (officially) support Java 10 as an execution platform.
1 - Exception: the draft for Jakarta EE 9 requires that the underlying Java platform supports at least Java SE 8.

Updating from Oracle Java 8 to Adopt OpenJDK [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 2 years ago.
Improve this question
i would like to update from Oracle Java to Adopt OpenJDK.
Therefore i have some question before i start doing the update:
Some information about the application i use:
2 applications
Application 1 uses Java 8
Application 2 uses Java 11
My Questions:
Are there any known problems updating from oracle Java 8 to AdoptOpenJDK 8?
Are there any known problems updating from oracle Java 11 to Adopt OpenJDK 11?
Is it even possible to run a Java 8 Application on Java 11? (Can i use Adopt OpenJDK 11 for both applications?)
Is there any guideline to update from Oracle to Adopt? (Or just straigt forward?)
best regards
For a given Java version (since Java 8), the various commercially-supported OpenJDK builds are almost drop-in replacements for the Oracle JDK.
If you're writing an application with a GUI, you'll find some differences in the fonts, and in colour profiles. The Oracle JDKs also have better support for Java Flight Recorder (if anybody uses that). There's little support in OpenJDK for the ancient Java Web Start, but there are alternatives.
In my experience (which is nearly all in middleware), choice of JDK (for a given version) is almost always a decision about support, and rarely about features. I've rarely encountered any technical problems moving from Oracle JDK to OpenJDK, or vice versa.
I've also not found any problems running Java 8 applications with Java 11 and later. However, Java 11 decoupled several components -- again most related to GUI applications -- into separate JARs.
But, in the end, this is all a matter of testing, isn't it? If your testing is sufficiently thorough, any problems with compatibility will be flushed out. I certainly wouldn't rely on anybody else's claims of backward compatibility without thorough testing.

Confusion with the version history of Java [duplicate]

This question already has answers here:
JDK = Java SE && JDK != Java EE?
(7 answers)
Closed 4 years ago.
I am newbie in Java, sorry for this question but I have not a good answer to my questions regarding to this issue.
1) I look at Java SE versions history and see the versions seems to come from Java SE versions. Is the Java language version is directly related to Java SE JDK history? What does Java 8 means? Is it the language version corresponding to Java SE JDK version 8?
2) What about the Java EE SDK and JDK? Does it have no effect on the version of Java?
I have been very confused regarding to these issues about the versions of programming language and libraries. Could you pls. clarify me?
SE (Standard Edition) and EE(Enterprise Edition) basically are the Java Editions.
JDK means Java Development Kit which contans JRE (Java Runtime Enviroment) and JVM (Java Virtual Machine).
yes you are right. java 8 is the language versions. every version of java come up with new Features.
and Some versions of java have both EE and SE and Some have only SE.

Some newbie questions about Java EE [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
I am totally new to Java EE. So pardon me if this is too naive a question.
There're so many concepts/jargon/specifictaion in the world of Java Web development. So I am bit lost. Below are my questions:
Do I must use Java EE SDK to develop web applications? Can Java SE SDK do that?
I just downloaded and extracted the Java EE SDK 7u1. There's only a single folder named glassfish4 after extraction. I heard that Java EE SDK is a superset of Java SE. So I am expecting some extra *.jar files containing some new APIs. But where are they?
What's the logical hierarchy Java web technology? It seems everything is based on Servlet.
Java EE is a set of specifications and APIs that define the standards which form Java EE. As such Java EE is not a superset of Java SE which defines the language and standard libraries, but just is built on top of it. Additionally, besides the APIs there is no SDK as such. Just choose an implementation (most people use an application server like Glassfish, JBoss/Wildfly, Websphere etc.) and use that.
If you just want to download the API jars, check the various respositories on the net, e.g. Maven Central etc. The most basic API jar would be javaee-api-7.0.jar. There are a couple of other jars but which you need to reference in your application depends on what you need and which Java EE implementation/provider you use.
You do not need the EE SDK for JavaEE development. It's just a glashfish server and some other tools provided by oracle to enable you to run EE applications.
Any other application server would work just as well.
Depending on your application server, you just package your class files into archives with a deployment descriptor and deploy them to your server, where the EE components are executed.
Since you seem to target web development: Take a look at Apache Tomcat!
It's a EE Web-Container implementation, which allows you to run Servlets and components built on top (JSF, JSPs).
You do not need a fully blown application server for web development. Glasfish seems to be a bit of an overkill for your use case, as you are not looking to run Enterprise Java Beans.
Refer to http://tomcat.apache.org/

Why use or not use java 7 to make JAVA EE applications [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
Java 6 is a stable version of this programming language. But I would like to upgrade to the current version java 7. At this time, is recommended to use java 7 in production? Where I can find updated information about the possible problems that I can get if I upgrade to java 7?
Why use or not use java 7 to make JAVA EE applications
This was added later. The main reason not to use Java 7 is that your web server might not support Java 7. e.g. some very expensive EE servers haven't got round to migrating to Java 7 in the 2.5 years since it was available for testing. IMHO this is pretty poor given the money they charge.
At this time, is recommended to use java 7 in production?
AFAIK, Java 7 is more recommended than Java 6, give it is not supported for free any more.
Java 7 is a requirement for the G1 collector, Java Mission Control and JavaFX 2.
Note: with Java 8 coming out soon with many new/powerful features, I expect many developers will be using it by the middle of 2014.
Where I can find updated information about the possible problems that I can get if I upgrade to java 7?
Most of the problems have been around client applet security.
https://blogs.oracle.com/henrik/entry/migrating_from_java_se_6
http://docs.oracle.com/javase/7/docs/webnotes/adoptionGuide/
http://www.slideshare.net/myfear/practical-migration-to-java-7
http://publib.boulder.ibm.com/infocenter/ieduasst/v1r1m0/index.jsp?topic=/com.ibm.iea.was_v7/was/7.0/Architecture/WASv7_JavaCompatibility/player.html (note this has audio)
You should use a supported Java version. Have a look at the Oracle Java SE Support Roadmap. Java 6 has reached "END OF PUBLIC UPDATES" - so it is not supported anymore.
At least you should run your Java 6 code on a Java 7 VM.
Aside from the convenient improvements to the language in 7 and the fact that 6 is no longer supported, there were some very serious security issues with 1.6 that caused Apple (amongst others) to drop default support for Java.
Those issues were fixed with 1.7 and for that reason alone, you should update.
Two blogs detailing the controversy below;
http://www.intego.com/mac-security-blog/apple-drops-java-in-latest-os-x-security-release/
http://www.darkreading.com/vulnerability/apple-removes-default-java-support-in-br/240009305
it is dependent, if you are going to make an application for android you may use Java 6, but if your creating a application for desktop it is recommended to use Java 7.
Java 7 have some improvement of course, specially on file io, which is .nio package.

Categories

Resources