00:00
各位同学大家好,下面呢,我们开始实现登录日志功能,那咱们怎么实现给各位做个说明,各位注意啊,我们刚才用那个的时候呢,有这么一个思想,就是我们在里边有个接口叫user details,各位应该记就是user service details,然后咱们是在这里边写了一个实现类,是不是实现的这个接口,所以咱目前呢,还是按照这种思想我们来做,那怎么实现给大家写一下啊,首先第一个我们在C里边呢,先创建一个service这么一个接口。那我在里边咱们建个包,这个包就叫service,然后在里边呢,创建一个就是记录登录日志这么一个接口,咱们起个名字就叫log in log。Service登录日志。把这个进行创建,呃,是一个接口啊,我重新创建一下。不是一个类,是一个接口。
01:00
是这个。Log in log。Service咱们进行创建,然后创建之后呢,在这里边我们写上一个方法,这个方法就是记录我们登录的这个信息,那咱们写个方法,那我加上我们加上一个public we,我们起个名字就叫这个record。Log in logo,然后在里边呢,加上它相关的参数,咱就直接加下,看一下这个表里边对照它来写,第一个参数加上名称,IP状态,还有信息我在里边给他加上啊,第一个参数加上它,这个就是登录的用户名称username,然后第二个加上里面这个状态我们叫。CS也是里边的这个纸状态,就是咱约定零成功一失败,或者说一成功零失败,根据自己来约定,然后第三个是当前登录这个IP地址。
02:03
包括还有下一个就是当前这个输出信息,就是咱是登录成功还是登录失败。这是我们加上的这么一个方法,这个咱们就完成,也就说以上我们定义了这么一个interface接口,然后定义之后呢,咱怎么做呢,我们下面呢,在这个system,就是service system里边来实现这个接口,我们最终实现这个具体的记录方法,其实就是一个简单的添加方法,那这里边我们在这位置来写一下这个方法。首先啊,我们在里边先来写它的service的实线,我们写到这个位置。然后这个实我们logo。Service m PL。让他实现我们这个接口。Log in log。然后在这个类上边加上它的注解,就是service实现。最终这个方法。
03:03
啊,这个我们给它叫加上记录你的这个登录的日志信息,然后加上之后呢,最后我们要操作数据库是不是叫map,所以我在里边呢,把maple我们做个创建这个啊,咱就写个maple,那这位置我来写一下啊。这里边我就参考其他的,咱给它复制改一下就可以了,我就参考这个。咱们建一个map,然后这个map我给它起一个名字啊,这个名字呢,我就叫这个。写到这里啊。咱们就叫这个log log。把这个我们做一个创建。然后这里边把它相关的这些。名字给他改一下,改成咱们那个就是实体类对应那个mapper。应该是有这么一个十几类啊,咱们看一下啊,应该是有我们找一下。
04:00
咱们看这个model模块中,找一下它那个尸体类,就看一下它的名字是什么,应该是在这里,呃,就这个十几类,把这个我们给它拿过来。放到这里。所以现在啊,这个map我们就给它完成了啊,或者说啊,这名字看着有点难受,我就还是叫这个名字吧。System这个log map啊,咱就叫这个名字了啊,或者说啊,就叫什么无所谓,就叫他了啊,你根据实际自己来改啊,你自己的这种习惯啊,然后现在这个就完成了,完成之后呢,最后我们在里边是不是写一个添加的操作,那咱们最后来写一下啊,就是一个添加,我们直接new这个对象system。Log in log,然后new这个记下。扭完对象之后,向里边来设置它的这些值,就是一个一个往里边塞就可以了。第一个就是。Use a name。
05:00
然后我们继续设置第二个是它这个状态CS。然后第三个我们继续设置。里边这个IP地址。包括最后一个它里面这个信息,所以现在这些就都完成了。完成之后呢,我们把这个map给它注入进来,然后最终调方法我们进行实现。我们这个map,呃,它的名字应该叫这个log in。这个。写下啊log log这个map咱把它注进来。然后注之后啊,在map上边,我们加上它这个相关的注解,我们就加一个叫这个。Reary,啊,然后再加上一个map,找到它动态创建一个对象,这些都给它加上,然后最终我们注入,注入之后调用里边这个添加的方法,这个方法叫insert的,然后咱们传入对象。
06:06
所以现在啊,这个方法我们就完成了,就是添加我们这个数据。这个我们就写到这里,然后之后呢,我们继续往下来看啊,就是现在我们看在C模块中,我们定义了这么一个接口,来记录你的登录的日志信息。然后这个之后,我们刚才也进行了实现,实现之后最后我们在里边给他具体来用一下,那怎么用呢?给大家说明啊,咱们还是找到我们登录或者说认证这个过滤器。把这个找到,然后在人声过滤器中,因为要用到这个对象,所以在里边呢,我把它先给它声明一下,我们加上一个。然后这个叫做log in log。把这个我们先给它加上。然后加上之后呢,在它的构造中,咱把它就是给它传入进来,我们加上这个参数,我就加到这里面。
07:08
然后最后在这里面加上一个this.login log service,等于login log service现在就完成了,完成之后呢,我们继续往下来写,咱们来到这个认证成功的方法应该是这个方法successful,然后在这个方法中我们做什么呢?我们写到这里啊,就是当你认证成功之后,或者说我们现在认证之后,我们要记录当前这个就是认证的信息,那咱在里边给他做一个记录。就是记录你的登录的这个日志,把这个在里边给他写一下,咱们做法很容易啊,直接调用这个service里边我们写的这个方法传入参数,我们快速写一下,第一个就是当前这个用户的名称,那我们从里边给它来取出来取一下这个用户名称。
08:01
咱们通过custom user里边的方法get username到它的用户名称,然后第二个加上当前这个状态,咱们就加个一啊,代表成功或者零代表成功,自己来约定,我就加个一,然后第三个加上IP地址,IP地址添加呢,我这里边写好了一个工具类,咱直接用一下,通过它来得到当前里边这个就是IP地址工具类我就放到这里,我先建个包。然后把类咱们直接复制过来。就是这个类,然后最后我们调用工艺类中这个方法就是IP。Us里边这个方法,然后咱们得到当前的这个IP地址,我用这个来得到一下传入对象啊,这就是IP。这个我们给它穿进来。呃,应该是这个啊。Get IP address,然后传来之后,最后一个就是我们那个信息,比如咱提示就叫登录成功,以上这部分就完成了调用,咱最终啊,通过调用能把登录信息,然后进行存储,这个就完成。
09:15
完成之后呢,我们这里边啊,还需要改个地方,就是在我们这个配置类中,咱需要改个地方,因为刚才这里边的这个加了一个参数,那我们给它加上啊,首先这个位置我们还是进行这么一个注入。加上,然后private,我们刚才这个接口log service,把这个加上,然后加上之后咱们往下来看啊,在下面就是这里边,咱们传的应该是有三个参数,所以咱们需要再来传一个,把这个传进去。然后咱们再来看还有哪个地方缺少。其他地方应该都没有了,这样的话就可以了啊,所以以上咱们把这个我们就最终完成了,就是记录这个。
10:00
登录的日志信息,这个我们就写到这里。最后呢,咱们把服务器启动一下,然后咱们测试一下,就看一下这个登录日志信息,最终能不能加到我们的数据库中,咱们做个测试,服务器先启动,然后咱们直接看一下表里边,表里边呢,目前有这么多数据,咱为了看到方便啊,这些数据我先给它删掉,然后一会儿再往里面添加,要不然数据咱不好找到。我现在做个删除,Delete from,加上这个表,把表中数据给它都删掉。然后咱们看现在表里边为空,这个时候我们再登录。首先我先退出去。然后咱们用我的密登录。大家看现在我们这个登录过程是不是登进来了,登进来之后咱们看表里边啊刷新各位看这数据是不加进去了,证明咱们这个记录登录日志信息就成功了,登录之后把当前哪个用户在什么时间登录,他的状态以及IP我们就都得到了。
我来说两句