困扰多时的难题:Caused by: org.springframework.beans.NotWritablePropertyException
程序员文章站
2022-07-15 10:45:26
...
开始学习Spring框架,尝试使用做一个用户登录,一直报出异常,如下:
Caused by: org.springframework.beans.NotWritablePropertyException
百度摸索许久,终于弄明白了一点,最终也解决,所以来分享一下,供有需要的朋友参考,如有不对的地方欢迎评论指正!
控制台日志中提示如下信息:
这里表示username渠道了当前电脑系统的用户名,Administrator就是当前电脑用户名
为什么会找到当前电脑系统的用户名呢?
是因为在xml中用了username,但是没有配置一个信息,看下图:
db.properties文件中信息:
xml配置文件中数据源<bean>中信息:
xml文件中在<context:property-placeholder>中没有写system-properties-mode属性的话,默认是ENVIRONMENT(系统环境),所以会找到电脑用户名,设置成FALLBACK(为什么设置成这个呢?我还不太清除,查了下好像是说tomcat服务器3.1后不可以,需要fallback???有懂的希望告知一下)
另外过程中在控制台也可能会出现如下问题:
关于这个也研究了下,分享一下:
因为将name设置成username,但是在ComboPooledDataSource 的父类 AbstractComboPooledDataSource这个类中的get和set方法后缀名是user,所以它不认识username或者其他的,所以大家还是设置成user!
以上就是本次小尝试中出现的bug,然后研究解决的,有一点点小小成就感,分享给与需要的朋友!
路漫漫其修远兮,吾将上下而求索!!!
java之路继续加油!