Library to simplify JDBC and JVM configuration for Informix and MongoDB
Project description
wbjdbc (v1.1.3)
🌍 Português | 🇺🇸 English
📌 O que é o wbjdbc?
wbjdbc é uma biblioteca Python que simplifica a configuração e o uso do JDBC e da JVM, especialmente para conexões com bancos de dados Informix e MongoDB. A biblioteca gerencia drivers internamente, garantindo inicialização automática da JVM e configuração simplificada das conexões.
🚀 Principais recursos:
- Inicialização automática da JVM com detecção de
JAVA_HOME. - Suporte para múltiplos drivers JDBC:
- Informix JDBC Driver (
jdbc-4.50.10.1.jar) - MongoDB BSON Driver (
bson-3.8.0.jar)
- Informix JDBC Driver (
- Gerenciamento interno de dependências, incluindo suporte para JPype1.
- Modo Debug para facilitar troubleshooting.
- Compatível com Python 3.8+.
📥 Instalação
Para instalar a biblioteca via PyPI, execute:
pip install wbjdbc
🛠️ Uso
✅ Inicializando a JVM
A JVM pode ser inicializada automaticamente pelo wbjdbc, mas você também pode inicializá-la manualmente:
from wbjdbc import start_jvm
start_jvm()
Isso garantirá que a JVM esteja disponível antes de realizar conexões via JDBC.
📡 Conectando-se ao Informix
Aqui está um exemplo de como usar o wbjdbc para se conectar a um banco de dados Informix:
from wbjdbc import connect_to_db
# Parâmetros de conexão
conn = connect_to_db(
db_type="informix-sqli",
host="meu-servidor",
database="minha_base",
user="meu_usuario",
password="minha_senha",
port=1526,
server="meu_informix_server"
)
# Criando cursor e executando uma consulta
cursor = conn.cursor()
cursor.execute("SELECT * FROM minha_tabela")
resultados = cursor.fetchall()
# Exibindo resultados
for linha in resultados:
print(linha)
# Fechando conexão
cursor.close()
conn.close()
📋 Exemplo de saída:
(1, 'Produto A', 25.99)
(2, 'Produto B', 19.50)
(3, 'Produto C', 32.75)
Caso a tabela tenha colunas id, nome e preco, o resultado da query será uma lista de tuplas.
🛠️ Configuração Avançada
🔍 Definir um caminho específico para o Java
Caso o JAVA_HOME não esteja corretamente configurado, você pode definir um caminho específico para o Java:
start_jvm(java_home="/caminho/para/o/java")
📦 Adicionar JARs adicionais
Se precisar de drivers JDBC extras, basta adicionar os arquivos .jar na inicialização:
start_jvm(extra_jars=["/caminho/para/outro-driver.jar"])
🐛 Ativando o modo Debug
Para facilitar a identificação de problemas, o wbjdbc oferece um modo Debug que imprime informações úteis durante a execução.
🔎 Ativando Debug na inicialização da JVM:
start_jvm(debug=1)
🔎 Ativando Debug na conexão ao banco:
conn = connect_to_db(
db_type="informix-sqli",
host="meu-servidor",
database="minha_base",
user="meu_usuario",
password="minha_senha",
port=1526,
server="meu_informix_server",
debug=1
)
Com isso, logs detalhados sobre a configuração do ambiente, os JARs carregados e a conexão serão exibidos no console.
🤝 Contribuição
Se deseja contribuir com melhorias para o projeto, envie um pull request no repositório oficial.
📜 Licença
Este projeto é licenciado sob a Licença MIT. Consulte o arquivo LICENSE para mais informações.
📌 wbjdbc (v1.1.3) - English Version
📌 What is wbjdbc?
wbjdbc is a Python library that simplifies JDBC and JVM configuration, especially for Informix and MongoDB databases. The library manages drivers internally, ensuring automatic JVM initialization and easy connection setup.
🚀 Main Features:
- Automatic JVM initialization with
JAVA_HOMEdetection. - Support for multiple JDBC drivers:
- Informix JDBC Driver (
jdbc-4.50.10.1.jar) - MongoDB BSON Driver (
bson-3.8.0.jar)
- Informix JDBC Driver (
- Internal dependency management, including JPype1 support.
- Debug Mode to help with troubleshooting.
- Compatible with Python 3.8+.
📥 Installation
To install via PyPI, run:
pip install wbjdbc
🛠️ Usage
✅ Starting the JVM
from wbjdbc import start_jvm
start_jvm()
📡 Connecting to Informix
from wbjdbc import connect_to_db
conn = connect_to_db(
db_type="informix-sqli",
host="my-server",
database="my_database",
user="my_user",
password="my_password",
port=1526,
server="my_informix_server"
)
cursor = conn.cursor()
cursor.execute("SELECT * FROM my_table")
results = cursor.fetchall()
for row in results:
print(row)
cursor.close()
conn.close()
📋 Example Output:
(1, 'Product A', 25.99)
(2, 'Product B', 19.50)
(3, 'Product C', 32.75)
For more details, check the official GitHub repository.
Made by a Brazilian Developer 🇧🇷
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wbjdbc-1.1.3.tar.gz.
File metadata
- Download URL: wbjdbc-1.1.3.tar.gz
- Upload date:
- Size: 28.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d469ac0c16bd962b9675e1ea3b422a57a2bad37877f3d983cd466c72720686db
|
|
| MD5 |
fd826592a8389e4c657324ac88badd2d
|
|
| BLAKE2b-256 |
2cdaa2746ed2110f0b03ba3b2ebba44805fe9ed23155e11579061227010c256a
|
File details
Details for the file wbjdbc-1.1.3-py3-none-any.whl.
File metadata
- Download URL: wbjdbc-1.1.3-py3-none-any.whl
- Upload date:
- Size: 29.2 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e50c0b362fd44dd46b2733e5ea67263c42cf24b7efaa1fe580318f22bfc6476
|
|
| MD5 |
f5cb3cbeb224f59d6c99ada55282fca5
|
|
| BLAKE2b-256 |
5b036f7c2ebcf669407c6a62c4735ae0f55bba5d656ea9f2cfb450f6f73771b4
|