Package org.jdbi.v3.core
Class Sql
java.lang.Object
org.jdbi.v3.core.Sql
- All Implemented Interfaces:
CharSequence
An immutable sql statement string created from multiple tokens in order to write inline sql statements in an easy-to-read fashion spread out over multiple lines of code.
The class implements CharSequence and thus can be used as a drop-in
alternative wherever API supports CharSequence rather than String.
null or empty inputs are permitted (no run-time exceptions).The input of multiple tokens is formatted into a single String by removing leading and trailing whitespace and concatenating non-empty tokens by a single space character. Further, any trailing semicolons are removed from the resulting sql string.
Example:
String tblName = "table";
Sql.of("SELECT COUNT(*)",
"FROM", tblName,
" WHERE cond1 = :cond1",
" AND cond2 = :cond2");
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncharcharAt(int index) boolean(package private) static Stringformat(Iterable<? extends CharSequence> tokens) Formats an sql statement from multiple tokens.
Leading and trailing whitespace is removed from each token and empty tokens ignored.
The tokens are joined using a single blank character to create the sql string.
Finally, any trailing semicolons are removed from the resulting sql.inthashCode()intlength()static Sqlof(CharSequence... tokens) static Sqlof(Iterable<? extends CharSequence> tokens) subSequence(int start, int end) toString()Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.lang.CharSequence
chars, codePoints, isEmpty
-
Field Details
-
EMPTY_SQL
-
str
The internal sql string. Cannot be null.
-
-
Constructor Details
-
Sql
-
-
Method Details
-
of
-
of
-
format
Formats an sql statement from multiple tokens.
Leading and trailing whitespace is removed from each token and empty tokens ignored.
The tokens are joined using a single blank character to create the sql string.
Finally, any trailing semicolons are removed from the resulting sql.- Parameters:
tokens- collection of tokens- Returns:
- formatted sql string
-
length
public int length()- Specified by:
lengthin interfaceCharSequence
-
charAt
public char charAt(int index) - Specified by:
charAtin interfaceCharSequence
-
subSequence
- Specified by:
subSequencein interfaceCharSequence
-
hashCode
public int hashCode() -
equals
-
toString
- Specified by:
toStringin interfaceCharSequence- Overrides:
toStringin classObject
-