2021年5月

备战期末考

文件夹已经建起来了,规划已经弄起来了。

还有三十多天,全力以赴备战期末考吧。

Java的项目加紧弄一弄,主要是PPT的制作

数学把老师发的题再从新看一看

英语把笔记多看一看,坚持习题练习

这三件加油吧。

我是对宿舍心寒了,考完试,估计那个同学也不会去环球影城,早日回家吧。让我回家好好休息。

想要独立自主,却又害怕孤独,还有社恐

这周,又开始抑郁了。。。

先是请假的事,

从周一,一直到现在,这几天一直在愁该该怎么和那个同学交流,周六一块出去玩。

其实已经提前说了一次,不过没有很正式,周一下午又提了一下,他一开始说可能不行,因为他没钱准备去打工了。后来好像想起来前几天跟他提前说过(我最反感的就是已经明确说好的,突然改变),再加上估计是这几天好多事都是我帮他的(开热点,借Wi-Fi,借钱等),又说,估计他这周没被安排工作,所以同意周六了。

但他又说,请假的话,我请周六,他请周日,然后周六出去的时候写上他的名,我感觉不好,因为万一被发现,不就透支我的信誉了吗?但他说,没事。因为这个,我还焦虑了两天,要是能再独立点,就只靠自己出去办事玩就好了,或者有其他的朋友陪伴就好了。

然后来到今天,本来还在犹豫着还要找他去一起去请假,没想到中午他主动在办公室门口等我,可惜老师说下午来请。下午,下课后,去找老师,情况说完后,老师没有不良反应,只是说能不能尽量安排到一天,“节能减排”,然后他就同意了,我们还是一张单子,周六出,省心了。

真的感觉有时候挺累的,真的希望能够自己独立好,其实自己单纯去趟Apple Store应该没事,毕竟以前去都是我自己主动问的,他仅仅在旁边玩,但一想到自己还是莫名恐惧,而且只有他愿意出去,只能死皮赖脸想办法尽量贴合他心意的拉上他了。

还有,尽管今天下午顺利请完假,心情愉悦,就和他去吃了饭,但前几天还是焦虑,反感。

我已经在很努力了,但看着他就烦,他干什么我都感觉烦。天天晚上洗衣服,睡觉的时候外放也不关,在厕所里精神错乱般的瞎叫,早上用iPad定很早的闹钟然后再关掉继续睡(吓得以为是我的闹钟),然后我的心理那个反感就睡不着了,早上早起声音不小。是真的烦够了。

我感觉确实有有一点我在学校发泄不了,把情绪全都发泄到他身上了(在心里),但感觉看着他真的烦。

抛弃他,

感觉就是一个人做好多事,有时候挺孤独的。有一个在课堂上认识的朋友,感觉挺好,一直聊得来,可是一直没有很深入的交流(在非课堂时间去玩),总感觉还是控制好为好,干涉过多就容易出问题了。

所以生活上,基本上除非碰巧,大致都是我一个人了。

中午宿舍的那个同学是不稳定的,有时候没钱就直接跑了,有时候就直接跟着别人走了,我自己去食堂吃饭,但感觉就是一个人吃饭不自在。紧张感。

下午取快递的时候,一般也是我自己去,也是紧张感。

今天晚自习的时候,尽管坐在室友旁边,但没有跟他们通过什么联系起来(比如说话,或者游戏,他们在打王者,我没参与),感觉挺难受的,自己一个人漫无目的的刷手机,然后唱歌。

孤独,社恐,焦虑,等等加起来,都快变成抑郁了。

生活能不能变得好一些?

一个有趣的事情

今天例行晚上去操场散步,

看着操场地面一个影子离我越来越近,感觉很奇怪,原来是个女生要与我加个微信,

不太好意思拒绝,我也不知道是要干什么,就加上了。

加上了以后,向我发送了她的一些学习信息,然后就没了。

也没有继续聊,也没有其他的操作。

不知道是不是地推,还是广告,还是什么“真心话大冒险”之类的?

写拦截器(Interceptors)实现HandlerInterceptor接口,没有提示重写方法?

今天写代码,想到了要先写个拦截器吧,不然后面的路径还要再改。
新建完类后,实现了HandlerInterceptor接口,可是却没有提示重写方法,而且还没有报错?

通过互联网查询,得知这是Java8的新特性,因为有default的修饰,所以不重写接口方法,不会报错。

可是我们需要这些方法来拦截怎么办?

可以通过IDEA的快捷键,Mac下是⌘(command)+N然后选择“Override Methods”,或者直接按 ⌃(option)+o,就可以了,然后选中要Override的Methods,就出来了。

 

 

