甜瓜哥哥 2024-04-06 01:37 采纳率: 33.3%
浏览 9
已结题

Spring框架自动注解resource报错

img

img

img

有人说是jdk版本的问题,我现在idea是jdk19,但是xml配置文件写的1.8?查了资料说jdk9以上javax都变为了jakara,我在配置文件重新加载了还是没有实现自动注入,还提示userDao is null

  • 写回答

7条回答 默认 最新

  • 关注

    上午好☀️☀️☀️️
    本答案参考ChatGPT-3.5

    关于Spring框架自动注解@Resource报错的问题,可能是以下原因导致的:

    1. JDK版本不兼容:如果你的JDK版本过高,可能导致javax的包名被改为jakara,从而导致自动注入失败。建议确认一下你的JDK版本是否兼容当前的Spring框架版本。

    2. 代码存在错误:可能是因为代码中存在错误导致自动注入失败。请检查一下代码是否存在语法错误或逻辑错误。

    下面是一些可能的解决方案:

    1. 确认JDK版本:确认一下你的JDK版本是否兼容当前的Spring框架版本。如果不兼容,建议升级或降级JDK版本。

    2. 重新加载配置文件:在你修改了配置文件之后,需要重新加载配置文件。可以使用ApplicationContext的refresh()方法来实现重新加载。

    3. 检查代码:请检查一下代码是否存在语法错误或逻辑错误。如果有,需要及时修复。

    4. 修改配置文件:如果以上方法都没有解决问题,可以尝试修改配置文件。可以尝试将@Bean注解替换为@Component、@Repository或@Service注解,以解决自动注入的问题。

    修改后的代码可能如下所示:

    @Repository
    public class UserDaoImpl implements UserDao {
        @PersistenceContext
        private EntityManager entityManager;
    
        public User getUserById(long id) {
            return entityManager.find(User.class, id);
        }
    }
    

    希望以上方法能够帮到你。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(6条)

报告相同问题?

问题事件

  • 系统已结题 4月14日
  • 已采纳回答 4月6日
  • 修改了问题 4月6日
  • 创建了问题 4月6日

悬赏问题

  • ¥15 openFOAM DPMFoam
  • ¥15 将查询到的值,赋值到table指定行中
  • ¥50 docker容器内部启动shell脚本多命令
  • ¥15 请问python的selenium怎么设置referer
  • ¥15 请教下, VS QT 环境下, QTOPCUA 的源文件报错,这种情况咋查呢 ?
  • ¥20 UNITY webgl关于文档的上传和下载问题
  • ¥15 安霸cv22 + rtl8211f 千兆,udp传输丢包
  • ¥15 关于区块链和边缘环境搭建的相关问题
  • ¥15 windows远程桌面断卡重连软件卡顿问题
  • ¥30 Unity 实现扫描效果