Features & Details
AceQL Product features
SQL Databases
- Open source databases: MariaDb, MySQL, PostgreSQL
- Oracle Database
- Microsoft SQL Server
- IBM DB2
SQL Types
- Main SQL types: Boolean, Integer, Short, Double, Float, BigDecimal, Long, String, Date, Time, Timestamp
- Array type
- BLOB & CLOB types
SQL Operations
- DML operations (DELETE, INSERT, SELECT, UPDATE, â¦)
- TCL operations (COMMIT, ROLLBACK, SAVEPOINT)
- Batch commands
- DCL operations (GRANT, REVOKE, ...)
- DDL operations (CREATE, ALTER, DROP, RENAME, â¦)
JDBC API metadata calls from client-side
All JDBC metadata APIs are callable from the client side, allowing you to use database viewers with the AceQL Client JDBC Driver: DBeaver, DbVisualizer, etc.
Connections Management
- Tomcat JDBC Connection Pooling
- Support any JDBC Pooling Connection framework (DBCP, HikariCP, C3P0, etc.)
- Full control of Connection release in the pool
Allows you to trigger Java events before and after the release of the Connection to the Pool - Unlimited simultaneous JDBC Connections per database
SQL Data
- Unlimited SELECT result set size
- Limiting maximum size of SELECT result
Stored Procedures
- SQL stored procedures
- Java AceQL stored procedures
Call from client-side Java programs that directly return a formatted, ready-to-use ResultSet created on the server side.
User Authentication
- Windows, SSH, JDBC Query, LDAP, Web Service
Provides ready-to-use classes for authenticating against a Windows server, a Linux server, a SQL table, a LDAP server or a Web service. - External authentication without a password
Some working environments (Intranet, etc.) require the client user to authenticate themself without a password. This feature allows for client authentication with a session ID. - Request headers analysis for validation on server
The request headers may be intercepted on the server side by the validate() method of a Java interface. This feature eases authentication against Cloud services that use request headers, such as AWS.
SQL Firewalling
- Firewall rules creation using Java Dependency Injection
- Ready-to-use firewall chained rules set
Easily build firewall rules by chaining provided, ready-to-use classes. - Firewall rules set definition using a CSV file
Define complex firewall rules using only a CSV file loaded at server startup. Each SQL query is performed against the content of the CSV file. - Trigger code/action if attack is detected
Running Options
- Java ThreadPoolExecutor fine tuning
Allows you to define all the parameters of the java.util.concurrent.ThreadPoolExecutor instance used to execute all servlet requests in async mode. - Update listeners
Allows defining Java code to execute after a successful SQL database update is done. Update Listeners can be viewed as a kind of Java "trigger" executed on the completion of SQL updates. Much easier to code and use than SQL database vendors specific listeners. - JDBC Connection pool monitoring servlet
Allows you to define servlets that can interact with AceQL Web Server (in order to query info about JDBC pools in use, or modify a pool size, etc.) - Controlling the AceQL Web Server from a program
Allows you to start and stop the AceQL Web Server from a Java program. - HTTP/2 Support
- Running AceQL directly in a Servlet container (Tomcat, JBoss, etc.)
Cryptography
Properties file encryption
In order to protect configuration passwords and other confidential values from eavesdropping, each property value may be replaced by an encrypted value in the main properties file.
Support