自习的效率越来越低了

尽管昨天已经知道了要干什么,可是自习的效率实在是太低了!

今天早上九点多起床,洗漱收拾完吗,十点多到教室,

刷手机刷到了十一点开始学习,

然后练了一页字,两篇阅读理解,30min数学课,就没了。

就三点了。

四个小时,消磨过去了。

真的需要改进了,真正的喜欢上学习,把时间充分利用起来

严控手机,严控发呆

挺激动的,又重新有斗志了!

今天,一天都是阴天的,临近中午的时候还有点小雨。

下午,继续在教室自习。

在看着宋老师课程的时候,突然看到好像现在数学,学习已经快要接近尾声了(高职升本科考试的应用数学考纲快要学完了),考纲里只有同济七上的内容,而且最后一章-微分方程,也不在考纲里,也就是说,看完宋浩定积分内容就可以结束这种,每天看视频抄笔记的日子了。

就可以,每天只需要拼命刷题,巩固了旧知识,不需要再新学其他的东西了!

现在已经看到45了,去掉一节将视频课程的大概,只需要看到59就结束了,就还有14节了!

而且每节的时长,除了极个别的1h多,也就30min左右,更有不到20min的。

来目标了,终于不用整天无聊的“盯着”别人,不用再把注意力放在那个烦人的同学身上了(其实现在已经逐渐的努力校正让自己注重自己,少管别人)。

坚持坚持,拿出上学期期末前的精神来(一天看了好多节视频课)。

正确下下周就开始刷题了!

Maven在Mac下的配置

昨天上课讲到了要开始使用Maven,由于老师是Windows OS的电脑,所以我按照老师讲解的一步一步复刻到了Mac上,可是怎么都不好使,Maven一直在报错。

我就在想,我到底是哪里环境变量配置出问题了?

Mac的环境变量配置是真的感觉不如Windows环境变量可视化方便,Mac配置环境变量可参考Java安装的文章,需要在一个“.bash_profile”文件里添加,可是我一直不知道规则是什么,到底该怎么写才对。

后来自己瞎蒙,看了看网上的,再相比于以前的改了改,终于出来了。

没想道还需要单独配置JAVA_HOME的变量,Maven才能用

静心

仔细想了想,其实如果自己没有很大的要求,内心别想的太多,每天简单一点,生活应该就会好起来吧。

如果心理不会整天想那个烦人的同学,应该就会好一些吧。应该就能回到大一的时候,那时后还不熟悉,基本上只考虑自己。

还有就是,感觉这个站点好像很多变成了生活文章,技术文章好像更新确实不多啊。我想的是暂时就把这里当成一个树洞吧,想办法以后把两类文章分一下。

从今天开始,把心静一静吧,然后注意力放到自己身上,不要整天放在别人身上了。

想好自己,考虑好自己,就够了,没必要去各种照顾别人,贡献自己。

安安心心的,看好自己就够了,真的就够了,内心强大一些,就不会受别人影响了,就能只关注自己,就不会向昨天的那篇文章那样,被另一个同学烦的彻底了。

从现在开始安心吧,还有好多事要做,没有时间去顾及那些没用的东西,不是同路人,没必要浪费时间。

是好是坏,真与我无关了。

好累,真的好累

越发的烦那个同学了。

现在看着他,跟他同处一楼,同处一室,脑子里就不停的想这个同学多么多么的恶心人,多么多么的令我反感。

弄的到现在,好像都变成了,只要看着他变差我就越来越高兴,一看他向好的方向发展,我就心里难受。

主要是感觉,他这种人,这种素质这么差的人为什么也要变好。而且还要一步步的来学我,看我用的Apple设备,他也要买,看我买的NIKE的衣服,他也要买。买完还非要让我知道,跟我聊,然后再紧接着还要调侃几句这个品牌,以前不停的说买Apple不如买HUAWEI爱国,这几天买NIKE衣服,明明买的盗版,还要略带炫耀的跟我说,只花了“六十多块钱从闲鱼买的”,然后紧接跟上句“现在是不是应该支持国产”,听的我真的恶心。

晚上在宿舍里,上个厕所洗个澡还要发出怪叫声,睡觉的时候,还要喊出来“睡觉!”,然后一扔设备,睡觉,也不管别人是否在睡觉。他的台灯,总是不管别人,有时都很晚了,依然开着他的“足以照亮整个宿舍的台灯”,有时自己去床上睡觉了,也不先关灯,每次都是等着别人去关,也就只有我去了。

