关于spring事务管理时xml配置文件内的标签含义 20
第一张图是基于schema的事务管理,在这里先问一下,schema在此处是什么含义呢,标准含义或者俗语都可以,请各位大神忙帮解答下,谢谢!!!==============...
第一张图是基于schema的事务管理,在这里先问一下,schema在此处是什么含义呢,标准含义或者俗语都可以,请各位大神忙帮解答下,谢谢!!!
======================================================
第二张图是基于application注解的事务管理 展开
======================================================
第二张图是基于application注解的事务管理 展开
1个回答
展开全部
首先,两个Spring配置表示的是两种不同的Spring事务配置方法,第一种,利用spring配置文件配置事务处理。第二种,利用Java Annotation标注配置事务处理。
第一种方式:
<tx:advice>配置AOP中的通知,你配置文件配置的内容为所以以batch开头的方法都需要AOP拦截进行事务处理。配置完通知后,需要配置连接点,也就是该通知在哪些代码中进行拦截。这个配置是通过<aop:pointcut>和<aop:advisor>配置的。<aop:pointcut>配置切入点,你的配置切入点的expression表示在执行j3t10.dao包中,UserDao这个类中的任何一个方法,参数形式没有限制,返回值没有限制的方法都是切入点。
execution(* j3t10.dao.UserDao.*(..))
上面第一个*号表示返回值类型任意。第二个星号表示UserDao类中任意方法。(..)表示方法参数任意。
第二种方法:
在spring配置文件中指定使用annotation标注进行AOP事务拦截。那么关于事务的配置都使用Annotation @Transactional在类的源代码中直接标注。
关于配置标注方式事务处理的那个配置文件中上面红框里是关于XML的一些知识。XML文档有两种文档类型定义方式DTD和Schema。Spring配置文件使用Schema方法声明文档格式。Schema约束XML文档格式的时候需要指明名称空间和xsd schema文件url。
xmlns:aop="....."用来指定aop作为前缀的标签的名称空间。
xsi:schemaLocation="......."指明所有名称空间对应的xsd文件的url。
也就是你的Spring配置文件中有多少个xxx前缀开始的标签(例如,你用了<aop:xxx>,<tx:xxx>前缀的标签)就需要在XML头部声明名称空间并在schemaLocation中指定位置。
第一种方式:
<tx:advice>配置AOP中的通知,你配置文件配置的内容为所以以batch开头的方法都需要AOP拦截进行事务处理。配置完通知后,需要配置连接点,也就是该通知在哪些代码中进行拦截。这个配置是通过<aop:pointcut>和<aop:advisor>配置的。<aop:pointcut>配置切入点,你的配置切入点的expression表示在执行j3t10.dao包中,UserDao这个类中的任何一个方法,参数形式没有限制,返回值没有限制的方法都是切入点。
execution(* j3t10.dao.UserDao.*(..))
上面第一个*号表示返回值类型任意。第二个星号表示UserDao类中任意方法。(..)表示方法参数任意。
第二种方法:
在spring配置文件中指定使用annotation标注进行AOP事务拦截。那么关于事务的配置都使用Annotation @Transactional在类的源代码中直接标注。
关于配置标注方式事务处理的那个配置文件中上面红框里是关于XML的一些知识。XML文档有两种文档类型定义方式DTD和Schema。Spring配置文件使用Schema方法声明文档格式。Schema约束XML文档格式的时候需要指明名称空间和xsd schema文件url。
xmlns:aop="....."用来指定aop作为前缀的标签的名称空间。
xsi:schemaLocation="......."指明所有名称空间对应的xsd文件的url。
也就是你的Spring配置文件中有多少个xxx前缀开始的标签(例如,你用了<aop:xxx>,<tx:xxx>前缀的标签)就需要在XML头部声明名称空间并在schemaLocation中指定位置。
追答
用白话解释一下。一个XML文档是由标签构成的。XML中的标签名字可以任意。那么为了能够定义一个XML文档中应该有什么标签,每一个标签有什么属性,XML规范中规定了使用DTD(普通文本文件)和schema(也是XML文件)来定义一个XML文件中的标签名字,属性等相关内容。Spring配置文件中的标签名字和属性是由Spring框架通过编写Schema文件来完成的。所以,在使用XML配置文件的时候,需要你引入当前XML文件的Schema文件。就是在XML第一行通过规范的schemaLocation来引入,同时需要引入名称空间的定义。
例如:Spring定义了用来配置AOP的标签,,那么在Spring配置文件中,如果你使用了这样的标签,就需要在头部定义aop开头的标签的名称空间和schema文件地址。xmlns:aop=""这个配置就是在配置aop开头标签的名称空间(名称空间,简单说就是名字,但是为了名字不重复,一般使用定义这些内容公司的URL地址)。然后在schemaLocation属性中添加一个引入Schema文件的声明。
这个你的XML文件在Spring框架解析的时候,Spring框架可以利用XML相关的API来校验你编写的XML配置内容是否符合Spring的schema文件。包括,你在用开发工具Eclipse配置Spring配置文件的时候,如果你配置错误,开发工具会提示你配置不对,那么开发工具是如何知道你的配置文件编写格式是否正确呢?同样都是根据你头部的声明的名称空间和schema来完成的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询