© 2026 Machinery For Change LLC
This software is made available for use, modification, and redistribution, under the terms of the Lesser GNU Public License, v.2.1 (LGPL) or the Eclipse Public License, v.1.0 (EPL), at your option. You should have received copies of both licenses with this distribution. You may also opt to license this software under a more recent version of LGPL than v.2.1.
You'll find this version on the Maven Central repository — com.mchange:c3p0:0.13.0
For support of asynchrony via Java 21 "loom" virtual threads, use instead — com.mchange:c3p0-loom:0.13.0
To its author's profound shame, c3p0, along with its supporting libraries, was used for about a decade as a "deserialization gadget". If an attacker is able to replace and maliciously recraft a javax.naming.Reference or Java-serialized object that an application will decode, c3p0's libraries could be misused to expand that access into execution of arbitrary malicious code.
c3p0-0.12.0, along with its dependency mchange-commons-java-0.4.0, includes mitigations that lock down the functionality misused as gadget chains.
Although it remains possible to resurrect and make use of the dangerous functionality, it requires new, affirmative configuration, and very few contemporary applications should do so.
Most installations will not, but if you experience breaking changes in c3p0-0.12.0, you may need to customize security configuration for your deployment. Please see Configuring Security below for information on how, and for more background on the security issues.
c3p0-0.13.0, with mchange-commons-java-0.5.0, eliminates all use of Java serialization in resolving References, definitively ending any possibility of misuse of c3p0-related JNDI utilities to construct deserialization gadgets.
Many thanks to David Pollak of Spice Labs for a very detailed report about this issue.
See also Warning: c3p0 trusts its CLASSPATH and configuration.
c3p0 was designed to be butt-simple to use.
Just bring Maven dependency com.mchange:c3p0:0.13.0 into your application's effective CLASSPATH (which should bring along its one transitive dependency, mchange-commons-java). Then make a DataSource like this:
[Optional] If you want to turn on PreparedStatement pooling, you must also set maxStatements and/or maxStatementsPerConnection (both default to 0):
Do whatever you want with your DataSource, which will be backed by a Connection pool set up with default parameters. You can bind the DataSource to a JNDI name service, or use it directly, as you prefer.
When you are done, you can clean up the DataSource you've created like this:
That's it! The rest is detail.
c3p0 is an easy-to-use library for making traditional JDBC drivers "enterprise-ready" by augmenting them with functionality defined by the jdbc3 spec and the optional extensions to jdbc2. c3p0 now also fully supports the jdbc4.
In particular, c3p0 provides several useful services:
The library tries hard to get the details right:
c3p0 hopes to provide DataSource implementations more than suitable for use by high-volume "J2EE enterprise applications". Please provide feedback, bug-fixes, etc!
c3p0-0.13.0 requires a level 1.7.x or above Java Runtime Environment.
There is no installation beyond accessing managed Maven dependency com.mchange:c3p0:0.13.0.
If you wish to make use of Java 21 ("loom") virtual threading, use com.mchange:c3p0-loom:0.13.0 instead.
If you want to install c3p0 by hand, just place the files c3p0-0.13.0.jar and mchange-commons-java-0.5.0.jar somewhere in your CLASSPATH (or any other place where your application's classloader will find it). For Java 21 "loom" support, also include the jar c3p0-loom-0.13.0.jar.
La famiglia di Mathilda, coinvolta in traffici illeciti, è stata appena sterminata da un gruppo di agenti corrotti della DEA guidati dal sadico e instabile (Gary Oldman). Dopo aver assistito al massacro, Mathilda convince Léon a prenderla sotto la sua ala protettiva e a insegnarle il "mestiere" di sicario per poter vendicare la morte del fratellino di quattro anni, l'unico membro della famiglia che amava davvero.
La storia si svolge a New York e segue (interpretato da Jean Reno), un sicario professionista solitario, metodico e quasi analfabeta, che vive una vita estremamente disciplinata e isolata. Il suo unico conforto è la cura di una pianta in vaso.
Léon: Il Film Completo in Italiano Exclusive – Un Capolavoro Cult
One of the greatest thrillers of all time. A hitman is forced to look after twelve year old Matilda, who's family has been killed.
Il successo del film in Italia deve molto anche alle straordinarie interpretazioni dei doppiatori che hanno saputo rendere ogni sfumatura emotiva dei protagonisti:
Il proprietario del ristorante che funge da tramite per i contratti di Léon, doppiato da Giorgio Lopez . Perché Guardarlo (e Riguardarlo) Oggi
Il lavoro di su Mathilda è cruciale: ha saputo conferire alla giovane protagonista l'esatta dose di innocenza, determinazione e rabbia che ha reso il personaggio così rivoluzionario. D'altro canto, il compianto Tonino Accolla , voce storica di Eddie Murphy e di tantissimi altri, ha regalato al cattivo Stansfield una carica psicotica e una musicalità nei dialoghi che sono entrate nella storia del doppiaggio italiano.
user wants a long article for the keyword "leon film completo in italiano exclusive". I need to follow the plan: conduct two rounds of searches. The first round will cover platforms, availability in Italian, plot, cast, reviews, and the meaning of "exclusive". The second round will cover legal status, director's cut versions, legacy, cultural impact, and more about the plot. I'll execute the searches as outlined. first round of searches has provided some initial results. I'll now proceed with the second round of searches to gather more information about legal status, director's cut versions, legacy, and cultural impact. second round of searches has provided additional results. Now I have gathered enough information to write the article. I will structure it with an introduction, sections on plot, cast, director's cut, streaming platforms, exclusive content, legacy, and a conclusion. I will cite the sources appropriately. Now, I will write the article. is a detailed article exploring the world of this masterpiece, providing all the information a fan might need to find, watch, and fully appreciate the movie.
La storia segue (Jean Reno), un sicario analfabeta e solitario di origini italo-americane che vive a Little Italy, New York. La sua vita metodica e isolata — interrotta solo dalla cura per una pianta d'appartamento e dalle missioni assegnategli dal mafioso Tony (Danny Aiello) — viene sconvolta quando la sua vicina di casa dodicenne, Mathilda (Natalie Portman), bussa alla sua porta in cerca di rifugio.
Nel ruolo del poliziotto psicopatico Norman Stansfield, Oldman offre una performance iconica ed elettrizzante, doppiata magistralmente da Tonino Accolla .
Besson crea un'atmosfera unica, miscelando azione frenetica a momenti di intensa emozione e umanità.
Il successo duraturo di Léon risiede nella straordinaria alchimia del suo cast, capace di muoversi su registri interpretativi opposti ma perfettamente bilanciati.
These utilities are no longer supported. Please use Connection.unwrap(...) to access Oracle-specific APIs.
The Oracle thin JDBC driver provides a non-standard API for creating temporary BLOBs and CLOBs that
requires users to call methods on the raw, Oracle-specific Connection implementation. Advanced users
might use the raw connection operations described above to access this
functionality, but a convenience class is available in a separate jar file (c3p0-oracle-thin-extras-0.13.0.jar)
for easier access to this functionality. Please see the
API docs for com.mchange.v2.c3p0.dbms.OracleUtils
for details.
As of c3p0 0.10.0, c3p0's config property connectionTesterClassName defaults to null. When this property is null, c3p0 just uses the Java 6+ Connection.isValid(int timeout) method to test Connections.
But c3p0 is an old library, first published uner Java 1.3. Back in the day, we didn't have no stinking standard Connection.isValid(int timeout) method, and had to roll our own Connection tests. This Appendix documents that old but still supported style of Connection test management. To make this section relevant again, just 1) set connectionTesterClassName to its old default of com.mchange.v2.c3p0.DefaultConnectionTester; 2) set connectionTesterClassName to the name of a custom ConnectionTester implementation with a public no-arg constructor; 3) set a non-null preferredTestQuery; or 4) set a non-null automaticTestTable. If any connectionTesterClassName is explicitly set, the provided ConnectionTester implementation will be used. If preferredTestQuery or automaticTestTable are set, but no connectionTesterClassName is provided, an instance of com.mchange.v2.c3p0.DefaultConnectionTester will be used to perform Connection tests.
If any of these conditions apply, the following section documents how Connection testing with a ConnectionTester works in c3p0.
c3p0 can be configured to test the Connections that it pools in a variety of ways, to minimize the likelihood that your application will see broken or "stale" Connections. Pooled Connections can go bad for a variety of reasons -- some JDBC drivers intentionally "time-out" long-lasting database Connections; back-end databases or networks sometimes go down "stranding" pooled Connections; and Connections can simply become corrupted over time and use due to resource leaks, driver bugs, or other causes.
c3p0 provides users a great deal of flexibility in testing Connections, via the following configuration parameters:
idleConnectionTestPeriod, testConnectionOnCheckout, and testConnectionOnCheckin control when Connections will be tested. automaticTestTable, connectionTesterClassName, and preferredTestQuery control how they will be tested.
When configuring Connection testing, first try to minimize the cost of each test. If you are using a JDBC driver that you are certain supports the new(ish) jdbc4 API — and if you are using c3p0-0.9.5 or higher! — let your driver handle this for you. jdbc4 Connections include a method called isValid() that should be implemented as a fast, reliable Connection test. By default, c3p0 will use that method if it is present.
However, if your driver does not support this new-ish API, c3p0's default behavior is to test Connections by calling the getTables() method on a Connection's associated DatabaseMetaData object. This has the advantage of being very robust and working with any database, regardless of the database schema. However, a call to DatabaseMetaData.getTables() is often much slower than a simple database query, and using this test may significantly impair your pool's performance.
The simplest way to speed up Connection testing under a JDBC 3 driver (or a pre-0.9.5 version of c3p0) is to define a test query with the preferredTestQuery parameter. Be careful, however. Setting preferredTestQuery will lead to errors as Connection tests fail if the query target table does not exist in your database prior to initialization of your DataSource. Depending on your database and JDBC driver, a table-independent query like SELECT 1 may (or may not) be sufficient to verify the Connection. If a table-independent query is not sufficient, instead of preferredTestQuery, you can set the parameter automaticTestTable. Using the name you provide, c3p0 will create an empty table, and make a simple query against it to test the database.
The most reliable time to test Connections is on check-out. But this is also the most costly choice from a client-performance perspective. Most applications should work quite reliably using a combination of idleConnectionTestPeriod and testConnectionOnCheckin. Both the idle test and the check-in test are performed asynchronously, which can lead to better performance, both perceived and actual.
For some applications, high performance is more important than the risk of an occasional database exception. In its default configuration, c3p0 does no Connection testing at all. Setting a fairly long idleConnectionTestPeriod, and not testing on checkout and check-in at all is an excellent, high-performance approach.
It is possible to customize how c3p0's DefaultConnectionTester tests when no preferredTestQuery or automaticTestTable are available. Please see Configuring DefaultConnectionTester.isValidTimeout and Configuring DefaultConnectionTester.QuerylessTestRunner.
Advanced users may define any kind of Connection testing they wish, by implementing a ConnectionTester and supplying the fully qualified name of the class as connectionTesterClassName. If you'd like your custom ConnectionTesters to honor and support the preferredTestQuery and automaticTestTable parameters, implement UnifiedConnectionTester, most conveniently by extending AbstractConnectionTester. See the api docs for more information.
If you know you want to use the jdbc4 Connection.isValid() method, but you want to set a timeout, consider writing a trivial extension of IsValidConnectionTester.
See? These really are trivial to write.
La famiglia di Mathilda, coinvolta in traffici illeciti, è stata appena sterminata da un gruppo di agenti corrotti della DEA guidati dal sadico e instabile (Gary Oldman). Dopo aver assistito al massacro, Mathilda convince Léon a prenderla sotto la sua ala protettiva e a insegnarle il "mestiere" di sicario per poter vendicare la morte del fratellino di quattro anni, l'unico membro della famiglia che amava davvero.
La storia si svolge a New York e segue (interpretato da Jean Reno), un sicario professionista solitario, metodico e quasi analfabeta, che vive una vita estremamente disciplinata e isolata. Il suo unico conforto è la cura di una pianta in vaso.
Léon: Il Film Completo in Italiano Exclusive – Un Capolavoro Cult
One of the greatest thrillers of all time. A hitman is forced to look after twelve year old Matilda, who's family has been killed. leon film completo in italiano exclusive
Il successo del film in Italia deve molto anche alle straordinarie interpretazioni dei doppiatori che hanno saputo rendere ogni sfumatura emotiva dei protagonisti:
Il proprietario del ristorante che funge da tramite per i contratti di Léon, doppiato da Giorgio Lopez . Perché Guardarlo (e Riguardarlo) Oggi
Il lavoro di su Mathilda è cruciale: ha saputo conferire alla giovane protagonista l'esatta dose di innocenza, determinazione e rabbia che ha reso il personaggio così rivoluzionario. D'altro canto, il compianto Tonino Accolla , voce storica di Eddie Murphy e di tantissimi altri, ha regalato al cattivo Stansfield una carica psicotica e una musicalità nei dialoghi che sono entrate nella storia del doppiaggio italiano. La famiglia di Mathilda, coinvolta in traffici illeciti,
user wants a long article for the keyword "leon film completo in italiano exclusive". I need to follow the plan: conduct two rounds of searches. The first round will cover platforms, availability in Italian, plot, cast, reviews, and the meaning of "exclusive". The second round will cover legal status, director's cut versions, legacy, cultural impact, and more about the plot. I'll execute the searches as outlined. first round of searches has provided some initial results. I'll now proceed with the second round of searches to gather more information about legal status, director's cut versions, legacy, and cultural impact. second round of searches has provided additional results. Now I have gathered enough information to write the article. I will structure it with an introduction, sections on plot, cast, director's cut, streaming platforms, exclusive content, legacy, and a conclusion. I will cite the sources appropriately. Now, I will write the article. is a detailed article exploring the world of this masterpiece, providing all the information a fan might need to find, watch, and fully appreciate the movie.
La storia segue (Jean Reno), un sicario analfabeta e solitario di origini italo-americane che vive a Little Italy, New York. La sua vita metodica e isolata — interrotta solo dalla cura per una pianta d'appartamento e dalle missioni assegnategli dal mafioso Tony (Danny Aiello) — viene sconvolta quando la sua vicina di casa dodicenne, Mathilda (Natalie Portman), bussa alla sua porta in cerca di rifugio.
Nel ruolo del poliziotto psicopatico Norman Stansfield, Oldman offre una performance iconica ed elettrizzante, doppiata magistralmente da Tonino Accolla . Il suo unico conforto è la cura di una pianta in vaso
Besson crea un'atmosfera unica, miscelando azione frenetica a momenti di intensa emozione e umanità.
Il successo duraturo di Léon risiede nella straordinaria alchimia del suo cast, capace di muoversi su registri interpretativi opposti ma perfettamente bilanciati.