中午,为了定个闹钟,别人都睡了,还要不压低声音喊一声“给我来个XXX的闹钟”,然后一扔手机,再非常大声的爬到床上去。

早上,已经有好几次了,手机定闹钟,不放到床上去,放到下面的桌子上,总是先把我们吵醒,然后自己还在装睡,别人不叫他,他不反应,叫他了,才大声的下床,再大声的上床,睡觉。早上,有时还开着他的“足以照亮整个宿舍的台灯”吃饭,早饭味,夹杂着还有他的张嘴吃饭的声音。

自从看我背的轻薄本很轻便,然后他也非得想要换轻薄电脑,再加上他从寒假以及一直到这学期开学,天天在我耳边说,“买个iPad”,一开始把钱都花光了,所以没钱买他看上的12.9的iPad Pro,后来五一前夕,不知道哪根筋抽了,突然决定全换,把他的Lenovo LEGION Y7000P笔记本卖给了他以前打工的学校超市,换得了5300¥,然后就开始从闲鱼上不停的找,找着了,还非要跟我说一声,让我看一下。然后用了几天宿舍里去当兵那个室友的笔记本(他没带走),也不知道跟没跟人家说,然后又从闲鱼买了个很烂的笔记本,先临时应付着上课,买那个很烂的笔记本,还非得要MacBook,看上面有个Apple的亮Logo才买的,买回来一看,是个山寨的,速度也很慢。然后五一回来,可能是又发生活费了,然后又花了2000+¥买了一个Lenovo轻薄本,然后买了后,又是跟我说,让我看。尽管买了结束了,还非得跟要拿买的Lenovo笔记本跟我对比MacBook,然后还跟我说,要攒钱买个MacBook。天天看我拿的Apple设备,然后就天天来恶心我。

生活学习上,为了买他要的iPad,课堂上也不积极跟进,就是在那里混,把电脑卖了以后,啥也不想了,就等着iPad,也不为学习考虑,先买个好电脑学习用。买了那个山寨MacBook后,意识到不好用,才又把生活费还有其他费用一并去买了一个笔记本,然后就又没钱吃饭了。弄的中午,有时下课找我一起吃饭,有时就没影了,根本不是一个稳定的人,不可靠。

晚上以及周末,到教学楼上自习,每次我来了,本以为可以自己一人静心学习,过了一会,他就推门进来了,以前我在一楼,他会进一楼更里面的教室,后来我去了一次二楼,没想到他也来了?惊了。来了以后,嗑瓜子,抱着个电脑开着外放看编程教学视频,然后玩手机,现在是玩iPad游戏了。看着真的烦,自己宿舍桌面不收拾干净,来教学楼瞎捣乱,不让别人学。以前大一的时候,还不知道能来教学楼学习,我们都是整天在宿舍里呆着,或学习或打游戏。大二开始知道能随便去图书馆或教室学习,就有意思了。

他自己一开始跟我说无聊,跟他说下个游戏玩,跟我说“戒了”,后来自己想玩,然后又下下来了,不停的玩。

来请教我,或让我帮他弄什么,还不相信我,想帮他忙各种“事”,各种条件。弄的我现在都不愿意再去帮他一点,但还是忍不住看他“傻”的好多东西不会弄,去帮他,事实证明,真的是“无效社交”。

他还总是一个喜欢抱怨的人,每次什么不满意了,还非要向我吐槽,弄的我也不舒服。

上课的时候,英语课,又是坐在我们前面那一排,上课在那里来回晃悠,刷会手机,然后在回头掺和几句我和同桌的交流,看着是真的烦!真的是希望不在出现在我的视野里了。

Java课也是“乱跑”,最开始跟我来,估计是想坐我旁边,我来了看到别的朋友旁边正好有位,就坐朋友旁边了,他本来受邀坐上学期他一直做的同学旁边,但他非得书和那个同学坐一起不学习,就去找另一个上学期认识的同学了,然后一开始还很好,他和他同桌后,中午吃饭也是和他一起了,以前都是来找我的,(以前也没同桌),现在也变了,然后过了一段时间,不知道为什么他和那个上学期认识的同学不愿意同桌了,又是他俩搓开,那个同学上课主动跑最后面坐了,自从他俩分开,然后又来找我吃饭了,他后来又到教室最后面,找宿舍室友旁边坐,然后又看到最前排室友旁边还有位置,于是又去那里坐,“来回乱窜”。

其实他“来回乱窜”也没什么,非得跑前面来,弄的上课一歪头尽管有同学挡着,但一看见他,看的真的心烦。

数学课他坐我后面,感觉还好一些,

