欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

困扰多时的难题:Caused by: org.springframework.beans.NotWritablePropertyException

程序员文章站 2022-07-15 10:45:26
...

开始学习Spring框架,尝试使用做一个用户登录,一直报出异常,如下:

Caused by: org.springframework.beans.NotWritablePropertyException

百度摸索许久,终于弄明白了一点,最终也解决,所以来分享一下,供有需要的朋友参考,如有不对的地方欢迎评论指正!

控制台日志中提示如下信息:

这里表示username渠道了当前电脑系统的用户名,Administrator就是当前电脑用户名

 

 困扰多时的难题:Caused by: org.springframework.beans.NotWritablePropertyException

为什么会找到当前电脑系统的用户名呢?

是因为在xml中用了username,但是没有配置一个信息,看下图:

db.properties文件中信息:

困扰多时的难题:Caused by: org.springframework.beans.NotWritablePropertyException

xml配置文件中数据源<bean>中信息:

困扰多时的难题:Caused by: org.springframework.beans.NotWritablePropertyException

xml文件中在<context:property-placeholder>中没有写system-properties-mode属性的话,默认是ENVIRONMENT(系统环境),所以会找到电脑用户名,设置成FALLBACK(为什么设置成这个呢?我还不太清除,查了下好像是说tomcat服务器3.1后不可以,需要fallback???有懂的希望告知一下)

困扰多时的难题:Caused by: org.springframework.beans.NotWritablePropertyException

另外过程中在控制台也可能会出现如下问题:

困扰多时的难题:Caused by: org.springframework.beans.NotWritablePropertyException

关于这个也研究了下,分享一下:

因为将name设置成username,但是在ComboPooledDataSource 的父类 AbstractComboPooledDataSource这个类中的get和set方法后缀名是user,所以它不认识username或者其他的,所以大家还是设置成user!

困扰多时的难题:Caused by: org.springframework.beans.NotWritablePropertyException

困扰多时的难题:Caused by: org.springframework.beans.NotWritablePropertyException

 

以上就是本次小尝试中出现的bug,然后研究解决的,有一点点小小成就感,分享给与需要的朋友!

路漫漫其修远兮,吾将上下而求索!!!

java之路继续加油!

相关标签: 异常