sloppyjack / simplerecord_springboot Goto Github PK
View Code? Open in Web Editor NEW[简账] - 一款简单好用的记账软件(后端服务)
License: MIT License
[简账] - 一款简单好用的记账软件(后端服务)
License: MIT License
Registered plugin: 'AbstractSqlParserHandler(sqlParserList=null, sqlParserFilter=null)'
Parsed mapper file: 'file [C:\Users\Travis\Documents\justForFun\SimpleRecord_SpringBoot\target\classes\mapper\CommonLogMapper.xml]'
Parsed mapper file: 'file [C:\Users\Travis\Documents\justForFun\SimpleRecord_SpringBoot\target\classes\mapper\MenuMapper.xml]'
Parsed mapper file: 'file [C:\Users\Travis\Documents\justForFun\SimpleRecord_SpringBoot\target\classes\mapper\RecordDetailMapper.xml]'
Parsed mapper file: 'file [C:\Users\Travis\Documents\justForFun\SimpleRecord_SpringBoot\target\classes\mapper\RecordTypeMapper.xml]'
Parsed mapper file: 'file [C:\Users\Travis\Documents\justForFun\SimpleRecord_SpringBoot\target\classes\mapper\RoleMapper.xml]'
Parsed mapper file: 'file [C:\Users\Travis\Documents\justForFun\SimpleRecord_SpringBoot\target\classes\mapper\RoleMenuMapper.xml]'
Parsed mapper file: 'file [C:\Users\Travis\Documents\justForFun\SimpleRecord_SpringBoot\target\classes\mapper\SpendCategoryMapper.xml]'
Parsed mapper file: 'file [C:\Users\Travis\Documents\justForFun\SimpleRecord_SpringBoot\target\classes\mapper\UserMapper.xml]'
Parsed mapper file: 'file [C:\Users\Travis\Documents\justForFun\SimpleRecord_SpringBoot\target\classes\mapper\UserRoleMapper.xml]'
_ _ |_ _ _|_. ___ _ | _
| | |\/|_)(_| | |_\ |_)||_|_\
/ |
3.3.2
[2021-05-09 22:23:59:131] [WARN] - org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:559) - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'qrcodeController': Unsatisfied dependency expressed through field 'wechatAuthService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'wechatAuthServiceImpl': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'wechat.appId' in value "${wechat.appId}"
[2021-05-09 22:23:59:158] [INFO] - cn.jackbin.SimpleRecord.common.manager.ShutdownManager.shutdownAsyncManager(ShutdownManager.java:34) - ====关闭后台任务任务线程池====
[2021-05-09 22:23:59:159] [WARN] - org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeDestruction(InitDestroyAnnotationBeanPostProcessor.java:182) - Destroy method on bean with name 'shutdownManager' threw an exception
java.lang.ExceptionInInitializerError: null
at java.lang.J9VMInternals.ensureError(J9VMInternals.java:184) ~[?:?]
at java.lang.J9VMInternals.recordInitializationFailure(J9VMInternals.java:173) ~[?:?]
at cn.jackbin.SimpleRecord.common.manager.ShutdownManager.shutdownAsyncManager(ShutdownManager.java:35) ~[classes/:?]
at cn.jackbin.SimpleRecord.common.manager.ShutdownManager.destroy(ShutdownManager.java:24) ~[classes/:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:389) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeDestroyMethods(InitDestroyAnnotationBeanPostProcessor.java:347) ~[spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeDestruction(InitDestroyAnnotationBeanPostProcessor.java:177) [spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
at org.springframework.beans.factory.support.DisposableBeanAdapter.destroy(DisposableBeanAdapter.java:242) [spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroyBean(DefaultSingletonBeanRegistry.java:579) [spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroySingleton(DefaultSingletonBeanRegistry.java:551) [spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.destroySingleton(DefaultListableBeanFactory.java:1089) [spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroySingletons(DefaultSingletonBeanRegistry.java:512) [spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.destroySingletons(DefaultListableBeanFactory.java:1082) [spring-beans-5.2.7.RELEASE.jar:5.2.7.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.destroyBeans(AbstractApplicationContext.java:1061) [spring-context-5.2.7.RELEASE.jar:5.2.7.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:564) [spring-context-5.2.7.RELEASE.jar:5.2.7.RELEASE]
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:143) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:758) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:750) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE]
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226) [spring-boot-2.3.1.RELEASE.jar:2.3.1.RELEASE]
at cn.jackbin.SimpleRecord.SpringbootSimpleRecordApplication.main(SpringbootSimpleRecordApplication.java:14) [classes/:?]
Caused by: java.lang.NullPointerException
at cn.jackbin.SimpleRecord.utils.SpringContextUtil.getBean(SpringContextUtil.java:24) ~[classes/:?]
at cn.jackbin.SimpleRecord.common.manager.AsyncManager.<init>(AsyncManager.java:27) ~[classes/:?]
at cn.jackbin.SimpleRecord.common.manager.AsyncManager.<clinit>(AsyncManager.java:36) ~[classes/:?]
... 25 more
[2021-05-09 22:23:59:175] [INFO] - org.apache.juli.logging.DirectJDKLog.log(DirectJDKLog.java:173) - Stopping service [Tomcat]
我为能尽量干净的多人记账,试验过了一堆软件。单机记账的发展相对充分,云空间的同步功能也是。(比如BlueCoins)
大多数现行支持多人记账的,要不收费要不广告很多,除去本身盈利的目的,无法否认多人访问时候需要从服务器相互同步的原因,从服务器同步就需要支付同步服务器的代价。
就算买了永久会员,也难免遇到潜在的问题。数据托管在运营商的服务器,存在运营商跑路后无法使用的问题,并不可能永久。
对多人记账功能而言,思路还是靠服务器同步账本,为了避免同时做修改时候相互覆盖(我以前用随手记就出现过),需要一定处理。
以上是关于后期多人记账时候的思路,望考虑下。
检测到 SloppyJack/SimpleRecord_SpringBoot 一共引入了20个开源组件,存在61个漏洞
漏洞标题:FasterXML jackson-databind 代码问题漏洞
缺陷组件:com.fasterxml.jackson.core:[email protected]
漏洞编号:CVE-2020-8840
漏洞描述:FasterXML Jackson是美国FasterXML公司的一款适用于Java的数据处理工具。jackson-databind是其中的一个具有数据绑定功能的组件。FasterXML jackson-databind 2.0.0版本至2.9.10.2版本中存在代码问题漏洞,该漏洞源于程序缺少xbean-reflect/JNDI黑名单类。攻击者可利用该漏洞执行代码。
国家漏洞库信息:https://www.cnvd.org.cn/flaw/show/CNVD-2020-13183
影响范围:[2.8.0, 2.8.11.5)
最小修复版本:2.8.11.5
缺陷组件引入路径:cn.jackbin:[email protected]>io.jsonwebtoken:[email protected]>com.fasterxml.jackson.core:[email protected]
另外还有61个漏洞,详细报告:https://mofeisec.com/jr?p=i49070
演示的账号密码显示密码错误
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.