写作课到无所谓,

思修课也看不见他,我坐最前面无所谓

现阶段唯一需要他的就是,体育课、周末外出旅行,我有点社恐,所以这两点需要,其他的基本上能自己努力克服了。

我看着他真的是烦死了,一想他就烦,一看他就烦,极少时间,和他聊天心里想着自己要心胸开阔点,他也没什么,可是其他时间,看他的言行,感觉是真的令人作呕,恶心至极。

我不知道是不是我的精神问题,主要是我真的不想再保持这种状态了,太难受了,是他的问题,就向父母提出休学或退学复读,是我的问题,去找心理医生咨询。

快点解决吧,我真的不行了。

org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user ‘toby’@’localhost’ (using password: YES))

今天遇到了一个很棘手的错误,密码正确,就是无法访问MySQL。

差点都要重装MySQL了。。。

仔细检查了一下,都没问题啊?数据库密码也正确,database.properties里面的数据也没有空格,配置文件里面的数据也正确,可就是无法连接数据库额。

一开始以为是权限问题?可后来从网上查到,没有人提到过权限问题,就放弃了。

后来想着,不要配置文件从database.properties获取了,直接给具体数据试试,没想到成功了。。。

附错误代码:

AbandonedObjectPool is used (org.apache.commons.dbcp.AbandonedObjectPool@370daa12)
   LogAbandoned: false
   RemoveAbandoned: true
   RemoveAbandonedTimeout: 180
- (24256 ms) - 2021-5-8 09:14:36[DEBUG](JakartaCommonsLoggingImpl.java:46) Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@512f7f74]
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
### Error querying database.  Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'toby'@'localhost' (using password: YES))
### The error may exist in cn/smbms/dao/user/UserMapper.xml
### The error may involve cn.smbms.dao.user.UserMapper.getUserByUserCode
### The error occurred while executing a query
### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'toby'@'localhost' (using password: YES))
	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:73)
	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:364)
	at com.sun.proxy.$Proxy10.selectOne(Unknown Source)
	at org.mybatis.spring.SqlSessionTemplate.selectOne(SqlSessionTemplate.java:159)
	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:63)
	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:43)
	at com.sun.proxy.$Proxy17.getUserByUserCode(Unknown Source)
	at cn.smbms.service.user.impl.UserServiceImpl.findUserByUserCode(UserServiceImpl.java:29)
	at cn.smbms.service.user.impl.UserServiceImpl$$FastClassBySpringCGLIB$$bcc37683.invoke(<generated>)
	at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
	at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:700)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
	at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:91)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
	at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:633)
	at cn.smbms.service.user.impl.UserServiceImpl$$EnhancerBySpringCGLIB$$3d144642.findUserByUserCode(<generated>)
	at cn.smbms.controller.LoginController.doLogin(LoginController.java:41)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:564)
	at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:215)
	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)
	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:743)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:672)
	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:82)
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:919)
	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:851)
	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:953)
	at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:855)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:829)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:106)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:544)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:690)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:616)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:818)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1626)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.base/java.lang.Thread.run(Thread.java:832)
Caused by: org.apache.ibatis.exceptions.PersistenceException: 
### Error querying database.  Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'toby'@'localhost' (using password: YES))
### The error may exist in cn/smbms/dao/user/UserMapper.xml
### The error may involve cn.smbms.dao.user.UserMapper.getUserByUserCode
### The error occurred while executing a query
### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'toby'@'localhost' (using password: YES))
	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:23)
	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:107)
	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:98)
	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne(DefaultSqlSession.java:62)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:564)
	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:354)
	... 62 more
Caused by: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'toby'@'localhost' (using password: YES))
	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
	at org.mybatis.spring.transaction.SpringManagedTransaction.openConnection(SpringManagedTransaction.java:80)
	at org.mybatis.spring.transaction.SpringManagedTransaction.getConnection(SpringManagedTransaction.java:66)
	at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:271)
	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:69)
	at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:56)
	at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:259)
	at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:132)
	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:105)
	at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:81)
	at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:104)
	... 69 more
Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'toby'@'localhost' (using password: YES))
	at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1225)
	at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)
	at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:111)
	at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:77)
	... 79 more
Caused by: java.sql.SQLException: Access denied for user 'toby'@'localhost' (using password: YES)
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1078)
	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4187)
	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4119)
	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:927)
	at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1709)
	at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1252)
	at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2483)
	at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2516)
	at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2301)
	at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:834)
	at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:64)
	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
	at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:416)
	at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:346)
	at org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38)
	at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:294)
	at org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1247)
	at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1221)
	... 82 more
null