本文整理匯總了Java中org.mybatis.generator.api.dom.xml.XmlElement.getElements方法的典型用法代碼示例。如果您正苦於以下問題:Java XmlElement.getElements方法的具體用法?Java XmlElement.getElements怎麽用?Java XmlElement.getElements使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類org.mybatis.generator.api.dom.xml.XmlElement
的用法示例。
在下文中一共展示了XmlElement.getElements方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: generatedWithSelective
import org.mybatis.generator.api.dom.xml.XmlElement; //導入方法依賴的package包/類
/**
* 有Selective代碼生成
* @param element
*/
private void generatedWithSelective(XmlElement element, IntrospectedTable introspectedTable, boolean hasPrefix) {
if (incTools.support()) {
// 查找 set->if->text
List<XmlElement> sets = XmlElementGeneratorTools.findXmlElements(element, "set");
if (sets.size() > 0) {
List<XmlElement> ifs = XmlElementGeneratorTools.findXmlElements(sets.get(0), "if");
if (ifs.size() > 0) {
for (XmlElement xmlElement : ifs) {
// 下麵為if的text節點
List<Element> textEles = xmlElement.getElements();
TextElement textEle = (TextElement) textEles.get(0);
String[] strs = textEle.getContent().split("=");
String columnName = strs[0].trim();
IntrospectedColumn introspectedColumn = IntrospectedTableTools.safeGetColumn(introspectedTable, columnName);
// 查找是否需要進行增量操作
if (incTools.supportColumn(introspectedColumn)) {
xmlElement.getElements().clear();
xmlElement.getElements().addAll(incTools.generatedIncrementsElement(introspectedColumn, hasPrefix, true));
}
}
}
}
}
}
示例2: generatedWithoutSelective
import org.mybatis.generator.api.dom.xml.XmlElement; //導入方法依賴的package包/類
/**
* 無Selective代碼生成
* @param xmlElement
* @param introspectedTable
* @param hasPrefix
*/
private void generatedWithoutSelective(XmlElement xmlElement, IntrospectedTable introspectedTable, boolean hasPrefix) {
if (incTools.support()) {
List<Element> newEles = new ArrayList<>();
for (Element ele : xmlElement.getElements()) {
// 找到text節點且格式為 set xx = xx 或者 xx = xx
if (ele instanceof TextElement) {
String text = ((TextElement) ele).getContent().trim();
if (text.matches("(^set\\s)?\\S+\\s?=.*")) {
// 清理 set 操作
text = text.replaceFirst("^set\\s", "").trim();
String columnName = text.split("=")[0].trim();
IntrospectedColumn introspectedColumn = IntrospectedTableTools.safeGetColumn(introspectedTable, columnName);
// 查找判斷是否需要進行節點替換
if (incTools.supportColumn(introspectedColumn)) {
newEles.addAll(incTools.generatedIncrementsElement(introspectedColumn, hasPrefix, text.endsWith(",")));
continue;
}
}
}
newEles.add(ele);
}
// 替換節點
xmlElement.getElements().clear();
xmlElement.getElements().addAll(newEles);
}
}
示例3: addElementWithBestPosition
import org.mybatis.generator.api.dom.xml.XmlElement; //導入方法依賴的package包/類
/**
* 在最佳位置添加節點
*
* @param rootElement
* @param element
*/
public static void addElementWithBestPosition(XmlElement rootElement, XmlElement element){
String id = getIdFromElement(element);
if (id == null){
rootElement.addElement(element);
} else {
List<Element> elements = rootElement.getElements();
int index = -1;
for (int i = 0; i < elements.size(); i++){
Element ele = elements.get(i);
if (ele instanceof XmlElement){
String eleId = getIdFromElement((XmlElement) ele);
if (eleId != null){
if (eleId.startsWith(id)){
if (index == - 1){
index = i;
}
} else if (id.startsWith(eleId)){
index = i + 1;
}
}
}
}
if (index == -1 || index >= elements.size()){
rootElement.addElement(element);
} else {
elements.add(index, element);
}
}
}
示例4: findXmlElements
import org.mybatis.generator.api.dom.xml.XmlElement; //導入方法依賴的package包/類
/**
* 查找指定xml節點下指定節點名稱的元素
* @param xmlElement
* @param name
* @return
*/
public static List<XmlElement> findXmlElements(XmlElement xmlElement, String name) {
List<XmlElement> list = new ArrayList<>();
List<Element> elements = xmlElement.getElements();
for (Element ele : elements) {
if (ele instanceof XmlElement) {
XmlElement xmlElement1 = (XmlElement) ele;
if (name.equalsIgnoreCase(xmlElement1.getName())) {
list.add(xmlElement1);
}
}
}
return list;
}