Skip to content

Commit 323b2d2

Browse files
author
youmeng
committedJun 25, 2015
remove remote validate
1 parent 7a1ed7e commit 323b2d2

File tree

2 files changed

+45
-18
lines changed

2 files changed

+45
-18
lines changed
 

‎src/main/java/com/tqlab/plugin/mybatis/util/SqlTemplateParserUtil.java

+2-17
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,9 @@
66
import java.io.ByteArrayInputStream;
77
import java.io.File;
88
import java.io.FileInputStream;
9-
import java.io.IOException;
109
import java.io.InputStream;
1110
import java.io.Serializable;
1211
import java.math.BigDecimal;
13-
import java.net.URL;
1412
import java.sql.Types;
1513
import java.util.List;
1614
import java.util.Map;
@@ -83,7 +81,6 @@ public final class SqlTemplateParserUtil {
8381
private static final String SQL_SESSION_FACTORY = "sqlSessionFactory";
8482

8583
private static final String MYBATIS_XSD_LOCAL = "/com/tqlab/plugin/mybatis/tqlab-mybatis-plugin.xsd";
86-
private static final String MYBATIS_XSD_REMOTE = "http://schema.tqlab.com/mybatis/tqlab-mybatis-plugin.xsd";
8784

8885
private SqlTemplateParserUtil() {
8986

@@ -116,20 +113,8 @@ private static void validate(File file) throws SAXException,
116113
}
117114

118115
private static InputStream getSchemaInputStream() {
119-
InputStream is = null;
120-
try {
121-
URL url = new URL(MYBATIS_XSD_REMOTE);
122-
is = url.openStream();
123-
} catch (IOException e) {
124-
is = null;
125-
LOGGER.warn("Read file: " + MYBATIS_XSD_REMOTE + " error.");
126-
}
127-
128-
if (null == is) {
129-
is = SqlTemplateParserUtil.class
130-
.getResourceAsStream(MYBATIS_XSD_LOCAL);
131-
}
132-
return is;
116+
return SqlTemplateParserUtil.class
117+
.getResourceAsStream(MYBATIS_XSD_LOCAL);
133118
}
134119

135120
public static Element parseXml(String xml) {

‎src/main/resources/com/tqlab/plugin/mybatis/tqlab-mybatis-plugin.xsd

+43-1
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
<xsd:attribute name="column" type="xsd:NCName" use="required"/>
1919
<xsd:attribute name="javaProperty" type="xsd:NCName" use="required"/>
2020
<xsd:attribute name="javaType" type="JavaFullClassName" use="required"/>
21+
<xsd:attribute name="defaultValue" type="xsd:NCName"/>
2122
</xsd:complexType>
2223
</xsd:element>
2324

@@ -63,6 +64,29 @@
6364
</xsd:complexType>
6465
</xsd:element>
6566

67+
<xsd:element name="option">
68+
<xsd:complexType>
69+
<xsd:attribute name="name" type="xsd:NCName" use="required" >
70+
<xsd:annotation>
71+
<xsd:documentation>
72+
<![CDATA[
73+
Option name, useCache, flushCache, resultSetType, statementType, fetchSize, timeout, useGeneratedKeys, keyProperty, keyColumn etc.
74+
]]>
75+
</xsd:documentation>
76+
</xsd:annotation>
77+
</xsd:attribute>
78+
<xsd:attribute name="value" type="xsd:string" use="required" />
79+
</xsd:complexType>
80+
</xsd:element>
81+
82+
<xsd:element name="options">
83+
<xsd:complexType>
84+
<xsd:sequence>
85+
<xsd:element ref="option" minOccurs="1" maxOccurs="unbounded" />
86+
</xsd:sequence>
87+
</xsd:complexType>
88+
</xsd:element>
89+
6690
<xsd:element name="sql" type="Sql">
6791
<xsd:annotation>
6892
<xsd:documentation>
@@ -91,6 +115,7 @@
91115
<xsd:sequence>
92116
<xsd:element ref="comment" minOccurs="0" maxOccurs="1" />
93117
<xsd:element ref="params" minOccurs="0" maxOccurs="1" />
118+
<xsd:element ref="options" minOccurs="0" maxOccurs="1" />
94119
<xsd:element ref="result" minOccurs="0" maxOccurs="1"/>
95120
<xsd:element ref="sql" minOccurs="1" maxOccurs="1" />
96121
</xsd:sequence>
@@ -105,6 +130,21 @@
105130
</xsd:attribute>
106131
<xsd:attribute name="many" type="xsd:boolean" default="true"/>
107132
<xsd:attribute name="resultType" type="JavaFullClassName" use="optional" />
133+
<xsd:attribute name="parameterType" type="JavaFullClassName" use="optional" />
134+
</xsd:complexType>
135+
</xsd:element>
136+
137+
<xsd:element name="sqlFragment">
138+
<xsd:complexType mixed="true">
139+
<xsd:attribute name="id" type="xsd:ID" use="required">
140+
<xsd:annotation>
141+
<xsd:documentation>
142+
<![CDATA[
143+
The unique identifier for a sql fragment.
144+
]]>
145+
</xsd:documentation>
146+
</xsd:annotation>
147+
</xsd:attribute>
108148
</xsd:complexType>
109149
</xsd:element>
110150

@@ -121,9 +161,11 @@
121161
<xsd:sequence>
122162
<xsd:element ref="column" minOccurs="0" maxOccurs="unbounded" />
123163
<xsd:element ref="result" minOccurs="0" maxOccurs="unbounded" />
164+
<xsd:element ref="sqlFragment" minOccurs="0" maxOccurs="unbounded" />
124165
<xsd:element ref="operation" minOccurs="1" maxOccurs="unbounded"/>
125166
</xsd:sequence>
126167
<xsd:attribute name="name" type="xsd:NCName" use="required"/>
168+
<xsd:attribute name="sqlSessionFactory" type="xsd:NCName"/>
127169
</xsd:complexType>
128170
</xsd:element>
129171

@@ -149,4 +191,4 @@
149191
<xsd:pattern value="[\s\S]+"></xsd:pattern>
150192
</xsd:restriction>
151193
</xsd:simpleType>
152-
</xsd:schema>
194+
</xsd:schema>

0 commit comments

Comments
 (0)
Please sign in to comment.