diff --git a/GoMybatisTempleteDecoder_test.go b/GoMybatisTempleteDecoder_test.go index 4764aa4..3ff87f3 100644 --- a/GoMybatisTempleteDecoder_test.go +++ b/GoMybatisTempleteDecoder_test.go @@ -17,7 +17,12 @@ type ExampleActivityMapper struct { //初始化mapper文件和结构体 var exampleActivityMapper = ExampleActivityMapper{} -func init() { +func getMapper() ExampleActivityMapper{ + initMapper() + return exampleActivityMapper +} + +func initMapper() { bytes := []byte(` @@ -184,7 +189,7 @@ func TestGoMybatisTempleteDecoder_Create(t *testing.T) { act, } var session = TempleteSession{} - n, err := exampleActivityMapper.InsertTemplete(args, &session) + n, err := getMapper().InsertTemplete(args, &session) if err != nil { t.Fatal(err) } @@ -194,7 +199,7 @@ func TestGoMybatisTempleteDecoder_Create(t *testing.T) { func TestGoMybatisTempleteDecoder_Select(t *testing.T) { var session = TempleteSession{} - n, err := exampleActivityMapper.SelectTemplete("test", &session) + n, err := getMapper().SelectTemplete("test", &session) if err != nil { t.Fatal(err) } @@ -208,7 +213,7 @@ func TestGoMybatisTempleteDecoder_Update(t *testing.T) { Name: "test", } var session = TempleteSession{} - n, err := exampleActivityMapper.UpdateTemplete(act, &session) + n, err := getMapper().UpdateTemplete(act, &session) if err != nil { t.Fatal(err) } @@ -218,7 +223,7 @@ func TestGoMybatisTempleteDecoder_Update(t *testing.T) { func TestGoMybatisTempleteDecoder_Delete(t *testing.T) { var session = TempleteSession{} - n, err := exampleActivityMapper.DeleteTemplete("test", &session) + n, err := getMapper().DeleteTemplete("test", &session) if err != nil { t.Fatal(err) } diff --git a/XmlLoader.go b/XmlLoader.go index 8f73b7d..35ae1ab 100644 --- a/XmlLoader.go +++ b/XmlLoader.go @@ -18,7 +18,6 @@ func LoadMapperXml(bytes []byte) (items map[string]etree.Token) { items = make(map[string]etree.Token) root := doc.SelectElement(Element_Mapper) for _, s := range root.ChildElements() { - var attrMap = attrToProperty(s.Attr) if s.Tag == Element_Insert || s.Tag == Element_Delete || s.Tag == Element_Update || @@ -29,11 +28,10 @@ func LoadMapperXml(bytes []byte) (items map[string]etree.Token) { s.Tag == Element_Delete_Templete || s.Tag == Element_Update_Templete || s.Tag == Element_Select_Templete { - var elementID = attrMap[ID] + var elementID = s.SelectAttrValue(ID,"") if elementID == "" { //如果id不存在,id设置为tag - attrMap[ID] = s.Tag elementID = s.Tag } if elementID != "" { @@ -77,15 +75,6 @@ func includeElementReplace(xml *etree.Element, xmlMap *map[string]etree.Token) { } } } - -func attrToProperty(attrs []etree.Attr) map[string]string { - var m = make(map[string]string) - for _, v := range attrs { - m[v.Key] = v.Value - } - return m -} - ////标签上下级关系检查 //func elementRuleCheck(fatherElement *etree.Element, childElementItem ElementItem) { // if fatherElement.Tag != Element_choose && (childElementItem.ElementType == Element_when || childElementItem.ElementType == Element_otherwise) { diff --git a/XmlLoader_test.go b/XmlLoader_test.go index 8be610d..1fddb71 100644 --- a/XmlLoader_test.go +++ b/XmlLoader_test.go @@ -5,6 +5,7 @@ import ( "io/ioutil" "os" "testing" + "time" ) func Test_Load_Xml(t *testing.T) { @@ -19,5 +20,6 @@ func Test_Load_Xml(t *testing.T) { if xmlItems == nil { t.Fatal(`Test_Load_Xml fail,LoadMapperXml "example/Example_ActivityMapper.xml"`) } + time.Sleep(time.Second) fmt.Println(xmlItems) }