Here you will find all tutorial articles featured on Java Code Geeks. We categorize tutorials based on type. All of our articles are filed under a main category and are tagged based on their specific content, discussed technologies, tools and architectures. The Tutorials page is an index, a quick reference point for all of you who would like to get their hands right on what the Java Code Geeks community is tutoring about!
| |||
| |||
Java Tutorials
Core Java Tutorials
Lucene [Back to Top]
- An Introduction to Apache Lucene for Full-Text Search
- Did you mean feature with Apache Lucene Spell-Checker
Eclipse [Back to Top]
- Debugging a Production Server – Eclipse and JBoss showcase
- Eclipse: How attach Java source
- Eclipse Memory Analyzer (MAT)
- Eclipse Code Formatting Tips
- Customize PMD in Eclipse with your own rules
- Writing Eclipse Plugins Tutorial – Part 1
- Eclipse with EclEmma: Visualizing Code Coverage
- Github Gists in Eclipse
- SLF4J Logging in Eclipse Plugins
JDeveloper [Back to Top]
Exceptions [Back to Top]
Netbeans [Back to Top]
- Seven NetBeans Hints for Modernizing Java Code
- NetBeans 7.1: Create a Custom Hint
- NetBeans 7.2 Introduces TestNG
IntelliJ IDEA [Back to Top]
- What’s Cool In IntelliJIDEA Part I
- What’s Cool In IntelliJIDEA. Part II: Live Templates
- What’s Cool In IntelliJIDEA. Part III: External Tools
- IntelliJ IDEA Tip: Configuration Profiles
- TeamCity artifacts: HTTP, Ant, Gradle and Maven
- Developing a plugin for IntelliJ IDEA – some useful tips and links
- IntelliJ IDEA: Generate equals, hashCode and toString with Google Guava
DateFormat [Back to Top]
Google Guava [Back to Top]
- Google Guava Libraries Essentials
- Mocking with JodaTime’s DateTime and Google Guava’s Supplier
- Guava Files: Java File Management
- Google Guava v07 examples
- Guava’s Strings Class
- RateLimiter – discovering Google Guava
- Google Guava – Synchronization with Monitor
- Google Guava Concurrency – ListenableFuture
- Guava Functions & Java 8 Lambdas
- Guava Stopwatch
- Guava Preconditions Class
- Guava’s Objects Class: Equals, HashCode, and ToString
- Guava’s Collections2: Filtering and Transforming Java Collections
- Google Guava EventBus for Event Programming
- Google Guava MultiMaps
- Google Guava EventBus and Java 7 WatchService for Event Programming
- Google Guava BiMaps
- Functional Java collections
- Collection creation and Immutability with Google Guava
Functional programming [Back to Top]
- Functional programming with Map and Fold in Java
- Java: Faking a closure with a factory to create a domain object
- Functional style in Java with predicates – Part 1
- Functional style in Java with predicates – Part 2
Generics [Back to Top]
Regular Expressions [Back to Top]
Algorithms [Back to Top]
Collections [Back to Top]
- Java Best Practices – Vector vs ArrayList vs HashSet
- Java Best Practices – Queue battle and the Linked ConcurrentHashMap
- How to Avoid ConcurrentModificationException when using an Iterator
- Using a memory mapped file for a huge matrix
- Common and Unique Elements In Multiple Collections
- Array, list, set, map, tuple, record literals in Java
- Changing delay, and hence the order, in a DelayQueue
- Type-safe Empty Collections in Java
Classloading [Back to Top]
Serialization [Back to Top]
- Java Best Practices – High performance Serialization
- Cloning of Serializable and Non-Serializable Java Objects
- Google Protocol Buffers in Java
- Native C/C++ Like Performance For Java Object Serialization
- Java talking to iOS: Java objects to Apple plist serialization
Scheduling [Back to Top]
- Quartz scheduler plugins – hidden treasure
- Using Delayed queues in practice
- Quartz scheduler misfire instructions explained
- Quartz 2 Scheduler example
Strings [Back to Top]
- Java Best Practices – String performance and Exact String Matching
- Do it short but do it right !
- Generic Text Comparison Tool with LCS Approach
IO [Back to Top]
- Java Best Practices – Char to Byte and Byte to Char conversions
- Manipulating Files in Java 7
- Java 7: Copy and Move Files and Directories
- Java 7 #8: NIO.2 File Channels on the test bench
- Java 7: Closing NIO.2 file channels without loosing data
- Java 7: File Filtering using NIO.2 – Part 1
- Java 7: File Filtering using NIO.2 – Part 2
- Java 7: File Filtering using NIO.2 – Part 3
- Processing huge files with Java
Enums [Back to Top]
- Java Secret: Using an enum to build a State machine
- Automaton implementation in Java
- Of Hacking Enums and Modifying ‘final static’ Fields
Dependency Injection [Back to Top]
- Dependency Injection – The manual way
- Extract, Inject, Kill: Breaking hierarchies – Part 1
- Extract, Inject, Kill: Breaking hierarchies – Part 2
- How I explained Dependency Injection to My Team
Drools [Back to Top]
Preferences/Properties [Back to Top]
- Use java.util.prefs.Preferences instead of java.util.Properties
- Configure Java EE applications or “Putting Bien into practice”
Concurrency [Back to Top]
- Java Fork/Join for Parallel Programming
- Wordcounter, Counting Words in Java with Lambdas and Fork/Join
- Devoxx 2012: Java 8 Lambda and Parallelism, Part 1
- The Exchanger and GC-less Java
- Java Concurrency Tutorial – Semaphores
- Java Concurrency Tutorial – Reentrant Locks
- Java Concurrency Tutorial – Thread Pools
- Java Concurrency Tutorial – Callable, Future
- Java Concurrency Tutorial – Blocking Queues
- Java Concurrency Tutorial – CountDownLatch
- Concurrency optimization – Reduce lock granularity
- Using a ThreadPoolExecutor to Parallelize Independent Single-Threaded Tasks
- Java 7: How to write really fast Java code
- Threading stories: about robust thread pools
- Fork and join in Java 7 – JSR 166 concurrency utilities
- Java Concurrency with ReadWriteLock
- Solving a Producer-Consumer Problem in Java
- Java Thread deadlock – Case Study
- Java deadlock troubleshooting and resolution
- Java concurrency – Feedback from tasks
- Concurrency – Executors and Spring Integration
- A Generic and Concurrent Object Pool
- Locking with a semaphore : An example
- Investigating Deadlocks – Part 1
- Investigating Deadlocks – Part 2
- Investigating Deadlocks – Part 3
- Investigating Deadlocks – Part 4: Fixing the Code
- Investigating Deadlocks – Part 5: Using Explicit Locking
- Parallelization of a simple use case explained
- Java Lock Implementations
- Java Deadlock Example – How to analyze deadlock situation
- Java Thread Pool Example using Executors and ThreadPoolExecutor
Compression [Back to Top]
Encryption [Back to Top]
Garbage Collection [Back to Top]
- Low GC in Java: Use primitives instead of wrappers
- Practical Garbage Collection, part 1 – Introduction
- IBM JVM tuning – gencon GC policy
- Just in Time Compiler (JIT) in Hotspot
- Tracking excessive garbage collection in Hotspot JVM
- Compact Off-Heap Structures/Tuples In Java
Reflection/Invocation [Back to Top]
- A glimpse at Java 7 MethodHandle and its usage
- Java 7: A complete invokedynamic example
- Using the final keyword on method parameters
- Java pitfalls: Field access in inner classes
- Calling private Java methods publicly?
- Duck typing in Java ? Well, not exactly
Try Clause [Back to Top]
- Java 7: try-with-resources explained
- GC with Automatic Resource Management in Java 7
- Java 7: Project Coin in code examples
- Java 7 – Project Coin Decompiled
- Java 7′s Support for Suppressed Exceptions
Numbers [Back to Top]
Naming [Back to Top]
Design patterns [Back to Top]
- The Perfect Singleton
- Using the State pattern in a Domain Driven Design
- The Wizard Design Pattern
- GWT MVP made simple
- Building Games Using the MVC Pattern – Tutorial and Introduction
- Concurrency Pattern: Producer and Consumer
- The Strategy Pattern
- By your Command – Command design pattern
- Java EE Revisits Design Patterns: Asynchronous
- Java EE Revisits Design Patterns: Observer
- Implementing the State Machine Pattern as a Stream Processor
- Testing Abstract Classes and Template Method Pattern
- Chain of Responsibility Pattern in Java
- Demeter Law
- Chain Of Responsibility Design Pattern Example
- Factory Design Pattern Case Study
- JavaEE Revisits Design Patterns: Decorator
- Facade Design Pattern – Design standpoint
- Builder Design pattern in Java
- Decorate with decorator design pattern
- Using Builder Pattern in JUnit tests
- Fluent Object Creation
- Loan pattern in Java (a.k.a lender lendee pattern)
- Iterator Pattern and Java
- The builder pattern in practice
JAXB [Back to Top]
- Using JAXB to generate XML from XSD
- Reusing Generated JAXB Classes
- JAXB, SAX, DOM Performance
- Make your JAXB cleaner with the MOXy implementation
- XML parsing using SaxParser with complete code
- JAXB and Unmapped Properties
- Applying a Namespace During JAXB Unmarshal
- XML unmarshalling benchmark: JAXB vs STax vs Woodstox
- JAXB Custom Binding – Java.util.Date / Spring 3 Serialization
- Rest using Jersey – Complete Tutorial with JAXB, Exception Handling and Client Program
- JAXB – Representing Null and Empty Collections
Tools/Utilities [Back to Top]
- Using FindBugs to produce substantially less buggy code
- Findbugs Warnings By Sample
- Doclava: Custom Javadoc Doclet from Google
- Client-side server monitoring with Jolokia and JMX
- VisualVM: Monitoring Remote JVM Over SSH (JMX Or Not)
- ANTLR Tutorial – Hello Word
- ANTLR: Getting Started
- ANTLR – Semantic Predicates
- Generate QR Code image from Java Program
- Advanced ZK: Asynchronous UI updates and background processing – part 2
- ZK in Action: MVVM – Working Together with ZK Client AP
- Java Word (.docx) documents with docx4j
Testing [Back to Top]
- Code coverage with unit & integration tests
- Integration Testing with Selenium
- A Selenium/WebDriver example in Java
- Spring Selenium Tests With Annotations
- Running HTTP/REST Integration Tests efficiently in Eclipse
- JMeter: Load Testing Relational Databases
- TestNG and Maven configuration guide
- Mocks And Stubs – Understanding Test Doubles With Mockito
- Test-driving Builders with Mockito and Hamcrest
- Easy Unit and Integration Code Coverage
- Apache JMeter: Load Test Whatever You Want
- Java EE 6 Testing Part I – EJB 3.1 Embeddable API
- Java EE 6 Testing Part II – Introduction to Arquillian and ShrinkWrap
- Java EE 6 Web Profile. On the cloud. Easy.
- Testing legacy code: Hard-wired dependencies
- EasyMock tutorial – Getting Started
- Running unit tests and integration tests separately with Maven Failsafe and TestNG
Test Driven Development [Back to Top]
PowerMock [Back to Top]
JSON [Back to Top]
- Java JSON processing with Jackson
- MOXy as Your JAX-RS JSON Provider – Server Side
- MOXy as Your JAX-RS JSON Provider – Client Side
- Integrating Bean Validation with JAX-RS in Java EE 6
- JSON with GSON and abstract classes
- JSON for polymorphic Java object serialization
- JSON deserialization with Jackson and Super type tokens
- Testing REST with multiple MIME types
JUnit [Back to Top]
- Rules in JUnit 4.9 (beta 3)
- Java RESTful API integration testing
- Testing Techniques – Not Writing Tests
- The Misuse of End To End Tests – Testing Techniques 2
- What Should you Unit Test? – Testing Techniques 3
- Regular Unit Tests and Stubs – Testing Techniques 4
- Unit Testing Using Mocks – Testing Techniques 5
- Creating Stubs for Legacy Code – Testing Techniques 6
- JUnit Rules
- JUnit4 Parameterized and Theories Examples
- More on Creating Stubs for Legacy Code – Testing Techniques 7
- Why You Should Write Unit Tests – Testing Techniques 8
- Some Definitions – Testing Techniques 9
- JUnit Pass Test Case on Failures
- DB unit testing with dbUnit, JSON, HSQLDB and JUnit Rules
- Covering your tests with Cobertura, JUnit, HSQLDB, JPA
- Cobertura and Maven: Code Coverage for Integration and Unit Tests
- JUnit and Hamcrest: Improving On assertEquals
- Hamcrest Containing Matchers
- JUnit’s Built-in Hamcrest Core Matcher Support
- Moving Beyond Core Hamcrest in JUnit
- 5 Tips for Unit Testing Threaded Code
- Using PowerMock to Mock Constructors
- Testing Custom Exceptions with JUnit’s ExpectedException and @Rule
- JUnit test method ordering
Google APIs [Back to Top]
GPGPU [Back to Top]
Twitter4J [Back to Top]
- Java Twitter client with Twitter4j
- Twitter API on your Java Application
- The Twitter API Management Model
- Twitter REST API from Scala and Java using signpost
- Couchbase : Create a large dataset using Twitter and Java
JavaMail [Back to Top]
JVM [Back to Top]
SQL [Back to Top]
Profiling [Back to Top]
- Profile your applications with Java VisualVM
- JRockit jrcmd tutorial
- Java Thread CPU analysis on Windows
- HPROF – Memory leak analysis tutorial
- GC overhead limit exceeded – Java Heap analysis
- Java High CPU troubleshooting guide – part 1
- Dealing with Weblogic Stuck Threads
- JRockit – JRCMD useful commands
Performance [Back to Top]
PostgreSQL [Back to Top]
References [Back to Top]
Instrumentation [Back to Top]
- Patching Java at runtime
- Java Hidden code
- Manipulating Java Class Files with ASM 4 – Part One : Hello World!
- Manipulating Java Class Files with ASM 4 – Part Two: Tree API
UML [Back to Top]
Annotations [Back to Top]
Enterprise Java Tutorials
Spring [Back to Top]
- JBoss 4.2.x Spring 3 JPA Hibernate Tutorial
- Spring 3 HornetQ 2.1 Integration Tutorial
- Spring 3 RESTful Web Services
- Aspect Oriented Programming with Spring AspectJ and Maven
- Sending e-mails in Java with Spring – GMail SMTP server example
- JAX–WS with Spring and Maven Tutorial
- Securing GWT apps with Spring Security
- Spring Security: Prevent brute force attack
- RESTful Web Services with RESTeasy JAX-RS on Tomcat 7 – Eclipse and Maven project
- Exposing a POJO as a JMX MBean with Spring
- How to write better POJO Services
- Spring MVC Development – Quick Tutorial
- Spring MVC – Customizing RequestMappingHandlerMapping
- Spring MVC Form Validation (With Annotations)
- A Guide To Authenticating Users With Mozilla Persona
- Spring 3.1 Cache Abstraction Tutorial
- Securing your Tomcat app with SSL and Spring Security
- Spring 3.1 Caching and @CacheEvict
- Spring 3.1: Caching and EhCache
- Spring 3.1 Caching and Config
- Spring 3.1 – Loading Properties For XML Configuration From Database
- Spring, Quartz and JavaMail Integration Tutorial
- Spring MVC Controller JUnit Testing
- Spring MVC Error Handling Example
- Spring MVC REST Calls With Ajax
- SpringMVC 3 Tiles 2.2.2 Integration Tutorial
- Chunk Oriented Processing in Spring Batch
- jqGrid, REST, AJAX and Spring MVC Integration
- Integrating Jersey with Spring
- Spring Declarative Transactions Example
- Swapping out Spring Bean Configuration at Runtime
- Spring & Quartz Integration with Custom Annotation
- Getting started with Quartz Scheduler on MySQL database
- Spring MVC Interceptors Example
- Spring MVC for Atom Feeds
- Spring 3 Testing with JUnit 4 – ContextConfiguration and AbstractTransactionalJUnit4SpringContextTests
- Spring & Quartz Integration with Custom Annotation, the SPANN way
- Enhancing Spring Test Framework with beforeClass and afterClass setup
- Bootstrapping a web application with Spring 3.1 and Java based Configuration, part 1
- Building a RESTful Web Service with Spring 3.1 and Java based Configuration, part 2
- Securing a RESTful Web Service with Spring Security 3.1, part 3
- RESTful Web Service Discoverability, part 4
- REST Service Discoverability with Spring, part 5
- Basic and Digest authentication for a RESTful Service with Spring Security 3.1, part 6
- Authentication against a RESTful Service with Spring Security
- The persistence layer with Spring 3.1 and Hibernate
- Simplifying the Data Access Layer with Spring and Java Generics
- The Persistence Layer with Spring 3.1 and JPA
- The Persistence Layer with Spring Data JPA
- Spring Data JDBC generic DAO implementation – most lightweight ORM ever
- Transaction configuration with JPA and Spring 3.1
- Spring GWT Integration using the RequestFactory API
- Develop Restful web services using Spring MVC
- Spring MVC and REST at Google App Engine
- Domain modeling with Spring Data Neo4j
- Optimizing Neo4j Cypher queries
- Enabling JMX in Hibernate, EhCache, Quartz, DBCP and Spring
- REST Pagination in Spring
- Integration testing scoped beans in CDI 1.0 and Spring 3.1
- Spring 3, Spring Web Services 2 & LDAP Security
- Automatically generating WADL in Spring MVC REST application
- OAuth with Spring Security
- Spring Security Part 1 – Simple Login application with database
- Spring Security Part 2 – Password Encryption, Customize 404 and 403 error page
- Properties with Spring
- MyBatis 3 – Spring integration tutorial
- Spring 3 MVC Exception Handlers
- Set up a Spring 3 development environment
- Implementing Active Record Pattern with Spring AOP
- Spring Thread Pool Services
- Ajax with Spring MVC 3 using Annotations and JQuery
- Spring and Quartz: Multi-Job Scheduling Service
- Spring MVC and JQuery for Ajax Form Validation
- Project Configuration with Spring
- RESTful Web Applications with Jersey and Spring
- Spring Remoting Support and Developing RMI Service
- Configuring Quartz with JDBCJobStore in Spring
- Spring Remoting Support with Http Invoker
- DBUnit, Spring and Annotations for Database testing
- Spring 3: Type safe dependency injection
- Spring MVC 3 Controller for MyBatis CRUD operation
- Maven Integration Testing And Spring Restful Services
- Spring Integration with reCAPTCHA
- How to use RestTemplate with Basic Authentication in Spring
- Spring Testing Support with TestNG
- Spring Testing Support and Context caching
- Dynamic Property Management in Spring
- REST CXF for Spring JPA2 backend
- Distribute Spring Beans in Oracle Coherence
- Oracle Coherence: Distributed Data Management
- Coherence Event Processing by using Map Trigger Feature
- Getting Started with Spring Social
- Getting Started with Spring Social – Part 2
- Rube Goldberg Spring Integration
- Using Redis with Spring
- Redis pub/sub using Spring
- Spring 3.1 profiles and Tomcat configuration
- Wire object dependencies outside a Spring Container
- Spring 3.1 Caching and @Cacheable
- Spring Collection Merging
- Spring – Persistence layer – writing entities and configuring Hibernate
- Spring MVC Customized User Login Logout Implementation Example
- Spring – DAO 1and Service layer
- TaskletStep Oriented Processing in Spring Batch
- Spring – Adding AOP support
- Spring – Adding Spring MVC – part 1
- Spring – Adding Spring MVC – part 2
- Designing the domain model and the service layer
- JMX and Spring – Part 1
- JMX and Spring – Part 2
- JMX and Spring – Part 3
- Hazelcast Distributed Execution with Spring
- Spring Dynamic Language Support with Groovy
- ETags for REST with Spring
- Spring MVC 3: Upload multiple files
Java EE6 [Back to Top]
- Java EE6 Decorators: Decorating classes at injection time
- Java EE6 Events: A lightweight alternative to JMS
- Java EE6 CDI, Named Components and Qualifiers
- From Spring to Java EE 6
- Red Hat Openshift: Getting started – Java EE6 in the Cloud
- Writing Acceptance Tests for Openshift + MongoDb Applications
- Configure Java EE applications or “Putting Bien into practice”
- OpenShift Express: Deploy a Java EE application (with AS7 support)
- Spring3 + JPA2 + Java EE6 App Server = Confusion Over Configuration
- Rise above the Cloud hype with OpenShift
- OpenShift Express Web Management Console: Getting started
- Simulating CDI’s Session and Request Scope in a J2SE app
- Set up a Java EE 6 development environment
- The Java EE 6 Example – Galleria
- The Java EE 6 Example – Galleria Part 2
- The Java EE 6 Example – Galleria Part 3
Jenkins [Back to Top]
- Managing Jenkins job configurations
- Behavior-Driven Development (BDD) with JBehave, Gradle, and Jenkins
- Jenkins: Deploying JEE Artifacts
Google Guice [Back to Top]
ActiveMQ [Back to Top]
- JMS Development Fundamentals using Apache ActiveMQ
- Connect Glassfish 3 to external ActiveMQ 5 broker
- ActiveMQ Network Connectors
- JMS with ActiveMQ
Apache Mahout [Back to Top]
EhCache [Back to Top]
Apache Thrift [Back to Top]
Apache Solr [Back to Top]
Apache Struts [Back to Top]
Apache Digester [Back to Top]
Apache Wicket [Back to Top]
Apache Cassandra [Back to Top]
Grails [Back to Top]
- Build Twitter with Grails in 90 Minutes: The Gist of it
- Using Servlet 3.0 Async Features in Grails 2.0
- Grails Dynamic Dropdown
- Grails Custom AuthenticationProvider
Esper [Back to Top]
Log4J [Back to Top]
- Log4j, Stat4j, SMTPAppender Integration – Aggregating Error Logs to Send Email When Too Many
- How to change logging level in runtime
- The new log4j 2.0
Log4jdbc [Back to Top]
Logback [Back to Top]
- Filter irrelevant stack trace lines in logs
- Using slf4j with logback tutorial
- Forcing Tomcat to log through SLF4J/Logback
- Configure LogBack Logging with Spring
AOP [Back to Top]
- Aspect Oriented Programming with Spring AOP
- Domain Driven Design with Spring and AspectJ
- Practical Introduction into Code Injection with AspectJ, Javassist, and Java Proxy
- AOP made easy with AspectJ and Spring
- A Simple Introduction to AOP
- Clean code with aspects
- Email filtering using Aspect and Spring Profile
OSGi – JBoss Modules [Back to Top]
- OSGi Using Maven with Equinox
- JBoss Modules Example – Modular Web Application
- OSGi – Simple Hello World with services
- OSGI and Spring Dynamic Modules – Simple Hello World
- OSGi: An Introduction
- Introduction to OSGi – Modular Java
- MANIFEST.MF and feature.xml versioning rules
- OSGI – Modularizing your application
- Understanding how OSGI bundles get resolved
- Servlet Basic Auth in an OSGi environment
- OSGi case study: a modular vert.x
Hibernate [Back to Top]
- Hibernate mapped collections performance problems
- DataNucleus 3.0 vs Hibernate 3.5
- Spring MVC3 Hibernate CRUD Sample Application
- Hibernate by Example – Part 1 (Orphan removal)
- Hibernate by Example – Part 2 (DetachedCriteria)
- Hibernate cache levels tutorial
- Hibernate Performance Tips: Dirty Collection Effect
- Hibernate Tip: Sort and Order
- Load or Save Image using Hibernate – MySQL
- Schema Creation Script With Hibernate 4, JPA And Maven
JPA [Back to Top]
- Java Persistence API: a quick intro…
- High performance JPA with GlassFish and Coherence – Part 1
- High Performance JPA with GlassFish and Coherence – Part 2
- High Performance JPA with GlassFish and Coherence – Part 3
- JNDI and JPA without J2EE Container
- Tutorial: Hibernate, JPA – Part 1
- Tutorial: Hibernate, JPA & Spring MVC – Part 2
- Registering entity types with OpenJPA programmatically
- Batoo JPA – 15x Faster Than The Leading JPA Provider
- Grails: Autodiscovery of JPA-annotated domain classes
- JPA/Hibernate: Version-Based Optimistic Concurrency Control
- Database Encryption Using JPA Listeners
- Ultimate JPA Queries and Tips List – Part 1
- Ultimate JPA Queries and Tips List – Part 2
- Ultimate JPA Queries and Tips List – Part 3
- EasyCriteria – An easy way to use the JPA Criteria
JWebSocket [Back to Top]
Arquillian [Back to Top]
- Arquillian with NetBeans, GlassFish embedded, JPA and a MySQL Datasource
- Arquillian with NetBeans, WebLogic 12c, JPA and a MySQL Datasource
Distributed Computing/Big Data [Back to Top]
- Cajo, the easiest way to accomplish distributed computing in Java
- MapReduce: A Soft Introduction
- MapReduce Algorithms – Order Inversion
- Hadoop: A Soft Introduction
- MapReduce Algorithms – Secondary Sorting
- Hadoop Modes Explained – Standalone, Pseudo Distributed, Distributed
- Apache Bigtop – Installing Hadoop
- Apache Bigtop – Installing Hive, HBase and Pig
- Distributed Apache Flume Setup With an HDFS Sink
- Big Data analytics with Hive and iReport
- Apache Mahout: Getting started
- Joins with Map Reduce
- Complete Guide To Deploy Java Web Application in Amazon Ec2 using Eclipse
- Hadoop + Amazon EC2 – An updated tutorial
- MapReduce: Working Through Data-Intensive Text Processing – Local Aggregation Part II
- Hadoop Single Node Set Up
Complex Event Processing [Back to Top]
Couchbase [Back to Top]
GWT [Back to Top]
- GWT 2 Spring 3 JPA 2 Hibernate 3.5 Tutorial
- GWT Spring and Hibernate enter the world of Data Grids
- Adding CAPTCHA to your GWT application
- GWT 2 Spring 3 JPA 2 Hibernate 3.5 Tutorial – Eclipse and Maven 2 showcase
- Add JSON capabilities into your GWT application
- Getting started with GWT
- GWT and HTML5 Canvas Demo
SmartGWT [Back to Top]
- Getting Started with SmartGWT for awesome GWT interfaces
- Advanced SmartGWT Tutorial, Part 1
- Advanced SmartGWT Tutorial, Part 2
Play! Framework [Back to Top]
- Simple Twitter: Play Framework, AJAX, CRUD on Heroku
- Play framework modules: Divide and conquer
- Play! Framework + Google Guice
- Play framework on the cloud made easy: Openshift module
- Play 2.0: Akka, Rest, Json and dependencies
- Play 2.0 framework and XA transactions
- Play framework 2 quicktip: Scala console
- Protect a REST service using HMAC (Play 2.0)
- Play!ing (2.0) with Twitter Bootstrap, WebSockets, Akka and OpenLayers
- Writing modules for Play 2, part 1: Get something working
- Writing modules for Play 2, part 2: Interceptors
- Binary websockets with Play 2.0 and Scala
- Publishing Play 2 modules on github
- Troubleshooting Play Framework 2 apps on Openshift
RabbitMQ [Back to Top]
- RabbitMQ Module for Play! Framework
- RabbitMQ: Scheduled Message Delivery
- Connect to RabbitMQ (AMQP) using Scala, Play and Akka
Maven [Back to Top]
Memcached [Back to Top]
Apache Camel [Back to Top]
- Camel: Now with Twitter and Websocket
- REST endpoint for integration using Apache Camel
- Apache Camel Tutorial – Introduction to EIP, Routes, Components, Testing and other Concepts
- Impressive first Apache Camel release
- Getting started with Apache Camel
- Camel: Build a message based application
- Camel 2.11 – HTTP proxy routes with url rewriting functionality
Apache Commons [Back to Top]
ADF [Back to Top]
- ADF Declarative Component example
- ADF: Using UI Categories with Dynamic form
- Dynamic ADF Train: Adding train stops programmatically
- ADF: Backing bean scope in task flow finalizer
- ADF BC: Create a UI table binded to Business Components
- ADF Task Flow: Managed bean scopes for page fragments
- Oracle ADF Mobile World! Hello!
Web Services [Back to Top]
- Web Services in Ruby, Python and Java
- Web Services with JAX-WS on Tomcat
- Expose Java service as a web service
REST Services [Back to Top]
- Simplifying RESTful Search
- WADL in Java: Gentle introduction
- How should REST services be documented?
- RESTEasy Tutorial Part-1: Basics
- RESTEasy Tutorial Part-2: Spring Integration
- RESTEasy Tutorial Part-3: Exception Handling
- Simple REST client in Java
EJB [Back to Top]
- GWT EJB3 Maven JBoss 5.1 integration tutorial
- An Introduction to EJB 3.0 Injection and Lookup
- Basic EJB References, Injection and Lookup
- EJB Programmatic Lookup
- EJB 3.1 Global JNDI Access
- References to EJBs Outside Your Application With Oracle WebLogic
Tomcat [Back to Top]
- Zero-downtime Deployment (and Rollback) in Tomcat; a walkthrough and a checklist
- Multiple Tomcat Instances on Single Machine
- Launching and Debugging Tomcat from Eclipse without complex plugins
- Virtual Host + Apache httpd server + Tomcat + mod_jk connector
- Using Tomcat JDBC Connection Pool in Standalone Java Application
- Apache HTTP server with Tomcat on SSL
- Tomcat Clustering Series Part 1 : Simple Load Balancer
- Tomcat Clustering Series Part 2 : Session Affinity Load Balancer
- Tomcat Clustering Series Part 3 : Session Replication
- Tomcat Clustering Series Part 4 : Session Replication using Backup Manager
- Standalone web application with executable Tomcat
- Super Quick Tomcat App Deployment Using a PULL Script
Servlets/JSPs [Back to Top]
- Servlet 3.0 Async Processing for Tenfold Increase in Server Throughput
- Hacking Jasper to Get Object Model of a JSP Page
- ServletRequest startAsync() limited usefulness
JBoss [Back to Top]
- Hello World’ portlet on JBoss Portal
- JBoss AS 7 EJB3 Pools Configuration
- JBoss AS 7: Custom Login Modules
- Sending Event Invitations With Seam
- JBoss BRMS 5.3 – adding on Business Activity Monitoring (BAM) Reporting
Google App Engine [Back to Top]
- Google App Engine Java Capabilities and Namespaces API
- App Engine Java Development with Netbeans
- Google App Engine: Host application in your own domain
- Android App Engine Integration
- Google App Engine JAX-RS REST service
- Android Tutorial: Enter the DROID World
- Google AppEngine: Task Queues API
- Google App Engine Full Text Search with Cloud SQL
- Google Services Authentication in App Engine, Part 1
- Google Services Authentication in App Engine, Part 2
Apache CXF [Back to Top]
Security [Back to Top]
- Apache Shiro : Application Security Made Easy
- AppSensor – Intrusion Detection
- Apache Shiro Part 1 – Basics
- Apache Shiro Part 2 – Realms, Database and PGP Certificates
- Apache Shiro Part 3 – Cryptography
- Sandboxing Java Code
- Java JAAS form based authentication
- Key Exchange Patterns with Web Services Security
- Preventing CSRF in Java web apps
- Database and Webapp Security
- Anti cross-site scripting (XSS) filter for Java web apps
- GlassFish JDBC Security with Salted Passwords on MySQL
- Using Cryptography in Java Applications
MongoDB [Back to Top]
- Using MongoDB with Morphia
- Morphia and MongoDB: Evolving Document Structures
- MongoDB with Spring Data project
- Storing hierarchical data in MongoDB
- MapReduce with MongoDB
- Polyglot Persistence: EclipseLink with MongoDB and Derby
- MongoDB with Java Kickstart
- Sorting Spring Data MongoDB collections using @OrderBy
- MongoDB in 30 minutes
- Testing Spring Data MongoDB Applications with NoSQLUnit
- SpiderMonkey to V8 for MongoDB and mongometer
JSF [Back to Top]
- Parametrizing custom validator in JSF 2
- JSF and the “immediate” Attribute – Command Components
- Spring & JSF integration: Navigation
- 5 useful methods JSF developers should know
- JSF 2, PrimeFaces 3, Spring 3 & Hibernate 4 Integration Project
- Lazy JSF Primefaces Datatable Pagination – Part 1
- Lazy JSF Primefaces Datatable Pagination – Part 2
- Integrating Spring & JavaServer Faces : Improved Templating
- Spring & JSF integration: Dynamic Navigation
- Custom JSF validator for required fields
- Spring & JSF integration: Pagination
- Spring & JSF integration: Converters
- Spring & JSF integration: Internationalization and Localization
- Spring & JSF integration: Select Items
- Dynamic forms, JSF world was long waiting for
- Full WebApplication JSF EJB JPA JAAS – Part 1
- Full WebApplication JSF EJB JPA JAAS – Part 2
- JasperReports JSF Plugin Use Cases Series
- JasperReports JSF Plugin Use Cases – Simple List Report
- Service-Oriented UI with JSF
- PrimeFaces Push with Atmosphere on GlassFish 3.1.2.2
- Configure timeout for CDI conversations
- Running RichFaces on WebLogic 12c
- JSF Event-based communication: Old-school approach
- JSF Simple Ajax Samples
- JSF Event-based communication: New-school approach
- Session Timeout Handling on JSF AJAX request
- GET / POST with RESTful Client API
- Lightweight Web Application: PrimeFaces (JSF) + Guice + MyBatis (Part 1)
- Lightweight Web Application Framework: PrimeFaces (JSF) + Guice + MyBatis (Part 2)
MyBatis [Back to Top]
- Configuring MyBatis 3
- MyBatis Tutorial – CRUD Operations and Mapping Relationships – Part 1
- MyBatis Tutorial – CRUD Operations and Mapping Relationships – Part 2
Vaadin [Back to Top]
- Vaadin add-ons and Maven
- EJB Lookup in a Vaadin Application
- Embedded Jetty, Vaadin and Weld
- Run Vaadin Apps in Intellij IDEA
Git [Back to Top]
- Git DVCS – Getting started
- My walk through the Git book
- Git Tutorial – Getting Started
- GitHub Social Graphs with Groovy and GraphViz
Redmine [Back to Top]
Akka [Back to Top]
- Even simpler scalability with Akka through RegistryActor
- Processing 10 million messages with Akka
- Akka STM – Playing PingPong with STM Refs and Agents
- Your first message – discovering Akka
Jetty / WEB [Back to Top]
- How to use SPDY with Jetty
- Setting up JNDI with Jetty (Embedded)
- High Performance Webapps – Data URIs
- Netty: Using SPDY and HTTP transparently
- Jetty and Eclipse Integration in 3 Steps
- Going REST: embedding Jetty with Spring and JAX-RS (Apache CXF)
Groovy [Back to Top]
- Using Groovy – A soft introduction
- Simple but powerful DSL using Groovy
- Groovy 1.8.0 – meet JsonBuilder!
- Exposing Functionality Over HTTP with Groovy and Ultra-Lightweight HTTP Servers
- Using Groovy scriptlets inside a *.docx document
- Groovy JDK (GDK): Date and Calendar
- Groovy: Multiple Values for a Single Command-line Option
- A simple Groovy issue tracker using file system
Desktop Java Tutorials
Youtube [Back to Top]
Swing [Back to Top]
- Sometimes in Java, One Layout Manager Is Not Enough
- Graphics Tutorial
- Java GUI Application Shutdown Gotcha
- Create new message notification pop up in Java
- Make JFrame transparent
- Transparent JFrame using JNA
- Multi-threading in Java Swing with SwingWorker
Xuggler [Back to Top]
- RTMP To RTSP re-stream using wowza and xuggler
- Introduction to Xuggler for Video Manipulation
- Xuggler Tutorial: Transcoding and Media Modification
- Xuggler Tutorial: Frames Capture and Video Creation
JavaFX [Back to Top]
- JavaFX 2.0 beta sample application and after thoughts
- Integrating JavaFX 2.0 with Swing and SWT
- PopupMenu in JavaFX 2
- JavaFX 2.0 Bar and Scatter Charts (and JavaFX 2.1 StackedBarCharts)
- Best Practices for JavaFX Mobile Applications, Part 1
- Best Practices for JavaFX Mobile Applications, Part 2
- JavaFX: Creating a Sprite Animation
- Building Rich Clients with JacpFX and JavaFX2
- JavaFX 2 GameTutorial Part 1
- JavaFX 2 GameTutorial Part 2
- JavaFX 2 GameTutorial Part 3
- JavaFX Game (Connect Four)
- JavaFX-Based SimpleDateFormat Demonstrator
- JBox2D and JavaFX: Events and forces
- Profiling JavaFX Mobile applications
- JavaFX 2 GameTutorial Part 4
- Using the JavaFX AnimationTimer
- Pure Java JavaFX 2.0 Menus
- JavaFX 2.0 Hello World
- JavaFX 2: Create Login Form
- JavaFX Tutorial – Basics
- Expression Based PathTransitions in JavaFX
- JavaFX 2.0 Layout Panes – HBox and VBox
- JavaFX 2.0 Layout Panes – FlowPane and TilePane
- Writing a Tile Engine in JavaFX
- JavaFX 2 XYCharts and Java 7 Features
JavaCV [Back to Top]
Android Tutorials
Android App Tutorials
- Install Android OS on your PC with VirtualBox
- Android Location Based Services Application – GPS location
- Android Reverse Geocoding with Yahoo API – PlaceFinder
- Android Text-To-Speech Application
- Android Full App, Part 1: Main Activity UI
- Android Full App, Part 2: Using the HTTP API
- Android Full App, Part 3: Parsing the XML response
- Android Full App, Part 4: Performing the API request asynchronously from the main activity
- Android Full App, Part 5: Launching new activities with intents
- Android Full App, Part 6: Customized list view for data presentation
- Boost your Android XML parsing with XML Pull
- Android Full App, Part 7: Using options menus and customized dialogs for user interaction
- Android Reverse Engineering and Decompilation
- Android: Copy-paste with Intent and support for HTML
- Android Full App, Part 8: Creating an AppWidget for the home screen
- Android Proximity Alerts Tutorial
- Android Quick Preferences Tutorial
- Android JSON Parsing with Gson Tutorial
- Android Animations – Quick Guide
- Android XML Binding with Simple Framework Tutorial
- Android Google Maps Tutorial
- Android HTTP Camera Live Preview Tutorial
- Android: Menu Class Investigation
- Android Dependency Injection and Testing Libraries
- Android: Gallery View without Pictures
- Android Drag and Drop Tutorial
- Learning Android: Getting a service to communicate with an activity
- Learning Android: Freezing the UI with a BroadcastReceiver
- Android – Read file from Assets
- Android – Load WebView with ProgressBar
- Android Broadcast Receiver – Change in flow since API 3.1
- Android Game Development with libgdx – Prototype in a day, Part 1a
- Android Game Development with libgdx – Prototype in a day, Part 1b
- Android Dialog – Android Custom Dialog
- Android: Smooth List Scrolling
- Android – Dashboard design pattern implementation
- Android broadcast receiver: Registering/unregistering during runtime
- Java to iOS Objective-C translation tool and runtime
- Android: Leaf fall-like animation using property animators
- Android Homescreen Widget with AlarmManager
- Android dynamic and XML layout
- Android Custom Hyperlinked TextView
- Android AlarmManager tutorial
- Android ListView example with Image and Text
- Android: Finding the SD Card Path
- Android: Multi-touch gestures controller
- Android UI: Taking a look at iosched open source app
- Android TextView with custom fonts
Android Game Tutorials
- Android Game Development – The Game Idea
- Android Game Development – Create The Project
- Android Game Development – A Basic Game Architecture
- Android Game Development – A Basic Game Loop
- Android Game Development – Displaying Images with Android
- Android Game Development – Moving Images on Screen
- Android Game Development – The Game Loop
- Android Game Development – Measuring FPS
- Android Game Development – Sprite Animation
- Android Game Development – Particle Explosion
- Android Game Development – Design In-game Entities – The Strategy Pattern
- Android Game Development – Using Bitmap Fonts
- Android Game Development – Switching from Canvas to OpenGL ES
- Android Game Development – Displaying Graphical Elements (Primitives) with OpenGL ES
- Android Game Development – OpenGL Texture Mapping
- Android Game Development – Design In-game Entities – The State Pattern
Scala Tutorials
Core Scala Tutorials
- Fun with function composition in Scala
- Scala Tutorial – Scala REPL, expressions, variables, basic types, simple functions, saving and running programs, comments
- Scala Tutorial – Tuples, Lists, methods on Lists and Strings
- Scala Tutorial – conditional execution with if-else blocks and matching
- Scala Tutorial – iteration, for expressions, yield, map, filter, count
- Scala Tutorial – regular expressions, matching
- Scala Tutorial – regular expressions, matching and substitutions with the scala.util.matching API
- Scala Tutorial – Maps, Sets, groupBy, Options, flatten, flatMap
- Scala Tutorial – scala.io.Source, accessing files, flatMap, mutable Maps
- Scala Tutorial – objects, classes, inheritance, traits, Lists with multiple related types, apply
- Scala Tutorial – scripting, compiling, main methods, return values of functions
- Scala Tutorial – SBT, scalabha, packages, build systems
- Scala Tutorial – code blocks, coding style, closures, scala documentation project
- DI in Scala: Cake Pattern pros & cons
- First steps with Scala, say goodbye to bash scripts…
- Scala: Working with Predicates
- Implicit Conversions in Scala
- JavaFX 2.0 and Scala, Like Milk and Cookies
- Variations for computing results from sequences in Scala
- Student Questions about Scala, Part 1
- Scala Basic XML processing
- Processing JSON in Scala with Jerkson
- A crash course in Scala types
- ScaTDD: Casting an eye over three major Test frameworks in Scala
- Power with control: Scala control structures and abstractions
- Getting started with Scala and Scalatra – Part I
- Getting started with Scala and Scalatra – Part II
- Getting started with Scala and Scalatra – Part III
- Getting started with Scala and Scalatra – Part IV
- Starting with Scala Macros: a short tutorial
- Scala function literals
- Probability distribution for programmers
- Scala: Do you partially understand this?
- Scala: Collections 1
- Scala pattern matching: A Case for new thinking?
Communications Tutorials
Kannel [Back to Top]
OpenFire/Smack [Back to Top]
- Openfire server installation – Infrastructure for Instant Messaging
- Openfire server configuration – Infrastructure for Instant Messaging
- XMPP IM with Smack for Java applications – Infrastructure for Instant Messaging
- Gateway interaction in Smack API
CometD [Back to Top]

