Free Sample
+ Collection

Spring Python 1.1

Greg L. Turnquist

Create powerful and versatile Spring Python applications using pragmatic libraries and useful abstractions
RRP $26.99
RRP $44.99
Print + eBook

Want this title & more?

$12.99 p/month

Subscribe to PacktLib

Enjoy full and instant access to over 2000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

Book Details

ISBN 139781849510660
Paperback264 pages

About This Book


  • Maximize the use of Spring features in Python and develop impressive Spring Python applications
  • Explore the versatility of Spring Python by integrating it with frameworks, libraries, and tools
  • Discover the non-intrusive Spring way of wiring together Python components
  • Packed with hands-on-examples, case studies, and clear explanations for better understanding 

Who This Book Is For

This book is for Python developers who want to take their applications to the next level, by adding/using parts that scale their application up, without adding unnecessary complexity. It is also helpful for Java developers who want to mix in some Python to speed up their coding effort.

Table of Contents

Chapter 1: Getting Started with Spring Python
Spring Python for Python developers
Spring Python for Java developers
Extending Spring Python
Installing Spring Python
Spring Python community
Chapter 2: The Heart of Spring Python—Inversion of Control
Swapping production code with test doubles
Container versus Context
Debate about IoC in dynamic languages
Migrating a Spring Java application to Python
Chapter 3: Adding Services to APIs
AOP from 10,000 feet
Adding caching to Spring Python objects
AOP is a paradigm, not a library
Testing our aspects
Chapter 4: Easily Writing SQL Queries with Spring Python
The classic SQL issue
The Spring triangle—Portable Service Abstractions
Using DatabaseTemplate to retrieve objects
DatabaseTemplate and ORMs
Testing our data access layer with mocks
How much testing is enough?
Chapter 5: Adding Integrity to your Data Access with Transactions
Classic transaction issues
Simplify by using @transactional
The Spring Triangle—Portable Service Abstractions
Programmatic transactions
Making new functions play nice with existing transactions
Applying transactions to non-transactional code
Testing your transactions
Chapter 6: Securing your Application with Spring Python
Problems with coding security by hand
Building web applications ignoring security
Handling new security requirements
Time to add security to our application
Accessing security data from within the app
Testing application security
Configuring SQL-based security
Configuring LDAP-based security
Using multiple security providers is easy
Coding our own security extension
Some of the challenges with Spring Python Security
Chapter 7: Scaling your Application Across Nodes with Spring Python's Remoting
Introduction to Pyro (Python Remote Objects)
Converting a simple application into a distributed one on the same machine
Scaling our application
Chapter 8: Case Study I—Integrating Spring Python with your Web Application
Requirements for a good bank
Building a skeleton web application
Securing the application
Building some basic customer functions
Coding more features
Issues with customer features
Remotely accessing logs
Creating audit logs
Chapter 9: Creating Skeleton Apps with Coily
Plugin approach of Coily
Required parts of a plugin
Creating a skeleton CherryPy app
Chapter 10: Case Study II—Integrating Spring Python with your Java Application
Building a flight reservation system
Issues with wrapping Java code

What You Will Learn


  • Use the most advanced Inversion of Control or Dependency Injection container for Python
  • Quickly write SQL queries without having to manage the connections
  • Plug-in raw SQL without having to learn another query language
  • Find out how to scale your application by spreading your components across multiple machines
  • Link Python and Java components together with little effort through the power of Jython
  • Learn how to add security to your Python application without breaking the bank
  • Utilize sophisticated database transactions without rewriting your application
  • Configure database or LDAP-based Spring Security for your Python application
  • Split your single-node application into a multi-node, scalable application with minimal changes
  • Discover how to use Spring Python's command-line utility and write your own plugin
  • See how all the blocks work together in the case studies—filled with code samples, screenshots, and high-level diagrams

In Detail

Spring Python captures the concepts of the Spring Framework and Spring Security and brings them to the world of Python and provides many functional parts to assemble applications. Spring Python is all about using the many useful features of Spring to the fullest and making these features available when working with Python.

Get to grips with all of the concepts of Spring and apply these to the language and environment of Python to develop powerful applications for your own personal requirements. The book provides an introduction to Spring Python and steadily takes you towards the advanced features that this integration has to offer.

Spring uses the Java programming language. Spring Python, the first Spring extension to go live, allows developers to make maximum use of Spring features in Python. This book starts off by introducing each of the core building blocks of Spring Python using real code examples and high-level diagrams. It explores the various concepts of Spring Python with the help of examples and case studies and focuses on vital Spring Python features to make the lives of Python and Java developers simple. The early chapters cover simple applications with simple operations including data access, and then subsequent chapters scale up to multi-node, secured, transactional applications stopping short of very advanced level complexity.


Read More

Recommended for You

Learning Python Data Visualization
$ 28.99