IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE48

PARTNER PERSPECTIVE
SPONSORED AVER TISING CONTENT

IMPORTANT TOOLS
Java is a viable alternative for system programmer batch utilities

ANDREW ROWLEY
Owner

As a systems programmer, from time to time you probably write small utility programs
to make your job easier. You might write them in REXX or even Assembler. But have
you considered Java*?
Java has become well accepted as an application programming language on z/OS*.
IBM's Java Batch Launcher and Toolkit (JZOS) also makes it simple to run Java in batch
and provides classes to access various system services. This makes Java a real alternative
for system programmer batch utilities.
Java has some major advantages over REXX and Assembler. Built-in libraries like
Java Collections simplify programming problems. Portable code means that samples
published on the internet for other platforms can be easily adapted to z/OS. Free
and open-source libraries provide solutions for common problems. As a result, many
problems are more easily solved in Java than other languages on z/OS.

Black Hill Software

Andrew Rowley has been
working with z/OS and its
predecessors since 1991 and
started Black Hill Software
in 2006.

Black Hill Software
211 Dana St.
Ballarat VIC 3350, Australia
Andrew Rowley
+61-3-5331-8201
info@blackhillsoftware.com
blackhillsoftware.com

Java Collections
The Collections Framework is possibly the most important tool in the Java toolbox.
Two of the most useful collections are the ArrayList and the HashMap. The ArrayList is
an array that resizes as required. The HashMap is a collection of items accessed by key.
HashMap simplifies all sorts of tasks. For example, when comparing two lists of items
with the same keys (e.g., catalog entries), you can store one list in a HashMap and then
compare items from the other list, with no dependency on the order of items. You can
also use a HashMap to accumulate statistics by key, which makes calculating group
totals simple-again with no requirement that the data be in order.
Other more specialized collections implement sets, queues and stacks as well as
other types of lists and maps.
Sample Code and Open Source Libraries
Whatever your problem, chances are that someone else has been there before-but
not necessarily on z/OS. The ability to use samples published for other platforms is a
great time saver. For example, sending email from z/OS through Gmail, with TLS and
user authentication took about 30 minutes to implement using samples posted on
the internet.
There are also free and open-source libraries providing more comprehensive solutions
to various common problems. Apache Commons and Google Guava are well-known
examples. Why not give Java a try, and see what problems it can solve for you?
For more information, Java on z/OS examples and a Java API for SMF data visit:
blackhillsoftware.com/java

48 // 2017 ibmsystemsmag.com/buyersguide

pg 8-C4.indd 41

12/1/16 9:46 AM


http://www.blackhillsoftware.com https://twitter.com/blackhillsoft http://www.blackhillsoftware.com/java http://www.ibmsystemsmag.com/buyersguide

IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition

Table of Contents for the Digital Edition of IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition

Editor's Letter
Featured Products
Application Development
Business Intelligence/Analytics
Business Management
Communications and Connectivity
Database
Education
HA/DR/Backup
Hardware
Linux on z Systems
Mobile
Office Automation and Office Support
Performance
Security
Services/Consulting
Software Vertical Markets
Systems Management
Tools and Utilities
Web Development and Enablement
Business Necessities
Accessing Innovation
Constant Improvement
Secure From the Metal On Up
Handling Complexity
CM First Group: Application Development
DataKinetics: Database
MVS Solutions: Performance
Black Hill Software: Tools & Utilities
Compuware Corp.: Tools & Utilities
Product Index
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE1
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE2
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE3
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE4
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE5
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Editor's Letter
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Featured Products
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - CM First Group: Application Development
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Application Development
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE10
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE11
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE12
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE13
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Business Necessities
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Business Intelligence/Analytics
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Business Management
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Communications and Connectivity
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - DataKinetics: Database
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Education
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - HA/DR/Backup
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE21
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE22
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Hardware
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Accessing Innovation
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Office Automation and Office Support
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Constant Improvement
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - MVS Solutions: Performance
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Performance
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE29
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE30
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE31
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Secure From the Metal On Up
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Security
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE34
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE35
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE36
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE37
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE38
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE39
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE40
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE41
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Services/Consulting
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Software Vertical Markets
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE44
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Systems Management
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Handling Complexity
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE47
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Black Hill Software: Tools & Utilities
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Compuware Corp.: Tools & Utilities
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Tools and Utilities
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE51
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Web Development and Enablement
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - Product Index
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE54
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE55
IBM Systems Magazine, Mainframe - January/February 2017 Solutions Edition - SE56
http://www.ibmsystemsmagmainframedigital.com/mspcomm/ibmsystemsmag/ibmsystems_mainframe_20200910
http://www.ibmsystemsmagmainframedigital.com/mspcomm/ibmsystemsmag/ibmsystems_mainframe_20200708
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20200506
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20200304
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20200102
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/2020mfse
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20191112
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20190910
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20190708
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20190506
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20190304
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/relevantz_20190102
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/2019mfse
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20190102
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20181112
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20180910
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20180708
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20180506
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20180304
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20180102
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/2018mfse
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20171112
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20170910
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20170910_v2
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20170708
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20170506
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20170304
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_sesupp
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20170102
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_linuxsupp
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20161112
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/MainframeSecurity
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20160910
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20160708
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20160506
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20160304
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20160102
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20151112
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20150910_se
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20150910
http://www.ibmsystemsmagmainframedigital.com/MFSkills
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20150708
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20150506_supp
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20150506
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20150304
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20150102
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20141112
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20140910_v2
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20140910
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20140708
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_gt_201405
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/BigData
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20140506
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20140304
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20140102
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20131112
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20130910_v2
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20130910
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20130708
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20130506
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20130304
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20130102
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20121112
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/buyersguide2013
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20120910
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20120708
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20120506
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20120304
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20120102
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/ibmsystems_mainframe_2012bg
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20111112
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20110910
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20110708
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20110506
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20110304
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20110102
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20101112
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20100910
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20100910_bg
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20100708
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20100506
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20100304
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20100102
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20091112
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20090910
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20090708
http://www.ibmsystemsmagmainframedigital.com/nxtbooks/ibmsystemsmag/mainframe_20090506
https://www.nxtbook.com/nxtbooks/ibmsystemsmag/mainframe_20090304
https://www.nxtbookmedia.com