Latest Entries »
Tuesday, December 16, 2008
SQL Interview Questions (Java)
A: SQL stands for 'Structured Query Language'.
Q: What is SELECT statement?
A: The SELECT statement lets you select a set of values from a table in a database. The values selected from the database table would depend on the various conditions that are specified in the SQL query.
Q: How can you compare a part of the name rather than the entire name?
A: SELECT * FROM people WHERE empname LIKE '%ab%' Would return a recordset with records consisting empname the sequence 'ab' in empname.
Q: What is the INSERT statement?
A: The INSERT statement lets you insert information into a database.
Q: How do you delete a record from a database?
A: Use the DELETE statement to remove records or any particular column values from a database.
Q: How could I get distinct entries from a table?
A: The SELECT statement in conjunction with DISTINCT lets you select a set of distinct values from a table in a database. The values selected from the database table would of course depend on the various conditions that are specified in the SQL query. Example
SELECT DISTINCT empname FROM emptable
Q: How to get the results of a Query sorted in any order?
A: You can sort the results and return the sorted results to your program by using ORDER BY keyword thus saving you the pain of carrying out the sorting yourself. The ORDER BY keyword is used for sorting.
SELECT empname, age, city FROM emptable ORDER BY empname
Q: How can I find the total number of records in a table?
A: You could use the COUNT keyword, example
SELECT COUNT (*) FROM emp WHERE age>40
Q: What is GROUP BY?
A: The GROUP BY keywords has been added to SQL because aggregate functions (like SUM) return the aggregate of all column values every time they are called. Without the GROUP BY functionality, finding the sum for each individual group of column values was not possible.
Q: What is the difference among "dropping a table", "truncating a table" and "deleting all records" from a table?
A: Dropping: (Table structure + Data are deleted), Invalidates the dependent objects, Drops the indexes
Truncating: (Data alone deleted), Performs an automatic commit, faster than delete
Delete: (Data alone deleted), doesn’t perform automatic commit
Q: What are the large object types’s supported by Oracle?
A: Blob and Clob.
Q: Difference between a "where" clause and a "having" clause.
A: Having clause is used only with group functions whereas Where is not used with.
Q: What's the difference between a primary key and a unique key?
A: Both primary key and unique enforce uniqueness of the column on which they are defined. But by default primary key creates a clustered index on the column, where are unique creates a nonclustered index by default. Another major difference is that, primary key doesn't allow NULLs, but unique key allows one NULL only.
Q: What are cursors? Explain different types of cursors. What are the disadvantages of cursors? How can you avoid cursors?
A: Cursors allow row-by-row processing of the resultsets.
Types of cursors: Static, Dynamic, Forward-only, Keyset-driven. See books online for more information.
Disadvantages of cursors: Each time you fetch a row from the cursor, it results in a network roundtrip; where as a normal SELECT query makes only one rowundtrip, however large the resultset is. Cursors are also costly because they require more resources and temporary storage (results in more IO operations). Further, there are restrictions on the SELECT statements that can be used with some types of cursors.
Most of the times, set based operations can be used instead of cursors.
Q: What are triggers? How to invoke a trigger on demand?
A: Triggers are special kind of stored procedures that get executed automatically when an INSERT, UPDATE or DELETE operation takes place on a table.
Triggers can't be invoked on demand. They get triggered only when an associated action (INSERT, UPDATE, and DELETE) happens on the table on which they are defined.
Triggers are generally used to implement business rules, auditing. Triggers can also be used to extend the referential integrity checks, but wherever possible, use constraints for this purpose, instead of triggers, as constraints are much faster.
Q: What is a join and explain different types of joins.
A: Joins are used in queries to explain how different tables are related. Joins also let you select data from a table depending upon data from another table.
Types of joins: INNER JOINs, OUTER JOINs, CROSS JOINs. OUTER JOINs are further classified as LEFT OUTER JOINS, RIGHT OUTER JOINS and FULL OUTER JOINS.
Q: What is a self join?
A: Self join is just like any other join, except that two instances of the same table will be joined in the query.
An inner join is a join that selects only those records from both database tables that have matching values.
An outer join selects all of the records from one database table and only those records in the second table that have matching values in the joined field. In a left outer join, the selected records will include all of the records in the first database table. In a right outer join, the selected records will include all records of the second database table. One or more fields can serve as the join fields.
Saturday, November 22, 2008
EJB Tutorial Interview Questions (Java)
What is EJB?
EJB stands for Enterprise JavaBeans and is widely-adopted server side component architecture for J2EE. It enables rapid development of mission-critical application that are versatile, reusable and portable across middleware while protecting IT investment and preventing vendor lock-in.
What is session Facade?
Session Facade is a design pattern to access the Entity bean through local interface than accessing directly. It increases the performance over the network. In this case we call session bean which on turn call entity bean.
What is EJB role in J2EE?
EJB technology is the core of J2EE. It enables developers to write reusable and portable server-side business logic for the J2EE platform.
What is the difference between EJB and Java beans?
EJB is a specification for J2EE server, not a product; Java beans may be a graphical component in IDE
What are the key features of the EJB technology?
1. EJB components are server-side components written entirely in the Java programming language
2. EJB components contain business logic only - no system-level programming & services, such as transactions, security, life-cycle, threading, persistence, etc. are automatically managed for the EJB component by the EJB server.
3. EJB architecture is inherently transactional, distributed, portable multi-tier, scalable and secure.
4. EJB components are fully portable across any EJB server and any OS.
5. EJB architecture is wire-protocol neutral--any protocol can be utilized like IIOP, JRMP, HTTP, DCOM,etc.
What are the key benefits of the EJB technology?
1. Rapid application development
2. Broad industry adoption
3. Application portability
4. Protection of IT investment
How many enterprise beans?
There are three kinds of enterprise beans:
1. Session beans,
2. Entity beans, and
3. message-driven beans.
What is message-driven bean?
A message-driven bean combines features of a session bean and a Java Message Service (JMS) message listener, allowing a business component to receive JMS. A message-driven bean enables asynchronous clients to access the business logic in the EJB tier.
What are Entity Bean and Session Bean?
Entity Bean is a Java class which implements an Enterprise Bean interface and provides the implementation of the business methods. There are two types: Container Managed Persistence (CMP) and Bean-Managed Persistence (BMP).
Session Bean is used to represent a workflow on behalf of a client. There are two types: Stateless and Stateful. Stateless bean is the simplest bean. It doesn't maintain any conversational state with clients between method invocations. Stateful bean maintains state between invocations.
How EJB Invocation happens?
Retrieve Home Object reference from Naming Service via JNDI. Return Home Object reference to the client. Create me a new EJB Object through Home Object interface. Create EJB Object from the EJB Object. Return EJB Object reference to the client. Invoke business method using EJB Object reference. Delegate request to Bean (Enterprise Bean).
Is it possible to share an HttpSession between a JSP and EJB? What happens when I change a value in the
HttpSession from inside an EJB?
You can pass the HttpSession as parameter to an EJB method, only if all objects in session are serializable. This has to be considering as passed-by-value, which means that it’s read-only in the EJB. If anything is altered from inside the EJB, it won’t be reflected back to the HttpSession of the ServletContainer. The pass-by-reference can be used between EJBs Remote Interfaces, as they are remote references. While it is possible to pass an HttpSession as a parameter to an EJB object, it is considered to be bad practice in terms of object-oriented design. This is because you are creating an unnecessary coupling between back-end objects (EJBs) and front-end objects (HttpSession). Create a higher-level of abstraction for your EJBs API. Rather than passing the whole, fat, HttpSession (which carries with it a bunch of http semantics), create a class that acts as a value object (or structure) that holds all the data you need to pass back and forth between front-end/back-end. Consider the case where your EJB needs to support a non HTTP-based client. This higher level of abstraction will be flexible enough to support it.
The EJB container implements the EJBHome and EJBObject classes. For every request from a unique client, does the container create a separate instance of the generated EJBHome and EJBObject classes?
The EJB container maintains an instance pool. The container uses these instances for the EJB Home reference irrespective of the client request. While referring the EJB Object classes the container creates a separate instance for each client request. The instance pool maintenance is up to the implementation of the container. If the container provides one, it is available otherwise it is not mandatory for the provider to implement it. Having said that, yes most of the container providers implement the pooling functionality to increase the performance of the application server. The way it is implemented is, again, up to the implementer.
Can the primary key in the entity bean be a Java primitive type such as int?
The primary key can’t be a primitive type. Use the primitive wrapper classes, instead. For example, you can use java.lang. Integer as the primary key class, but not int (it has to be a class, not a primitive).
Can you control when passivation occurs?
The developer, according to the specification, cannot directly control when passivation occurs. Although for Stateful Session Beans, the container cannot passivate an instance that is inside a transaction. So using transactions can be a a strategy to control passivation. The ejbPassivate() method is called during passivation, so the developer has control over what to do during this exercise and can implement the require optimized logic. Some EJB containers, such as BEA WebLogic, provide the ability to tune the container to minimize passivation calls. Taken from the WebLogic 6.0 DTD -The passivation-strategy can be either default or transaction. With the default setting the container will attempt to keep a working set of beans in the cache. With the transaction setting, the container will passivate the bean after every transaction (or method call for a non-transactional invocation).
What is the advantage of using Entity bean for database operations, over directly using JDBC API to do database operations? When would I use one over the other?
Entity Beans actually represents the data in a database. It is not that Entity Beans replaces JDBC API. There are two types of Entity Beans Container Managed and Bean Managed. In Container Managed Entity Bean - Whenever the instance of the bean is created the container automatically retrieves the data from the DB/Persistence storage and assigns to the object variables in bean for user to manipulate or use them. For this the developer needs to map the fields in the database to the variables in deployment descriptor files (which varies for each vendor). In the Bean Managed Entity Bean - The developer has to specifically make connection, retrieve values, assign them to the objects in the ejbLoad() which will be called by the container when it instatiates a bean object. Similarly in the ejbStore() the container saves the object values back the persistence storage. ejbLoad and ejbStore are callback methods and can be only invoked by the container. Apart from this, when you use Entity beans you don’t need to worry about database transaction handling, database connection pooling etc. which are taken care by the EJB container.
What is EJB QL?
EJB QL is a Query Language provided for navigation across a network of enterprise beans and dependent objects defined by means of container managed persistence. EJB QL is introduced in the EJB 2.0 specification. The EJB QL query language defines finder methods for an entity bean with container managed persistenceand is portable across containers and persistence managers. EJB QL is used for queries of two types of finder methods: Finder methods that are defined in the home interface of an entity bean and which return entity objects. Select methods, which are not exposed to the client, but which are used by the Bean Provider to select persistent values that are maintained by the Persistence Manager or to select entity objects that are related to the entity bean on which the query is defined.
Brief description about local interfaces?
EJB was originally designed around remote invocation using the Java Remote Method Invocation (RMI) mechanism, and later extended to support to standard CORBA transport for these calls using RMI/IIOP. This design allowed for maximum flexibility in developing applications without consideration for the deployment scenario, and was a strong feature in support of a goal of component reuse in J2EE. Many developers are using EJBs locally, that is, some or all of their EJB calls are between beans in a single container. With this feedback in mind, the EJB 2.0 expert group has created a local interface mechanism. The local interface may be defined for a bean during development, to allow streamlined calls to the bean if a caller is in the same container. This does not involve the overhead involved with RMI like marshalling etc. This facility will thus improve the performance of applications in which co-location is planned. Local interfaces also provide the foundation for container-managed relationships among entity beans with container-managed persistence.
What are the special design care that must be taken when you work with local interfaces?
It is important to understand that the calling semantics of local interfaces are different from those of remote interfaces. For example, remote interfaces pass parameters using call-by-value semantics, while local interfaces use call-by-reference. This means that in order to use local interfaces safely, application developers need to carefully consider potential deployment scenarios up front, then decide which interfaces can be local and which remote, and finally, develop the application code with these choices in mind. While EJB 2.0 local interfaces are extremely useful in some situations, the long-term costs of these choices, especially when changing requirements and component reuse are taken into account, need to be factored into the design decision.
What happens if remove( ) is never invoked on a session bean?
In case of a stateless session bean it may not matter if we call or not as in both cases nothing is done. The number of beans in cache is managed by the container. In case of stateful session bean, the bean may be kept in cache till either the session times out, in which case the bean is removed or when there is a requirement for memory in which case the data is cached and the bean is sent to free pool.
What is the difference between Message Driven Beans and Stateless Session beans?
In several ways, the dynamic creation and allocation of message-driven bean instances mimics the behavior of stateless session EJB instances, which exist only for the duration of a particular method call. However, message-driven beans are different from stateless session EJBs (and other types of EJBs) in several significant ways: Message-driven beans process multiple JMS messages asynchronously, rather than processing a serialized sequence of method calls. Message-driven beans have no home or remote interface, and therefore cannot be directly accessed by internal or external clients. Clients interact with message-driven beans only indirectly, by sending a message to a JMS Queue or Topic. Only the container directly interacts with a message-driven bean by creating bean instances and passing JMS messages to those instances as necessary. The Container maintains the entire lifecycle of a message-driven bean; instances cannot be created or removed as a result of client requests or other API calls
How can I call one EJB from inside of another EJB?
EJBs can be clients of other EJBs. It just works. Use JNDI to locate the Home Interface of the other bean, then acquire an instance reference, and so forth.
What is an EJB Context?
EJBContext is an interface that is implemented by the container, and it is also a part of the bean-container contract. Entity beans use a subclass of EJBContext called EntityContext. Session beans use a subclass called SessionContext. These EJBContext objects provide the bean class with information about its container, the client using the bean and the bean itself. They also provide other functions. See the API docs and the spec for more details.
Is possible for an EJB client to marshal an object of class java.lang.Class to an EJB?
Technically yes, spec. compliant NO! - The enterprise bean must not attempt to query a class to obtain information about the declared members that are not otherwise accessible to the enterprise bean because of the security rules of the Java language.
Is it legal to have static initializer blocks in EJB?
Although technically it is legal, static initializer blocks are used to execute some piece of code before executing any constructor or method while instantiating a class. Static initializer blocks are also typically used to initialize static fields - which may be illegal in EJB if they are read/write - In EJB this can be achieved by including the code in either the ejbCreate(), setSessionContext() or setEntityContext() methods.
Is it possible to stop the execution of a method before completion in a SessionBean?
Stopping the execution of a method inside a Session Bean is not possible without writing code inside the Session Bean. This is because you are not allowed to access Threads inside an EJB.
What is the default transaction attribute for an EJB?
There is no default transaction attribute for an EJB. Section 11.5 of EJB v1.1 spec says that the deployer must specify a value for the transaction attribute for those methods having container managed transaction. In WebLogic, the default transaction attribute for EJB is SUPPORTS.
What is the difference between session and entity beans? When should I use one or the other?
An entity bean represents persistent global data from the database; a session bean represents transient user-specific data that will die when the user disconnects (ends his session). Generally, the session beans implement business methods (e.g. Bank.transferFunds) that call entity beans (e.g. Account.deposit, Account.withdraw)
Is there any default cache management system with Entity beans?
In other words whether a cache of the data in database will be maintained in EJB? Caching data from a database inside the AAApplication Server are what Entity EJB’s are used for.The ejbLoad() and ejbStore() methods are used to synchronize the Entity Bean state with the persistent storage(database). Transactions also play an important role in this scenario. If data is removed from the database, via an external application - your Entity Bean can still be alive the EJB container. When the transaction commits, ejbStore() is called and the row will not be found, and the transaction rolled back.
Why is ejbFindByPrimaryKey mandatory?
An Entity Bean represents persistent data that is stored outside of the EJB Container/Server. The ejbFindByPrimaryKey is a method used to locate and load an Entity Bean into the container, similar to a SELECT statement in SQL. By making this method mandatory, the client programmer can be assured that if they have the primary key of the Entity Bean, then they can retrieve the bean without having to create a new bean each time - which would mean creating duplications of persistent data and break the integrity of EJB.
Why do we have a remove method in both EJBHome and EJBObject?
With the EJBHome version of the remove, you are able to delete an entity bean without first instantiating it (you can provide a PrimaryKey object as a parameter to the remove method). The home version only works for entity beans. On the other hand, the Remote interface version works on an entity bean that you have already instantiated. In addition, the remote version also works on session beans (stateless and stateful) to inform the container of your loss of interest in this bean.
How can I call one EJB from inside of another EJB?
EJBs can be clients of other EJBs. It just works. Use JNDI to locate the Home Interface of the other bean, then acquire an instance reference, and so forth.
What is the difference between a Server, a Container, and a Connector?
An EJB server is an application, usually a product such as BEA WebLogic, that provides (or should provide) for concurrent client connections and manages system resources such as threads, processes, memory, database connections, network connections, etc. An EJB container runs inside (or within) an EJB server, and provides deployed EJB beans with transaction and security management, etc. The EJB container insulates an EJB bean from the specifics of an underlying EJB server by providing a simple, standard API between the EJB bean and its container. A Connector provides the ability for any Enterprise Information System (EIS) to plug into any EJB server which supports the Connector architecture. See Sun’s J2EE Connectors for more in-depth information on Connectors.
How is persistence implemented in enterprise beans?
Persistence in EJB is taken care of in two ways, depending on how you implement your beans: container managed persistence (CMP) or bean managed persistence (BMP) For CMP, the EJB container which your beans run under takes care of the persistence of the fields you have declared to be persisted with the database - this declaration is in the deployment descriptor. So, anytime you modify a field in a CMP bean, as soon as the method you have executed is finished, the new data is persisted to the database by the container. For BMP, the EJB bean developer is responsible for defining the persistence routines in the proper places in the bean, for instance, the ejbCreate(), ejbStore(), ejbRemove() methods would be developed by the bean developer to make calls to the database. The container is responsible, in BMP, to call the appropriate method on the bean. So, if the bean is being looked up, when the create() method is called on the Home interface, then the container is responsible for calling the ejbCreate() method in the bean, which should have functionality inside for going to the database and looking up the data.
What is an EJB Context?
EJBContext is an interface that is implemented by the container, and it is also a part of the bean-container contract. Entity beans use a subclass of EJBContext called EntityContext. Session beans use a subclass called SessionContext. These EJBContext objects provide the bean class with information about its container, the client using the bean and the bean itself. They also provide other functions. See the API docs and the spec for more details.
Is method overloading allowed in EJB?
Yes you can overload methods
Should synchronization primitives be used on bean methods?
No. The EJB specification specifically states that the enterprise bean is not allowed to use thread primitives. The container is responsible for managing concurrent access to beans at runtime.
Are we allowed to change the transaction isolation property in middle of a transaction?
No. You cannot change the transaction isolation level in the middle of transaction.
For Entity Beans, What happens to an instance field not mapped to any persistent storage, when the bean is passivated?
The specification infers that the container never serializes an instance of an Entity bean (unlike stateful session beans). Thus passivation simply involves moving the bean from the ready to the pooled bin. So what happens to the contents of an instance variable is controlled by the programmer. Remember that when an entity bean is passivated the instance gets logically disassociated from its remote object. Be careful here, as the functionality of passivation/activation for Stateless Session, Stateful Session and Entity beans is completely different. For entity beans the ejbPassivate method notifies the entity bean that it is being disassociated with a particular entity prior to reuse or for dereference.
What is a Message Driven Bean, what functions does a message driven bean have and how do they work in collaboration with JMS?
Message driven beans are the latest addition to the family of component bean types defined by the EJB specification. The original bean types include session beans, which contain business logic and maintain a state associated with client sessions, and entity beans, which map objects to persistent data. Message driven beans will provide asynchrony to EJB based applications by acting as JMS message consumers. A message bean is associated with a JMS topic or queue and receives JMS messages sent by EJB clients or other beans. Unlike entity beans and session beans, message beans do not have home or remote interfaces. Instead, message driven beans are instantiated by the container as required. Like stateless session beans, message beans maintain no client-specific state, allowing the container to optimally manage a pool of message-bean instances. Clients send JMS messages to message beans in exactly the same manner as they would send messages to any other JMS destination. This similarity is a fundamental design goal of the JMS capabilities of the new specification. To receive JMS messages, message driven beans implement the javax.jms.MessageListener interface, which defines a single onMessage() method. When a message arrives, the container ensures that a message bean corresponding to the message topic/queue exists (instantiating it if necessary), and calls its onMessage method passing the client’s message as the single argument. The message bean’s implementation of this method contains the business logic required to process the message. Note that session beans and entity beans are not allowed to function as message beans.
Does RMI-IIOP support code downloading for Java objects sent by value across an IIOP connection in the same way as RMI does across a JRMP connection?
Yes. The JDK 1.2 supports the dynamic class loading. The EJB container implements the EJBHome and EJBObject classes. For every request from a unique client
Does the container create a separate instance of the generated EJBHome and EJBObject classes?
The EJB container maintains an instance pool. The container uses these instances for the EJB Home reference irrespective of the client request. While referring the EJB Object classes the container creates a separate instance for each client request. The instance pool maintenance is up to the implementation of the container. If the container provides one, it is available otherwise it is not mandatory for the provider to implement it. Having said that, yes most of the container providers implement the pooling functionality to increase the performance of the application server. The way it is implemented is again up to the implementer.
What is the advantage of putting an Entity Bean instance from the Ready State to Pooled state?
The idea of the Pooled State is to allow a container to maintain a pool of entity beans that has been created, but has not been yet synchronized or assigned to an EJBObject. This mean that the instances do represent entity beans, but they can be used only for serving Home methods (create or findBy), since those methods do not relay on the specific values of the bean. All these instances are, in fact, exactly the same, so, they do not have meaningful state. Jon Thorarinsson has also added: It can be looked at it this way: If no client is using an entity bean of a particular type there is no need for caching it (the data is persisted in the database). Therefore, in such cases, the container will, after some time, move the entity bean from the Ready State to the Pooled state to save memory. Then, to save additional memory, the container may begin moving entity beans from the Pooled State to the Does Not Exist State, because even though the bean’s cache has been cleared, the bean still takes up some memory just being in the Pooled State.
Sunday, November 16, 2008
Struts Tutorial Interview Questions (Java)
Monday, November 10, 2008
Articles
- Google Talk: Run Multiple Instances or Login as Multiple Users
- How to Run Multiple Yahoo! Messengers and Login to Multi Yahoo! Messengers Accounts
- Marker Interface in Java
- Steps To Create A Digital Certificate
- How To Create a Signed Applet
- How to install run Java on iPhone
- Create Custom Ringtones for your iPhone
- Add new custom themes on your iPhone
- Integrating JSF Spring Hibernate
- JSF Interview Questions
- Java Interview Questions Spring Tutorial
- Java Interview Questions Hibernate Tutorial
- Java Interview Questions Struts Tutorial
- Java Interview Questions EJB Tutorial
- Java Interview Questions SQL...
- Java Interview Questions DB2 sql...
- Creating Apache Axis Web Service on MyEclipse
- Create Axis web service client for the remotely exposed web service
- Screen sharing using Vladimir Hmelyoff's screen sharing system (JScrCap) with Wowza
- Screen sharing, Desktop sharing software's and tools
- Technology evaluation on 3D interactive graphic development
- Setting Up Subversion and Tortoise Client
- How To Set Java Heap Size In Tomcat
- Change Netbeans default JDK
- javax.naming.NameNotFoundException
- Hibernate Lazy Initialization
- Lazy initialization in Hibernate with icefaces JSF and Spring
- Apache Tomcat 6 JNDI datasource setup
- How to Display Dynamic Image from BLOB
Monday, November 3, 2008
Some Useful Links
- AJAX - Mozilla Developer Center
- XML.com: Very Dynamic Web Interfaces
- AJAX Matters - Asynchronous JavaScript and XML and XMLHTTP development information
- Main Page - Ajax Patterns
- AJAX FAQ for the Java Developer - Greg Murray
- Rico - Java Script for Rich Internet Applications
- Asynchronous JavaScript and XML (AJAX)
- AJAX Matters - Asynchronous JavaScript and XML and XMLHTTP development information
- Google Web Toolkit - Build AJAX apps in the Java language
- OpenAjax Alliance
- Free 10-week AJAX Training Course by Sang Shin
- Google Groups: Google Web Toolkit
Algorithm
- Algorithm - Wikipedia, the free encyclopedia
- Algorithms - Google Search
- AI Horizon: Binary Search Algorithm for Searching Sorted Arrays
- Data Structures and Algorithms with Object-Oriented Design Patterns in C++
- Dictionary of Algorithms and Data Structures
- Dijkstra's algorithm - Wikipedia, the free encyclopedia
- Sorting Algorithms
- Java Sudoku Solver
- Combinatorial optimization - Wikipedia, the free encyclopedia
- Backtracking - Wikipedia, the free encyclopedia
- Depth-first search - Wikipedia, the free encyclopedia
- Heuristic - Wikipedia, the free encyclopedia
- Dijkstra Shortest Path Algorithm
CSS
- CSS Tutorial: Using In-line Style
- w3cschools CSS2 Reference
- W3 CSS Property index
- CSS Properties - HTML Dog
- CSS Style property table
- Cascading Style Sheets - Home Page
- Rapid CSS Editor 2004 - cascading style sheet editor
- CSS/HTML/XHTML Editing
- style-sheets.com (Style Studio - Product Info) css editor, css, style sheets, css tutorial, css reference, css articles, css positioning, css tools, css download and much more!
- style master :: css editor
- CSS 2.1 Spec
- hands on css tutorial
- CSS 2.1 Quick Reference
- CSS Frequently Asked Questions
- How To write Efficient CSS
- CSS Structure and Rules
- CSS1 Properties
- CSS Style Properties
- Simple API for CSS (SAC) version 1.3 - Java API
- CSSED User interface - Doc
- HTML XHTML CSS Book Examples
- css Zen Garden: The Beauty in CSS Design
- mezzoblue § css Zen Garden — Design List
- W3C Core CSS Preview Interface
- CSS Cheat Sheet - CSS - ILoveJackDaniels.com
- How to use CSS to Create a 'Two Step' Photographic Gallery - WebReference.com
- JustStyle CSS Editor - easy to use Cascade Style Sheets editor - Works on Windows, OS/2, Linux, MacOS X and Java platforms
- Web Style Guide, 2nd Edition
- Adjusting Tables for IE
- css.maxdesign.com.au - CSS resources and tutorials for web designers and web developers
- QuirksMode - for all your browser quirks
- glish.com : CSS layout techniques
- A List Apart: Articles: From Table Hacks to CSS Layout: A Web Designer’s Journey
- NYPL: Style Guide: CSS: Guidelines 3
- Web Page Design for Designers - Articles
- CaScadeS, the stylesheet editor for Composer
- 24 ways: Debugging CSS with the DOM Inspector
- The W3C CSS Validation Service
- Starting with HTML + CSS
- Dynamic Drive CSS Library- Practical CSS codes and examples
- HTML CSS Reference examples (example source code) Organized by topic
- HTML CSS Reference examples (example source code) Organized by topic
Design Pattern
- Java Design Patterns - FluffyCat.com
- Design pattern - Wikipedia
- JAVA DESIGN PATTERNS, Creational Patterns
- The Bridge Design Pattern
- Design Patterns in C# and VB.NET - Gang of Four (GOF)
- Java Design Patterns - Java World
- Martin Fowler: Articles
Dynamic HTML
- DHTML Objects - MSDN
- HTML and CSS - MSDN
- Samples using DOM 1, DOM 2, CSS and JS
- DHTML Demonstrations Using DOM/Style - MDC
GUI Development
Hibernate
HTML
- HTML 4.0 Elements listing
- HTML 4.01 Quick Reference
- DOM2 Quick Reference
- Traversing the HTML Table with JavaScript and DOM interfaces
- C82 • art, the web, and everything in between
- View Rendered Source Chart (Firefox Extension)
- View Rendered Source Chart (Firefox Extension)
- HTML CSS Reference examples (example source code) Organized by topic
- JavaScript 1.5 Reference
- Java Tip 105: Mastering the classpath with JWhich
- JavaScript 1.5 Guide
- JavaScript Language Resources
- Tests for ver5 browsers
- Calendar
- JavascriptGuide.com
- JavaScript Tutorials and Free JavaScripts for your website (thesitewizard.com)
- Deals2Buy Hot Coupons and Deals
- JavaScript Source: Free JavaScripts, Tutorials, Example Code, Reference, Resources, And Help
- Client-Side JavaScript Guide
- The JavaScript Diaries: Part 1 - webreference.com
- blueprints: Java Script
- Object Hierarchy and Inheritance in JavaScript
- Javascript in Ten Minutes (Javascript)
- Top 10 custom JavaScript functions of all time
- eDevil’s weblog » Blog Archive » Javascript libraries roundup
- Dynamic Drive DHTML(dynamic html) & JavaScript code library
- JavaScript DHTML examples (example source code) Organized by topic
- JavaScript Reference examples (example source code) Organized by topic
JavaEE
- J2EE Programming Class Part I - Sang Shin
- Application Integration: Sun Java System Access Manager 2004Q2 and JDBC Authentication Module
- Java Studio Enterprise 8 build kits
- JasperReports - Home
- J2EE Programming with Passion! Class Root Page
- Latest J2EE 1.4 Examples Java examples
JavaSE
- Overview (Java 2 Platform SE 5.0) API
- Examples from The Java Developers Almanac 1.4
- Java Examples from The Java Developers Almanac 1.4
- J2SE 5.0 Static Imports: To Use or Not to Use?
- Java's Architecture and the Challenges and Opportunies of Networks
- JavaBeans Short Course
- Introduction to the JavaBeans API: Short Course
- Java and JavaScript Programming, by Richard G Baldwin
- Java Tip 87: Automate the hourglass cursor
- Java Platform Migration Guide
- Tuning Garbage Collection with the 1.4.2 Java[tm] Virtual Machine
- TheServerSide.com - Java GUI Development: Reintroducing MVC
- Annotations - Software Reality
- Java Performance Tuning
- JUnit: A Cook’s Tour
- V1.4 JavaBeans API Enhancements
- Using JConsole
- Sizeof for Java - Java World Article
- swing-layout: Home
- FindBugs - Find Bugs in Java Programs
- JavaOne 2005 Hands-on Lab Home Page
- Sun Java Real-Time System
- A Collection of JVM options
- Java Technology Forums - Java Programming
- Latest J2SE 1.5.0 Examples Java examples
- CodeBrain.com JAVA HELP - Master Index
- Java Examples - JExamples.com
- Java by API examples (example source code) Organized by topic
- Java Products components (libraries, projects) Organized by topic
- Java examples (example source code) Organized by topic
- AngelikaLanger.com - Articles by Angelika Langer & Klaus Kreft - Angelika Langer Training/Consulting
- jdk6: Java SE 6
- Java examples (example source code) Organized by topic
- Setting up Java Shop
JDBC Rowset
JDNC & Swing Lab
Java Server Faces
- JavaServer Faces Home
- Put JSF to work
- Tag Library Documentation
- JSF 1.1 API documentation
- Standard HTML RenderKit Documentation
- JSF Tutorials - Web Site
- JSF Tutorial (Section of J2EE 1.4 Tutorial)
- Guideline to create Custom Component.
- Creating Custom COmponent - Visual Tutorial
- Creating JSF Custom Components
- Core JavaServer Faces - Book
- Creator Studio Field Guide - Book
- JamesHolmes.com Java Server Faces Resources
- For Developers: JavaServer Faces Components
- StrutsShale - Apache Struts Wiki
- Developing Java Server Faces Applications in Rational Application Developer (RAD)
- StrutsShale - Struts Wiki
- Inversion of Control Containers and the Dependency Injection pattern
- JavaServer Faces (JSF) Tutorials Net.
- TheServerSide.com - JavaServer Faces vs Tapestry - A Head-to-Head Comparison
- JSF sources
- Demonstration JSF Components Home Page
- JSF Central - JSF PhaseListener - Is This User Logged In?
- Step 7: Designing and Implementing Web Application Interfaces
- Using JavaServer Faces (JSF) Navigation Handler Decorator
Misc
- Sysinternals Freeware - Utilities for Windows NT and Windows 2000
- Safari Online
- JPMorgan Retirement Plan Services
- Main Page America Hurrah
- Lyrical - search
- Lassen Tour & Travel Inc.
- Masters of Deception
- Sysinternals Freeware - Handle
- Free Online Books
- Visual Studio Magazine - Create Master Pages in ASP.NET 2.0
- FTPOnline - The New ASP.NET 2.0 Code-Behind Model
- emp3world.com - Free Music Downloads mp3 lyrics and more
- CarBuyingTips.com new car buying guide, avoiding dealer scams, new cars, used car buying, selling
- New Car Quotes, Used Cars for Sale, Car Prices, Auto Reviews, Auto Purchase at Autobytel
- Central Computer Systems - Buy Computer Parts, Laptop Computers, Servers, and Repair
- Free ZIP Code Lookup with area code, county, geocode, MSA/PMSA.
- Hiking up Mission Peak, Fremont, CA
- XNote Stopwatch - Free Software Downloads and Software Reviews - Download.com
Netbeans
- NetBeans API List - Dev
- NetBeans API Index - 5.5
- platform: Tutorials
- Editor API
- Using NetBeans IDE 4.0 - Setting Up Your Project
- NetBeans IDE 4.0 Beta Applet Tutorial
- Using NetBeans IDE 4.0 - Communicating with a Database
- Scrambling of Third-Party/Binary Files
- How to use certain NetBeans APIs
- TWiki . Netbeans . ModuleDevelopment40
- Accessibility Testing Utilities - a11y
- How To Design a (module) API
- Module Developer Resources - Articles
- Information on the projects system
- Modules, JARs, Class Loaders, and the "Class Path"
- Installation Structure
- Annotations UsersView
- What is New in NetBeans Profiler Milestone 4
- XP Look & Feel for new Window System
- Netbeans: Annotations: Design View
- List of All Classes
- How to use certain NetBeans APIs
- Quick Start Guide for NetBeans Plug-in Modules
- UI Reviews for Promotion F
- TWiki . Netbeans . NetBeansDeveloperFAQ
- Split openide in to small jars
- Threading in the Open APIs
- core: To Thread or Not To Thread?
- Online CVS - Contrib dir
- shortcuts50.pdf (application/pdf Object)
- openide: How To Design a (module) API
- Component Palette - NetBeans Architecture Questions
- New unified UI of the Palette
- openide: API Reviews
- Using NetBeans IDE 5.0 - Communicating with a Database
- mdr: netbeans.org: MDR - Architecture
- platform: Introduction to the NetBeans Idioms and Infrastructure
- Meteora - New Graphic library project page
- Real Time Java Support in Netbeans
- Java Real Time Support NetBeans Module Getting Started Guide
- Database Explorer - NetBeans Architecture Questions
- Overview (Database Explorer API)
- AppFramework <>
- DataBinding <>
- Creating a Flash Demo of NetBeans IDE
- NetBeans - UI Spec for category switchers
- graph: netbeans.org : NetBeans Visual Library 2.0
- Wiki: NB6Concept
- Netbeans Profiler team internal Twiki
- NetBeans Wiki: Java_EditorUsersGuide
- Java EE Applications Learning Trail
- Persistence Editor Support Test Specification
- The Java™ WSIT Tutorial
- nb-openjdk: Getting and Building the Open Source javac Sources in NetBeans IDE
- nb-openjdk: OpenJDK - The Open Source JDK and NetBeans IDE
- RequirementsForAddNewTestToDailyTestInfrastructure <>
- UnitTests <>
- NETBEANS-FEEDBACK Mail List: By Thread
SQL
Web Development
- Project Cool Web Development Basics
- Web developer documentation for Mozilla
- W3Schools Online Web Tutorials
- Web design, development and marketing - ILoveJackDaniels.com
- Web Teaching Articles: Practical accessibility
- Viewable with Any Browser: Accessible Site Design Guide
- Application Developer's Guide - Source Organization
- Java Feature: Developing Intelligent Web Appllications with AJAX Part 2 @ JAVA DEVELOPER'S JOURNAL
- Java Feature: Rich Internet Components with JavaServer Faces @ JAVA DEVELOPER'S JOURNAL
- ICEfaces
- Adding Charts to Web-Based J2EE Applications
- Web Templates, Flash Templates, Website Templates Design - Template Monster
- Web Design Library — One-stop resource for web designers
- Google Code: Web Authoring Statistics: Pages and elements
- Web Templates | Website Templates Design | Flash Templates | Template Rover
- ASP.NET Developer Center: Design Templates
- 24 ways
- FreeTechBooks.com - Free programming and computer science books, ebooks and lecture notes
- Gayle Laakmann :: Interviews
- Google Interview Questions - GameDev.Net Discussion Forums
- Bruce Eckel's MindView, Inc: Article Index
- Javalobby Readers' Choice: Top Java Books