00:00
大家真的是很细心呀。啊,你写代码的时候,希望大家也能够这么细心啊。你这是夸我还是还是在说反话?我咋听着,我咋听着那么不真诚。啊。来吧,我们看这个怎么玩哈。我们需要一个user details service。这个时候需要呃,自定义一个类去实现user details这个接口。我们看一下啊,有一个接口叫user details。Service。诶,有这么个接口。这个我们我们写个类,咱们去实现这个接口,接口里边呢,就一个方法。Load user by username。呃,你把name给我传进来。
01:00
我呢根据username把user对象呢给加载出来,查数据库加载出来。但是呢,他。账号密码对不对,是在这个方法加载完了以后,这返回一个user details,返回这个对象后续的spring security,后续才去检查账号密码对不对。啊,所以说他检查账号密码对不对呢,是在我们这个方法的后面去做的。嗯,建一个类。放哪呢?嗯,这个呀,叫啥呢,放这个啃一把吧。啊,这个就是麦。哎,这个叫做user。Details。Service。嗯,去实现这个接口。User。Details service。
02:01
嗯。不叫这个名吗?写错了。算了。复制一下吧。啊,这个eclipse要抽风了。好了。有个抽象方法。在这个方法里边呢,我们总的目标。啊,就是根据。表单提交的。呃,这个账号或者叫用户名啊,去查询我们的user对象。注意,这里边儿还有一个操作并装配。呃,角色权限啊等信息。没有角色权限这些东西也是不行的。那么这个呢,就是表单提交的。
03:01
这个是我们表单提交的账号。啊,或者叫做用户名。表单提交的用户名。好了。呃。那下边这个怎么去做哈,这里边儿肯定得根据这个把把这个东西给查出来,我们现在呢,有一个JD bc template。哎,我们用GDP template去做这个查询。J time呢有一个query方法,Query方法这里边根据这个肉map去查。根据肉map呢,还得去传一些个参数哈,Circle的肉map还有带参数的。
04:03
这个哈。嗯。来,咱们先写一个circle。这个数据库表这已经有了哈,就跟我们那个跟我们项目里边用的其实基本上一样哈,这边有log account user p swd。哎,然后咱们在这儿呢。Select太小了,字。嗯,先写个星海from。Tin,然后呢,这个where。Login account等于。比如说机米。哎,这边我们要的呢,是这个ID。Looking account。然后呢,User p swd。然后呢,Username。Email。不查也罢。
05:01
把这个拿过来,这是我们的缩口。这回呢,这个地方呢,是一个问号。啊,张福。嗯,肉这儿呢。哎,你有一个叫啥玩意儿来着。嗯,这玩意儿它的一个什么时间内哈,Been property。应该是这个吧。应该是这个。你一个这个,因为它是个接口。然后里边传一个类,我们还得整一个in的这个类。嗯,这个类呢,我们去见一下啊。哈。这里边儿这个各个字段呢,我们拿过来哈,这边是一个隐配类型的一个ID。嗯,随质类型的一个,呃,咱就跟他都一样哈,都整一样的。
06:06
咱们也就省得整这个别名了。User p swd。Your name。Email。啊,其实。好吧,先先先这么查着哈。嗯。直接咱就先给一个盖的方法,盖晒的方法是必须的,别的其实给不给就就那么回事。呃,盖塞方法和物三构造器是必须的,然后这边呢,来一个the m.class。参数呢,就是username。好嘞,这个写完了以后呢。啊,他说这边好像需要有个范星。
07:04
哎,这需要有个范星。范型。啊,他这。嗯,这个地方可以不写。哎,这边返回的是个,它返回的是个list list呢,咱们说肯定是只能返回一个。返回我的in呢?呃,下一步就是。这是我们查询到的,查询到的就是说要给他去加载这个角色呀,权限呀,这些个信息。我们先写下第一个大的步骤啊,从数据库去查询我的面的这个对象。第二个大的步骤呢。给这个admin去设置。角色权限信息。啊,我们得先去准备一个list,里边放的是grant。
08:03
Granted authority。哎,跟那会儿咱们看源码那个是一样的,这个叫做authorities。啊,我把这个啊。尿一个。然后呢,这往里边加呗,就是。假这个ID去有一个simple granted authority。然后里边放。哎,你要觉得这是个角色呢,你就前面给它加上肉干。哎,肉啊,比如说这个admin的这个角色。你要觉得是个权限呢,就不加肉干。比如说呢,来个update。哎。嗯。然后呢?Admin和这个authority,这个authorities啊,他们封装到一起。
09:06
哎,把我的mean对象和我们authorities。去封装到这个什么东西里面哈,封装到一个叫现在返回的user details里边。诶,那么这个user details呢,也是个接口。它有个时间类呢,叫user。我们就可以封装成这个user。哎,怎么封装成这个user呢?你有一个user。里边传这个啥玩意儿哈,用户名密码。呃。这么多哈用户名密码,还有这个authorities用户名。呃,密码,哎呀呵,这个得从我的命里边把把密码取出来。
10:08
啊,这就是密码,把密码插进去。这样才算写完啊,这样才写完,所以说这个跑一下,这个跑一下试试啊,啊不行,这个写完以后还得把它用上啊,不用还不行。
我来说两句