diff --git a/jdbcmapper/pom.xml b/jdbcmapper/pom.xml
index b9df45d..b08329b 100644
--- a/jdbcmapper/pom.xml
+++ b/jdbcmapper/pom.xml
@@ -81,4 +81,20 @@
+
+
+ jdk16
+
+ [1.6,1.8)
+
+
+
+
+ com.google.code.maven-replacer-plugin
+ replacer
+
+
+
+
+
diff --git a/jdbcmapper/src/main/java/com/moparisthebest/jdbc/codegen/InListVariableElement.java b/jdbcmapper/src/main/java/com/moparisthebest/jdbc/codegen/InListVariableElement.java
index 3fdf53f..cc72e99 100644
--- a/jdbcmapper/src/main/java/com/moparisthebest/jdbc/codegen/InListVariableElement.java
+++ b/jdbcmapper/src/main/java/com/moparisthebest/jdbc/codegen/InListVariableElement.java
@@ -76,4 +76,13 @@ class InListVariableElement implements VariableElement {
public R accept(final ElementVisitor v, final P p) {
return delegate.accept(v, p);
}
+
+ //IFJAVA8_START
+
+ @Override
+ public A[] getAnnotationsByType(final Class annotationType) {
+ return delegate.getAnnotationsByType(annotationType);
+ }
+
+ //IFJAVA8_END
}
diff --git a/jdbcmapper/src/test/java/com/moparisthebest/jdbc/codegen/JdbcMapperTest.java b/jdbcmapper/src/test/java/com/moparisthebest/jdbc/codegen/JdbcMapperTest.java
index ecb2eb0..d4ccc90 100644
--- a/jdbcmapper/src/test/java/com/moparisthebest/jdbc/codegen/JdbcMapperTest.java
+++ b/jdbcmapper/src/test/java/com/moparisthebest/jdbc/codegen/JdbcMapperTest.java
@@ -22,7 +22,7 @@ import static org.junit.Assert.assertEquals;
*/
public class JdbcMapperTest {
- private static PersonDAO dao;
+ public static PersonDAO dao;
@BeforeClass
public static void setUp() throws Throwable {
@@ -35,13 +35,9 @@ public class JdbcMapperTest {
tryClose(dao);
}
- public PersonDAO getDao() {
- return dao;
- }
-
@Test
public void testName() throws Throwable {
- assertEquals(fieldPerson1.getFirstName(), getDao().getFirstName(fieldPerson1.getPersonNo()));
+ assertEquals(fieldPerson1.getFirstName(), dao.getFirstName(fieldPerson1.getPersonNo()));
}
@Test
diff --git a/pom.xml b/pom.xml
index 9943619..36e211a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -62,15 +62,11 @@
UTF-8
false
true
+ sources
+ javadoc
+
pom
-
- common
- runtime-compiler
- querymapper
- jdbcmapper
- presto-sqlparser
-
@@ -172,4 +168,136 @@
+
+
+ jdk6
+
+ [1.6,1.8)
+
+
+ jdk16-sources
+ true
+ jdk16
+
+
+ common
+ runtime-compiler
+ querymapper
+ jdbcmapper
+
+
+
+
+
+ com.google.code.maven-replacer-plugin
+ replacer
+ 1.5.2
+
+
+ process-sources
+
+ replace
+
+
+
+
+
+ */src/main/java/**/*
+
+
+ target/**
+
+
+
+ //IFJAVA8_START
+ /*IFJAVA8_START
+
+
+ //IFJAVA8_END
+ IFJAVA8_END*/
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+
+ 1.6
+
+ **/module-info.java
+
+
+
+
+
+ default-testCompile
+ test-compile
+
+
+ **/module-info.java
+
+
+
+ testCompile
+
+
+
+
+
+
+
+
+
+
+
+ jdk8
+
+
+ [1.8,)
+
+
+
+ common
+ runtime-compiler
+ querymapper
+ jdbcmapper
+ presto-sqlparser
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+
+ 1.8
+
+ **/module-info.java
+
+
+
+
+
+ default-testCompile
+ test-compile
+
+
+ **/module-info.java
+
+
+
+ testCompile
+
+
+
+
+
+
+
+
+
diff --git a/presto-sqlparser/src/test/java/com/moparisthebest/jdbc/codegen/PrestoPersonDAO.java b/presto-sqlparser/src/test/java/com/moparisthebest/jdbc/codegen/PrestoPersonDAO.java
index 37deee1..07ecb70 100644
--- a/presto-sqlparser/src/test/java/com/moparisthebest/jdbc/codegen/PrestoPersonDAO.java
+++ b/presto-sqlparser/src/test/java/com/moparisthebest/jdbc/codegen/PrestoPersonDAO.java
@@ -1,12 +1,14 @@
package com.moparisthebest.jdbc.codegen;
+import com.moparisthebest.jdbc.Cleaner;
import com.moparisthebest.jdbc.dto.FieldPerson;
+import com.moparisthebest.jdbc.dto.Person;
+import com.moparisthebest.jdbc.util.ResultSetIterable;
import java.sql.SQLException;
-import java.util.Iterator;
-import java.util.List;
-import java.util.ListIterator;
-import java.util.Map;
+import java.sql.Time;
+import java.sql.Timestamp;
+import java.util.*;
/**
* Created by mopar on 5/24/17.
@@ -18,39 +20,128 @@ import java.util.Map;
)
public interface PrestoPersonDAO extends PersonDAO {
- @JdbcMapper.SQL("UPDATE person SET first_name = {firstName} WHERE last_name = {lastName}")
- int setFirstName(String firstName, String lastName);
- @JdbcMapper.SQL("UPDATE person SET first_name = {firstName} WHERE person_no = {personNo}")
- void setFirstName(String firstName, long personNo) throws SQLException;
+ @JdbcMapper.SQL("UPDATE person SET first_name = {firstName} WHERE last_name = {lastName}")
+ int setFirstName(String firstName, String lastName);
- @JdbcMapper.SQL("UPDATE person SET first_name = {firstName} WHERE person_no = {personNo}")
- void setFirstNameBlob(byte[] firstName, long personNo) throws SQLException;
+ @JdbcMapper.SQL("UPDATE person SET first_name = {firstName} WHERE person_no = {personNo}")
+ void setFirstName(String firstName, long personNo) throws SQLException;
- @JdbcMapper.SQL("SELECT first_name FROM person WHERE person_no = {personNo}")
- String getFirstName(long personNo) throws SQLException;
+ @JdbcMapper.SQL("UPDATE person SET first_name = {firstName} WHERE person_no = {personNo}")
+ void setFirstNameBlob(byte[] firstName, long personNo) throws SQLException;
- @JdbcMapper.SQL("SELECT first_name, last_name FROM person WHERE person_no = {personNo}")
- FieldPerson getPerson(long personNo) throws SQLException;
+ @JdbcMapper.SQL("UPDATE person SET first_name = {firstName} WHERE person_no = {personNo}")
+ void setFirstNameBlob(@JdbcMapper.Blob String firstName, long personNo) throws SQLException;
- @JdbcMapper.SQL("SELECT first_name, last_name FROM person WHERE last_name = {lastName}")
- List getPeople(String lastName) throws SQLException;
+ @JdbcMapper.SQL("SELECT first_name FROM person WHERE person_no = {personNo}")
+ String getFirstName(long personNo) throws SQLException;
- @JdbcMapper.SQL("SELECT first_name, last_name FROM person WHERE last_name = {lastName}")
- FieldPerson[] getPeopleArray(String lastName) throws SQLException;
+ @JdbcMapper.SQL("SELECT first_name, last_name, birth_date FROM person WHERE person_no = {personNo}")
+ FieldPerson getPerson(long personNo, Calendar cal) throws SQLException;
- @JdbcMapper.SQL("SELECT first_name, last_name FROM person WHERE last_name = {lastName}")
- Iterator getPeopleIterator(String lastName) throws SQLException;
+ @JdbcMapper.SQL("SELECT first_name, last_name, birth_date FROM person WHERE person_no = {personNo}")
+ FieldPerson getPerson(long personNo) throws SQLException;
- @JdbcMapper.SQL("SELECT first_name, last_name FROM person WHERE last_name = {lastName}")
- ListIterator getPeopleListIterator(String lastName) throws SQLException;
+ @JdbcMapper.SQL("SELECT first_name, last_name FROM person WHERE last_name = {lastName}")
+ List getPeople(String lastName) throws SQLException;
- @JdbcMapper.SQL("SELECT first_name, last_name, person_no FROM person WHERE last_name = {lastName}")
- Map getPersonMap(String lastName) throws SQLException;
+ @JdbcMapper.SQL("SELECT first_name, last_name FROM person WHERE {last_name not in lastName}")
+ List getPeople(String[] lastName) throws SQLException;
- @JdbcMapper.SQL("SELECT first_name, last_name, person_no FROM person WHERE last_name = {lastName}")
- Map> getPersonMapList(String lastName) throws SQLException;
+ @JdbcMapper.SQL("SELECT first_name, last_name FROM person WHERE {last_name in lastName}")
+ List getPeople(List lastName) throws SQLException;
+
+ @JdbcMapper.SQL("SELECT first_name, last_name FROM person WHERE last_name = {lastName}")
+ FieldPerson[] getPeopleArray(String lastName) throws SQLException;
+
+ @JdbcMapper.SQL("SELECT first_name, last_name FROM person WHERE last_name = {lastName}")
+ Iterator getPeopleIterator(String lastName) throws SQLException;
+
+ @JdbcMapper.SQL("SELECT first_name, last_name FROM person WHERE last_name = {lastName}")
+ ListIterator getPeopleListIterator(String lastName) throws SQLException;
+
+ @JdbcMapper.SQL("SELECT first_name, last_name, person_no FROM person WHERE last_name = {lastName}")
+ Map getPersonMap(String lastName) throws SQLException;
+
+ @JdbcMapper.SQL("SELECT first_name, last_name, person_no FROM person WHERE last_name = {lastName}")
+ Map> getPersonMapList(String lastName) throws SQLException;
+
+ @JdbcMapper.SQL("SELECT first_name FROM person WHERE person_no = {personNo} and last_name = {lastName}")
+ String getFirstName(long personNo, String lastName) throws SQLException;
+
+ // various date checks here
+ @JdbcMapper.SQL("SELECT birth_date FROM person WHERE person_no = {personNo}")
+ Calendar getBirthDateCalendar(long personNo) throws SQLException;
+ @JdbcMapper.SQL("SELECT birth_date FROM person WHERE person_no = {personNo}")
+ Calendar getBirthDateCalendar(long personNo, Calendar mycal) throws SQLException;
+
+ @JdbcMapper.SQL("SELECT birth_date FROM person WHERE person_no = {personNo}")
+ Timestamp getBirthDateTimestamp(long personNo) throws SQLException;
+ @JdbcMapper.SQL("SELECT birth_date FROM person WHERE person_no = {personNo}")
+ Timestamp getBirthDateTimestamp(long personNo, Calendar mycal) throws SQLException;
+
+ @JdbcMapper.SQL("SELECT birth_date FROM person WHERE person_no = {personNo}")
+ Time getBirthDateTime(long personNo) throws SQLException;
+ @JdbcMapper.SQL("SELECT birth_date FROM person WHERE person_no = {personNo}")
+ Time getBirthDateTime(long personNo, Calendar mycal) throws SQLException;
+
+ @JdbcMapper.SQL("SELECT birth_date FROM person WHERE person_no = {personNo}")
+ java.sql.Date getBirthDateSqlDate(long personNo) throws SQLException;
+ @JdbcMapper.SQL("SELECT birth_date FROM person WHERE person_no = {personNo}")
+ java.sql.Date getBirthDateSqlDate(long personNo, Calendar mycal) throws SQLException;
+
+ @JdbcMapper.SQL("SELECT birth_date FROM person WHERE person_no = {personNo}")
+ java.util.Date getBirthDateUtilDate(long personNo) throws SQLException;
+ @JdbcMapper.SQL("SELECT birth_date FROM person WHERE person_no = {personNo}")
+ java.util.Date getBirthDateUtilDate(long personNo, Calendar mycal) throws SQLException;
+
+ // cleaner checks
+ @JdbcMapper.SQL("SELECT first_name, last_name, birth_date FROM person WHERE person_no = {personNo}")
+ FieldPerson getPersonCleanFieldPerson(long personNo, Cleaner clean) throws SQLException;
+ @JdbcMapper.SQL("SELECT first_name, last_name, birth_date FROM person WHERE person_no = {personNo}")
+ FieldPerson getPersonCleanPerson(long personNo, Cleaner clean) throws SQLException;
+ @JdbcMapper.SQL("SELECT first_name, last_name, birth_date FROM person WHERE person_no = {personNo}")
+ FieldPerson getPersonCleanObject(long personNo, Cleaner