Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Learning Java EE, jboss, etc

I've been doing "plain old java objects" programming for 10 years now, with Swing and JDBC, and I consider myself pretty good at it. But I start a new job in two weeks where they use JBoss, and I'd like to get a heads up and start learning all this stuff before I start. What are good resources? On-line tutorials, books, e-books, anything you can suggest, especially ones that don't try to teach you the basics of plain Java first.

like image 769
Paul Tomblin Avatar asked Oct 17 '08 21:10

Paul Tomblin


People also ask

Is it worth learning Java EE?

To answer the question: "Is learning Java EE still beneficial ?", yes, it absolutely is. Java EE is not in any way obsolete or on its way out and still very much relevant in enterprise software development. Part of the things that you mention are actually part of Java EE: servlets, JSP, JSF, and JPA, messaging (JMS).

How can I learn Java EE?

Oracle Java EE Tutorial is the best for beginner. In Java EE scope. there are many frameworks,such as JSP,JSF,Servlet,Spring,Struts and so on. First you should try to focus which framework is more suitable for you and then try to learn it first.

Is Java EE still relevant 2020?

Almost 4 out of 10 people use the latest version of Java EE while Java EE 7 still remains quite popular.

Should I learn Java SE or EE?

For all intents and purposes, Java and Java SE are the same thing. When you say you are learning Java SE, it means you are learning Java, its syntax, features and standard libraries. You cannot learn Java EE before learning these skills.


5 Answers

For quick getting up to speed, you really need to master EJBs and JSP/Servlets. Those are the fundamentals of Java EE technology. The Head First series on EJBs and JSP/Servlets is a good start for what has usually been a mind-numbingly complex framework. Beware that recent Head First editions have switched to teaching the simpler annotation-based Java EE 1.5 frameworks. While the newer version of Java EE is simpler and better, you probably need to know the previous versions (Java EE 1.4 = EJB 2.1 and Servlets 2.4).

At this point, you've only dipped your foot in the water. I would spend a lot of time over the next year, reading up on Java EE technologies and more generally enterprise application development for client-servers.

a) You absolutely must understand data modeling, and databases. The best I've seen are by Chris Date, Steve Feuerstein (if you're using Oracle) and Joe Celko. The better Java EE developers can keep up with their DBAs in technical discussions about the database.

b) You do need to understand how JDBC works, and why ORM tools like iBatis, Hibernate and Toplink came about. Assuming you know how to write a JDBC DAO, then be sure to understand how Hibernate works.

c) You should understand how the layered architecture of a Java EE application. Core Java EE Design Patterns has prescribed typical practice, and it's highly likely that your upcoming project will stick to those patterns. That said, you should also understand alternative points of view on architecture. I've found Martin Fowler's Patterns of Enterprise Application Architecture and Rod Johnson's Expert One-On-One Java EE Design and Development to be valuable. The ideas in the latter became the Spring framework, and has settled into mainstream for how many J2EE developers prefer to develop their apps.

d) Then learn some of the frameworks that have sprouted up around the Java EEE ecosystem. While it's a philosophical question why there are so many frameworks, and which one is better, focusing on the frameworks your employer is specifically using is more than enough.

like image 158
Alan Avatar answered Oct 24 '22 16:10

Alan


A couple of answers come to mind:

  • if "plain old java" is what you're used to, you'll probably need a grounding of plain old j2EE more than JBOSS specific stuff. I'd start with the sun tutorials, but being familiar with the general structure of servlets, the servlet api, is base.

  • as application servers go, JBoss is (my biased opinion only) insanely large and complicated. Think "launching the space shuttle" and you won't be far off. A million services. It is specifically noted for having an unusual class loader structure (although this may have changed since I used it last, about 1 -2 years ago), among other things. It also has an extensive list of nice services, like a JMX base (management configuration beans) although documentation is likely to be spotty, as support is a paid service.

Best suggestion- familiarize yourself with the J2EE libraries. Next would be to get a basic site running in JBOSS. More specific stuff that you might want to do is likely to be very specific to their installation (e.g. there's a JMS implementation available in there but they may not be using it) as I've seen people use it for nothing but a servlet container.

like image 35
Steve B. Avatar answered Oct 24 '22 14:10

Steve B.


i would suggest readin a book like Jboss at work http://oreilly.com/catalog/9780596007348/

We use jboss too at work.. and i read this book and found it useful..

like image 29
Wael Awada Avatar answered Oct 24 '22 16:10

Wael Awada


Sounds like me (though definitely not with 10yrs of exp). I started with Head first series for servlet/jsps. I already knew what they were meant for. If you have a good grasp of design patterns and OOPS, Ejbs and other resources would be a piece of cake, Concentrate on why they are, how and what to do can wait. App servers are a different beast, however, going through the admin manuals helped clarify quite a few things. SSL/Certificate stores/Clustering can come at the end of the list. You would also like to learn about ORM tools like Hibernet; alternative view technologies like Wicket, Tapestry etc; Containers like Spring and libraries like struts all can be learnt slowly. The best practices and review posted all over internet definitely help.

The choice of what order to follow, shouldn't be that difficult, as the work place dictates the technologies most of the time.Just remember, J2EE is a bunch of specifications and frameworks are essentially supporting libraries that are targeted to a specific group. It is the designer/developer who holds the key

like image 42
questzen Avatar answered Oct 24 '22 14:10

questzen


Learn Enterprise Java Beans

like image 30
FlySwat Avatar answered Oct 24 '22 15:10

FlySwat