1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.mybatis.generator.codegen.mybatis3.xmlmapper.elements;
17
18 import org.mybatis.generator.api.dom.xml.Attribute;
19 import org.mybatis.generator.api.dom.xml.TextElement;
20 import org.mybatis.generator.api.dom.xml.XmlElement;
21
22
23
24
25
26
27 public class CountByExampleElementGenerator extends AbstractXmlElementGenerator {
28
29 public CountByExampleElementGenerator() {
30 super();
31 }
32
33 @Override
34 public void addElements(XmlElement parentElement) {
35 XmlElement answer = new XmlElement("select");
36
37 String fqjt = introspectedTable.getExampleType();
38
39 answer.addAttribute(new Attribute(
40 "id", introspectedTable.getCountByExampleStatementId()));
41 answer.addAttribute(new Attribute("parameterType", fqjt));
42 answer.addAttribute(new Attribute("resultType", "java.lang.Integer"));
43
44 context.getCommentGenerator().addComment(answer);
45
46 StringBuilder sb = new StringBuilder();
47 sb.append("select count(*) from ");
48 sb.append(introspectedTable
49 .getAliasedFullyQualifiedTableNameAtRuntime());
50 answer.addElement(new TextElement(sb.toString()));
51 answer.addElement(getExampleIncludeElement());
52
53 if (context.getPlugins().sqlMapCountByExampleElementGenerated(
54 answer, introspectedTable)) {
55 parentElement.addElement(answer);
56 }
57 }
58 }