TrustRadius Insights for Oracle Java SE are summaries of user sentiment data from TrustRadius reviews and, when necessary, third party data sources.
Pros
Platform Independence: Users have praised Java for its platform independence, which allows them to seamlessly develop and deploy applications across various operating systems, enhancing flexibility and reach. For example, this feature enables developers to create software that can run on both Windows and Unix-based systems without significant modifications.
Robustness: Many reviewers have highlighted the robust nature of Java programming, emphasizing its ability to handle complex tasks efficiently and reliably in diverse environments, contributing to a stable development experience. This reliability is particularly crucial for mission-critical applications where downtime is not an option.
Extensive Frameworks and Libraries: Users appreciate the extensive availability of frameworks and libraries for Java development, enabling them to leverage a wide range of tools and resources effectively in their projects, fostering innovation and productivity. The abundance of resources like Spring Framework or Apache Commons provides developers with pre-built solutions to common problems, speeding up the development process significantly.
Java is the most widely used programming language at our company. The flexibility (OS agnostic), ease of rapid development, as well as the relative high performance helps us react quickly to our ever changing ecosystem (ad-tech). We use Java on all types of applications, from a low latency exchange to a backend web API for a user-facing application.
Pros
The JVM makes deploying across platforms simple
Widely supported in the open-source community
Actively maintained and developed
Cons
Very object oriented, hard to use modern functional programming paradigms
GC can cause performance issues
Likelihood to Recommend
Java is well suited for an application that needs to focus on applying business logic and rapid feature development. Java is lacking when performance and computing resources are constrained.
VU
Verified User
Engineer in Engineering (Internet company, 51-200 employees)
We use Java in our main application for physics simulation. Until it became a paid license, we shipped our product with Oracle Java SE. Now we ship with AdoptOpenJDK, but still, support using Oracle Java SE with our product.
Pros
Supports multiple platforms
Supports modern concepts such as streams and functional interfaces
Good tooling available (IDEs, debuggers, profilers, etc)
Cons
No ability to automatically clean up resources such as via destructors in C++. End users must explicitly invoke a method (e.g. close, dispose) to ensure resources are freed in a timely manner.
Garbage collection can introduce pauses at runtime (although this is improving)
Memory leaks are sometimes difficult to find due to automatic garbage collection
Likelihood to Recommend
Oracle Java SE is well suited to long-running applications (e.g. servers). Java Swing (UI toolkit) is now rather outdated, lacking support for modern UI features. JavaFX, the potential replacement for Swing, has now been separated out of Java core. Ideally, there would be a path to migrate a large application incrementally from Swing to JavaFX, but due to different threading models and other aspects, it is difficult. At this point, it is probably better to use an embedded web browser (e.g. JxBrowser) to provide a modern UI in HTML/Javascript and keep just the business logic in Java.
VU
Verified User
Employee in Research & Development (Computer Software company, 10,001+ employees)
We use this structure in software development for some internal and external applications.
Pros
We use our Enterprise Resouce Planning Applications development. And Java SE performance is very powerful.
Our budget planning application uses Java SE. Easy, very useful.
For Financial Consolidation application we use JAVA SE.
Cons
Application improvements can be made more easily.
Security and scheduling effects are made difficult in Java SE settings for critical applications.
Costs should be at the appropriate level.
Likelihood to Recommend
Oracle Java SE is well suited for scientific applications. One of its biggest strengths is that it combines scientific opportunities with enterprise stability, scalability and security.
And for machine learning, data science, etc. less appropriate.
VU
Verified User
Professional in Information Technology (Telecommunications company, 1001-5000 employees)
We use Oracle Java SE for various purposes including development API Rest Service with Restlet framework, front-end applications with Spring and Spring Boot framework, back-end applications, writing automation test-cases on Selenium using java SE and creating some convenient tools with Java. The Java application is well structured and strictly object-orientation making it easy to understand, manage and maintain.
Pros
Plenty support built into the tool and IDE like Maven, Ant, Eclipse, IntelliJ.
Strong object-orientation language and clear project structure.
Wrapper underlines hardware and memory management so the developers can focus on business and implementation.
It offers a huge library and framework support from third-parties and the community.
Cons
It is hard to manage memory.
Swing UI module is not good.
Need time to initiate VM so the startup time is a little slow compared to other programs like Bash or Python.
Likelihood to Recommend
Oracle Java SE is the most popular program language and it suitable for almost kind of application and special for the big system which needs to separate into many sub-application with different business and deployment types as Java has many frameworks, libraries, and tools. Many of these are open-source tools by the community and support various integration types from Rest, SOAP API, RMI, File access... It has allowed me to be able to deploy in multiple OS without changing the code. In case the Application needs to deeply access hardware such as the driver, memory address, OS thread or needs to strickly manage memory such as allocating, pointing and deallocating, we needed another programming language.
Oracle Java SE is is being used by our Software Development team for the creation of the core back-end modules that are communicating with our front-end interface of our main application. We needed a language that was widely supported by external libraries, and one that was durable and secure to use at the enterprise-level.
Pros
Runs on all OS Platforms. Applications made on Java can run on all modern OS platforms. No need to make separate.
Automatic Memory Management. Java's excellent implementation of a garbage collector clears up memory by removing unreferenced objects.
Multithreaded Performance. Shared memory areas maximizes the utility of the CPU, accomplishing more tasks than usual.
Cons
Commercial Licensing in 2019. Oracle will charge commercial organizations using Java SE for upgrading to the latest bug fixes and updates. Organizations will now need to either limit their implementation of Java SE or may need to drop it altogether.
Slow Performance. Due to the all of the abstraction of the JVM, Java SE programs take much more resources to compile and run compared to Python.
Poor UI appearance on all of the major GUI libraries (Swing, SWT, etc.). Through Android Studio, it is easy to get a native look/feel for Java apps, but when it comes to desktops, the UI is far from acceptable (does not mimic the native OS's look/feel at all).
Likelihood to Recommend
If your organization is looking to create enterprise-level applications through a object-oriented method of programming. OS-independent applications, Android mobile applications, PoS systems, and Big Data programs are perfect scenarios where you would probably want to use Java. However, if your application needs to be lightweight and extremely fast performance, then Java SE might be too bulky for your use-case.
VU
Verified User
Engineer in Information Technology (Computer Software company, 51-200 employees)
Java is the standard language for writing applications in an enterprise. Its dominant use is in writing business applications, but also for developing tools, particularly those that deal with databases and data. It is also used for Big Data applications, where the JVM allows for the use of other languages in the ecosystem. For example, Scala and Kotlin.
Pros
Mature platform.
Variety of enterprise-grade libraries.
Easy to find and hire developers.
Great performance.
Cons
Less verbose code.
Lighter deployments.
Inclusion of modern language constructs (as found in Scala and Kotlin).
Likelihood to Recommend
Suitable for:
Business applications.
Tools when startup time is not critical.
Applications that benefit from a huge ecosystem of open-source mature libraries.
When easy hiring is important.
Consider alternatives with:
Serverless applications (cold start with Java can be considerable, look into Go, Node for better performance).
Developing in Kubernetes Cloud ecosystem-- there, most tools use Go.
Big Data processing -- consider Scala and Python.
Data science -- consider Python.
Low-level highly performant code without Garbage Collector -- consider Rust and C++.
VU
Verified User
Director in Information Technology (Internet company, 10,001+ employees)
We use it for software development and have developed several web based apps using Oracle Java SE. I manage several teams for software development. Most of my applications are Java-based, so my team uses Oracle Java SE to do this.
Pros
Ease of Use
Powerful - you can write really robust programs.
Multipurpose - you can link it with many other applications, within Oracle and others as well.
Availibilty
Cons
More IDE's
Can't do mobile development
Cloud platform - not based in the cloud
Likelihood to Recommend
Less suited for cloud and more suited for in-house development. It's a very powerful and universally accepted language. Also it has various tools that support Java and also several integrations are possible. Every version of Java has more features built and hence it's recommended software. The universally accepted and unicode language is Java. Java is the best software language.
Java SE supports most of the company's microservices. It's the backbone of the company, where most of the processes run on, including product development, online services, streaming pipeline and offline data warehouse solutions. Java is really widely used and is one of the dominant language here in production and dev.
Pros
Java is very reliable.
Java is commonly used, so the community is very strong.
Cons
Support is lacking. Response for bug reports are slow and less than satisfactory.
Likelihood to Recommend
Oracle Java SE is well suited for most internet solutions, including software development, online services, data streaming processing pipeline, offline warehouse, and big data analysis. Its rich ecosystem really enables most all the imaginable problems we face in both large and small scale, both online and offline. The only downside might be that the the ecosystem might be a little overwhelming to begin with.
Almost all LinkedIn applications are Java ones. I'm on the team that builds infrastructure for all Java applications, in terms of functionality and performance. I'm working on improving the performance of Java in our company. Java SE is what powers all of our code in production machines.
Pros
Good collection of libraries.
Easy to learn. High productivity for developers.
Good infrastructure support internally.
Cons
GC performance. Hope it will be much better with the new GC coming up in Java 11.
Difficulty of Migration. Migration to a new major version is particularly challenging.
Likelihood to Recommend
I think Oracle Java SE is a good fit for large scale applications. It's not a very good fit if you just need a small application with high performance.
Java is used to run all sorts of applications, both online and offline included. It addresses the need for serving business logic in a maintainable and scalable manner.
Pros
Maintainable.
Scalable.
Great Community.
Cons
Customer service is lacking.
Support is lacking.
Likelihood to Recommend
Java is well suited for large scale applications that will benefit from having a large community.
VU
Verified User
Engineer in Engineering (Internet company, 10,001+ employees)