Utilisation de JDBC, d’Universal Connection Pool (UCP) et d’Embedded JVM (OJVM) dans des articles techniques, des livres blancs, des exemples de code, des FAQ, etc.
Que ce soit dans le Cloud ou sur site, le développement d’applications Java avec Oracle Autonomous Databases est simple et rapide. Les développeurs Java peuvent tirer parti des dernières fonctionnalités, telles qu’Oracle Autonomous Database, le réglage automatique des performances, la haute disponibilité, le traitement en mémoire et les bases de données enfichables pour concevoir et développer des applications hautes performances, évolutives et fiables. Les pilotes JDBC Oracle Database 19c et 18c comportent désormais un nouveau fichier de propriété (ojdbc.properties) ainsi que d’autres fonctions qui simplifient la connexion à Autonomous Transaction Processing (ATP) et Autonomous Data Warehousing (ADW).
Standards Java | Prend en charge JDK8, JDK11, JDK17, JDK19 et JDK21, et implémente JDBC 4.2 et JDBC 4.3 avec ojdbc11.jar (23c, 21c) et ojdbc10.jar (19c). Universal Connection Pool (ucp.jar) pour les applications Java. Virtual Threads (Project Loom), Asynchronous Extension to Universal Connection Pool, JDBC Reactive Extensions : Un ensemble de méthodes qui étendent la norme JDBC pour offrir un accès asynchrone aux bases de données. |
Connexion |
Prise en charge de fournisseurs de configuration centralisée multi-cloud (Azure, OCI et WebServer), prise en charge de l'authentification par jeton OCI IAM, prise en charge de OAUTH2 pour l'authentification de base de données et l'intégration Azure AD, prise en charge des mots de passe jusqu'à 1024 octets, Easy Connect Plus pour faciliter les connexions TCPS et la transmission des propriétés de connexion, le fichier ojdbc.properties pour définir les propriétés de connexion, plusieurs méthodes pour définir TNS_ADMIN, définition du certificat de nom de domaine du serveur en tant que propriété de connexion et prise en charge la nouvelle propriété de portefeuille (my_wallet_directory)
|
Performances | Java and Pipelined Database Operations, les API de traitement par lots JDBC Standard ont été améliorées pour utiliser Reactive Streams Ingest (RSI) afin de diffuser des données dans Oracle Database (21c et supérieur), RSI en mode chargement de données (23c), JDBC et UCP Reactive Extensions, Oracle Connection Manager (CMAN) en mode directeur de trafic (CMAN-TDM) |
Évolutivité | Prise en charge du sharding reposant sur un annuaire et du jeu de partitions fractionnées, de la source de données Java pour l'accès aux bases de données distribuées, de la prise en charge UCP pour les transactions XA avec le sharding Oracle Database, de l'affinité des données Oracle RAC, des API de routage de shards pour les niveaux intermédiaires, de la zone de mémoire partagée pour les bases de données colocatives et distribuées et de l'équilibrage de charge d'exécution (RLB) |
Haute disponibilité | Migration de session avec AC pour les lots et les modèles (c'est-à-dire, attributs stables pouvant être restaurés), Transparent Application Continuity (TAC), prise en charge des classes concrètes avec Application Continuity (AC), AC avec DRCP, prise en charge de FAN et Transaction Guard (TG) |
Sécurité | Prise en charge de RADIUS et et l'authentification à deux facteurs RADIUS, de la délégation avec contrainte Kerberos, de la résolution de fournisseur automatique (OraclePKIProvider), de la prise en charge du service de fichier de clés (KSS), de la prise en charge du proxy HTTPS, de la prise en charge TLSv1.2, de Kerberos, des portefeuilles Oracle et de JKS |
Types de données | Type de données booléen natif dans oracle.jdbc.OracleType, prise en charge des vues de dualité relationnelle JSON, prise en charge du nouveau type de données JSON, accessibilité aux tableaux associatifs PL/SQL, Oracle REF CURSOR en tant que paramètre de liaison IN. |
Diagnostic et observabilité | Diagnostic autonome (un seul ojdbcX.jar pour la production, le débogage et les mesures à partir de 23c), diagnostic lors du premier échec (enregistre l'état d'exécution critique en mémoire et vide l'enregistrement en cas d'erreur) |