View Javadoc
1   /*
2    *    Copyright 2016-2025 the original author or authors.
3    *
4    *    Licensed under the Apache License, Version 2.0 (the "License");
5    *    you may not use this file except in compliance with the License.
6    *    You may obtain a copy of the License at
7    *
8    *       https://www.apache.org/licenses/LICENSE-2.0
9    *
10   *    Unless required by applicable law or agreed to in writing, software
11   *    distributed under the License is distributed on an "AS IS" BASIS,
12   *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   *    See the License for the specific language governing permissions and
14   *    limitations under the License.
15   */
16  package examples.simple;
17  
18  import java.sql.JDBCType;
19  import java.util.Date;
20  
21  import org.mybatis.dynamic.sql.SqlColumn;
22  import org.mybatis.dynamic.sql.SqlTable;
23  
24  public final class PersonDynamicSqlSupport {
25      public static final Person person = new Person();
26      public static final SqlColumn<Integer> id = person.id;
27      public static final SqlColumn<String> firstName = person.firstName;
28      public static final SqlColumn<LastName> lastName = person.lastName;
29      public static final SqlColumn<Date> birthDate = person.birthDate;
30      public static final SqlColumn<Boolean> employed = person.employed;
31      public static final SqlColumn<String> occupation = person.occupation;
32      public static final SqlColumn<Integer> addressId = person.addressId;
33  
34      public static final class Person extends SqlTable {
35          public final SqlColumn<Integer> id = column("id", JDBCType.INTEGER);
36          public final SqlColumn<String> firstName = column("first_name", JDBCType.VARCHAR);
37          public final SqlColumn<LastName> lastName = column("last_name", JDBCType.VARCHAR, "examples.simple.LastNameTypeHandler");
38          public final SqlColumn<Date> birthDate = column("birth_date", JDBCType.DATE);
39          public final SqlColumn<Boolean> employed = column("employed", JDBCType.VARCHAR, "examples.simple.YesNoTypeHandler");
40          public final SqlColumn<String> occupation = column("occupation", JDBCType.VARCHAR);
41          public final SqlColumn<Integer> addressId = column("address_id", JDBCType.INTEGER);
42  
43          public Person() {
44              super("Person");
45          }
46      }
47  }