00:00
好,Spring mvc的配置文件我们就写完了,接下来我们就写一个非常重要的咱们这个配置文件。Spring的配置文件呢,它里边应该是跟业务逻辑有关的,非常重要的,比如数据源。数据源事务控制,哎,等等等等这些核心啊,业务逻辑组件都在这里边配置,那么呢,我们就来首先配置我们这个数据源class。哎,我们用的是C3P0,它叫通Bo put that source,好就是它我们给一个ID,比如呢,我们这个ID就叫put that source,哎,我们这个数据源,然后呢,我们这个数据源它需要一些呃设置,比如JDBCUURL,我们要联想的咱们这数据库,比如呢,我们这个driver class,我们这个数据库驱动的咱们这个驱动类加上呢我们这个user。啊,User,我们这个呢,用户名以及password等等这些,而这些呢,我们一般都不是写死的,所以说呢,我来创建一个配置文件叫DB。
01:08
第二,Properties,我们把跟数据源有关的配置都放在这个properties配置文件里边,第一个就是JDBURL,那么这个呢,我们为了不引起跟别的配置混乱,我们给所有跟数据源有关的都加一个jdb CU前缀。好联想哪个数据库呢?我们来打开我们这个数据库客户端,我们专门来创建一个数据库。我们呢,就叫SSM,我们做的这个c rud啊,我们这个数据库,我们就联系他。UTF8。好,我们要连的是这个数据库,也就是说呢,JDBCMYQ。MY啊,咱们这个local host。3306我本机的3306的SSM-c rud,我连的是这个数据库。
02:03
好,包括JDBC.class哎,我们这个驱动类,我们是com点六。Come。MYJDBC。好,这是我们这个驱动,哎,加上呢,我们这个JDBC的这个用户名,哎,我们就叫root JD bc.password。等于哎,我的是123456好,这些配置呢,我们都写在外边,接下来我们来要引入,所以说呢,首先我们是需要con标签。这有一个contest标签,好,我们用它来引入咱们这个外部的配置文件,Contest property hold,然后呢,使用location。Location我们来指定,我们呢在类路径下有一个叫DB properties配置文件,我们把它引入,然后呢,我们就在这一块取值即可,Dollar服务大括号来,我们JDBCUURL的值就是我们这个。
03:14
啊,包括呢这一块Y6来我们这个Java的值。就是我们这个。也拿过来。哎,到了符大括号啊,大符大括号,我们来取出这个值,包括呢,剩下的这两个取值Y6。等于Dollar大括号,我们取出的是JDBC.user的值,以及我们最后的。这个。到大括号JDBC.pass好,这数据源的配置我们就在这写好了,那么呢,我们这些业务逻辑组件我们也得扫描进来,所以说呢,我们component sc,我让他扫描。
04:00
虽然我们现在还没写什么,我让扫描硅谷下的所有包,但是它和spring mvc不同的是,Spring mvc来扫这些控制器,它除了控制器不要,剩下的业务逻辑组件他都要。好,我们把这个CTRL了,就是说呢,我们在spring配置文件中让spring的容器不扫咱们这个控制器,好这样就行了。那么呢,咱们这个数据源也就配置好了。接下来更重要的就是配置跟马蒂斯的整合了。配置和咱们这个马的,咱们这个整合。而和马蒂斯的这个整合的配置呢,我们也非常简单,比class,哎,有一个叫circle。Being就是它呢,能帮我们。创建出factory。而这个circle session创建呢,我们在这一块可以配置我们这个马circle session创建要用的一些东西,比如conflict location,哎,这就是配置我们马贝蒂斯全局配置文件的位置。
05:12
指定。咱们就要买贝全局配置文件的位置,好比如呢,我们把贝蒂的全局配置我也放在这里边,哎。我用的创建一个插麦,我叫MY。Content。好,这是马贝蒂斯的全局配置文件,那么这个全局配置文件呢,内容我们一会再填充,我们先来指定,好,好它是我们这个类路径下的,我们这个马贝蒂斯的。这是MY全局配置文件,当然呢,还有一些我们都可以指定,比如呢,我们这个data source,哎,我们这个数据源,数据源我们用的就是我们这个刚才配的这个数据源。包括我们还有一些,比如呢,我们这个member locations,这个locations的意思呢,就是。
06:05
呃,指定。指定咱们叫马贝蒂斯。Map文件。咱们这个位置。好,假设呢,我们未来把所有的map文件,我们呢,都放在我们这个map啊,Resource所有配置下的这个文件夹里边,那么呢,我就可以在这里边来说,好,你是扫描我类路径下的。这个map文件夹下的。下的所有XM文件。所有的查表文件都是我们这个map文件,好这一块呢,我们就指定好了,接下来我们还要配置。配置我们这个呢,啊扫描器。配置扫描器应该是将我们这个马贝咱们这个接口的,咱们这个实现。
07:00
扫加入到IOC容器中,因为我们知道我们这个MY贝接口的实现是一个代理对象,所以说呢,我们需要通过它来将这些加到LC容器中来配置class,好,这个class呢,我们来配一下。它呢是我们叫啊。啊,Scanner finger,好,我们来配它,让它呢来扫描,哎我们,哎这有一个配置叫best package,来扫描我们。com硅谷丢包下的所有咱们这个接口的实现。它就是扫描我们所有的第五接口。扫描。扫描所有咱们这个do接口。咱们这要实现。加入到咱们这个IOC容器中。
08:02
啊,所以说呢,这两块就是我们跟马贝蒂斯的整合,我们就做完了,当然了,我们这个事物控制。事物控制的,咱们这个配置。我们也得在这里边,我们来配。那么这食物控制的配置呢?也很简单,我们来配一下。它的这个配置,哎,我们呢,有事务管理器,有一个事物管理器呢,叫data source。Trans manager,诶,我们就是用它来做咱们这个事务控制好,把它的权利名拿过来啊,这是我们的这个事物管理器。ID,比如呢,我们就叫咱们这个transition manager名简单一点。好,这个管理器里边呢,哎,我们要能管事就得,哎,相当于我们控制住数据源。
09:02
数据源里边连接的啊,开启关闭回滚操作,我们用事务管理器来做,所以说呢,我们在这里边需要配置使用property,来来告诉你我们的这个项目中用的数据源是哪个,哎,接下来我们事务管理器控住这个数据源就行了。好,那接下来呢,我们这个事物管理器就配好了们接下来,哎,这接下来就有两种办法,我们可以开启基于注解的事物,哎,我们也可以呢,使用咱们这个插麦配置形式的咱们这个事物,而我们一般呢,推荐啊比较重要的,比较重要的我们都使用。都是使用咱们这个配置式。所以说呢,我们这个事物控制啊,我们也是用配置来控制比较好,那么这个配置怎么写呢?哎,我们需要啊,咱们这个A。
10:00
这个包啊,这个名称空间,那么这个A名称空间呢。首先哎,有一个叫a con,哎,我们来配置A的这一块呢,有一个叫A的。这个point。我们这个切入点表达式,比如说呢,我们哪些要切入。哎,比如说呢,我们现在想要切入到哪些里边进行事物控制,我们这个表达式的写法呢,也是固定的excution,哎,小括号接下来里边就是表达式,首先呢,就是我们这个返回值啊,值类型,哎,Public知是访问权限控制符,可以不写返回值类型,所有哎,我们是come at硅谷service包。下的哎,下的所有类哎的所有方法哎,我们都想来控制事物,所以说呢,我们这一块注意写法啊,我是双点,双点的意思就是即使这个service包下还有子包也行,双点下的星就是所有的我们这个类的所有方法,我们都来控制事物,而这一块呢,我们再来写两个点,那么就是这个方法里边参数任意多也行。
11:15
我们呢,就是TX关系,这是我们的这个事物的。TX point,我们的这个事物切入点,我们所有的方法呢,我们都能切入事物。接下来呢,还需要一个AR,哎,这就是配置。配置咱们这个失误咱们得增强。那么呢,我们这个事物增强的配置,我们需要在这一块引入TX空间。啊,使用TX名称空间,这有一个ts advice,这就是配置。配置咱们这个事物,咱们这个增强。啊,也就是事物如何切入。我们在这里边呢,哎,有一个。
12:03
有一个ID,哎这个ID呢,就是我们给这个advice,哎,起一个名,我们就叫TX advice。啊,而我们的这个事物如何切入啊,我们就是用它啊,指用这个指定的规则来切入,而切入哪些方法啊,我们就是用。刚才我们的切入点表达式,哎。我们来指向刚才的这个切入点表达式。比如说呢,这个切入点表达式一切入以后该如何切,每一个方法怎么办,要看这个事物增强的配置。好,那么这一块有一个TX attribute,我们就在这里边来配置。配置第一个txman。哎,我们写一个心心的,意思呢,就是代表我们这个切入点,切入的所有方法,所有方法都是事物方法,好然后呢,接下来我们再来写一个配置啊,比如呢叫get型,意思呢就是以get开始的所有方法。
13:03
E。Get,开始的。所有方法,比如呢,我们以get开所有开始的所有方法,我们认为它都是查询,所以说呢,我们可以调优,我写一个read on处,哎,这样的话呢,就会做一些优化,好,这样的话呢,哎,我们这个事物增强在这一块就简单的配置出来了。也就是说呢,我们整个spring的配置文件啊,就这么几个核心关注点,Spring配置文件的核心点,哎,我们目前的核心点呢,第一个就是咱们这个数据源。第二个。就是与。马蒂斯的整合。第三个。整合第三个就是咱们这个事物控制。哎,这几个配置该怎么配,我们上边都有,那那么在这一块呢,这两个啊,这两个是我们这个马贝蒂斯的配整合配置。
14:08
啊,马斯的整合配置,我们在这就完了。这是我们马贝蒂斯的整合配置,而这下边的这些一堆呢,是我们这个事物控制的这些配置,哎,在这儿。他们也就完了。而上面呢,这些是数据源的配置,好这些配置呢,大家都应该写的啊,非常熟练,好我们spring的配置文件就至此,先写到这儿,如果后边有什么要加,我们再来加就行。那么这个spring的配置文件我们写完了以后呢,我们接下来就得看一下这个马贝蒂斯的这个配置,而这个spring的配置里面呢,特别是我们这个事物控制的配置啊,非常重要,这一块呢,大家应该熟练的来写出来哦,而且这一块呢,还有一个小细节点,比如说呢,我们这一块配了一个事物管理器,那么事物管理器跟下面这些又是怎么产生关系的呢?首先切入点表达式的意思就是我们哪些方法可能要切入事物,好,我们写了一个切入点表达式,当一切入事物以后该怎么办?就是利用我们这个事物增强,哎,切入点表达式切的每一个方法都是事物,每一个以get开始的方法,哎,它都是只读的等等,那么关键是哎,跟事物管理器他们又怎么产生联系的呢?其实是我们这个事物增强这一块配置的时候。
15:35
有一个属性叫transition manager,哎,你看啊,它的值默认取值叫trans manager,而我们这个事物管理器啊,我们的I正好是trans manager,所以说我刚才没写这个,如果大家的这个事务管理器不叫trans manager。哎,那么呢,一定把事物管理器的名字拿过来复制粘贴在这,那么意思就是,哎,我们用这个事物管理器来控制事物,控制事物的细节,哎切哪些方法在这制定,哪些方法切入以后,哎该怎么办在这制定好,这是我们这个事物控制的一些重要细节,那完了以后呢,就是我们这个马贝蒂斯的配置了。
我来说两句