eclipse环境下的springboot框架+mybatis访问MySQL报错空指针

最近在写springboot项目时,在开始阶段遇到了一个问题,我按照教程搭建好框架之后,利用mybatis访问MySQL数据库,但是不管执行增加还是查询数据库方法都报空指针异常,

错误截图如下:

2020-01-07 22:22:53.793 ERROR 2304 --- [nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.NullPointerException] with root cause

在进行很多种解决方法后还是不行,一直报空指针,后来看了看controller类中的代码,我最开始是这么写的

@Controller
@RequestMapping("/")
public class TestController {

        @RequestMapping("/login")
        public String login() {
            List<Duorou_goods> users = new ArrayList<Duorou_goods>();
            UserService userService = new UserService();
            users = userService.selectUser();

            return "html/login";
        }

}

我把UserService的声明放在了方法里,原因就出在这里,UserService对象的声明应该在controller类最外层,以属性的方式声明,例如:

@Controller
@RequestMapping("/")
public class TestController {

    @Autowired
    UserService userService;
        @RequestMapping("/login")
        public String login() {
            System.out.println("ok1");
            List<Duorou_goods> users = new ArrayList<Duorou_goods>();
            users = userService.selectUser();
            return "html/login";
        }

}

而且要在UserService对象前加@Autowried注解才行。

这个问题困扰了我很久,解决之后也不太清楚原理是什么,还需要继续学习。

原文地址:https://www.cnblogs.com/zhangliqiangvictory/p/12164084.html

时间: 2024-10-13 09:13:30

eclipse环境下的springboot框架+mybatis访问MySQL报错空指针的相关文章

linux centos环境下,perl使用DBD::Oracle遇到报错Can&#39;t locate DBDOracle.pm in @INC 的解决办法

前言 接手前辈的项目,没有接触.安装.使用过perl和DBD::Oracle,也没有相关的文档记录,茫茫然不知所措~~.一开始发现这个问题,就想着迅速解决,就直接在google上搜报错信息,搜索的过程中发现 如果不搞清楚前因后果我连解决方案都'看不见''看不懂'. 所以还是要补充这方面的知识,再思考解决方案.以下内容就是我一边学习一边解决问题的过程,如果不足,请各位大佬指出. 报错 install_driver(Oracle) failed: Can't locate DBD/Oracle.pm

springboot启动提示连接mysql报错:java.sql.SQLNonTransientConnectionException: CLIENT_PLUGIN_AUTH is required

如题,启动springboot报错: 2019-12-23 11:08:17.506 INFO 1982 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 9988 (http) 2019-12-23 11:08:17.602 INFO 1982 --- [ main] o.apache.catalina.core.StandardService : Starting se

详细的图文教程来实现 eclipse环境下如何配置tomcat,并且把项目部署到Tomcat服务器上

很多初学,尤其自学JavaWeb的朋友首次在eclipse下配置tomcat时,总会有种难下手的感觉,在此,通过图文解说的方法,最直观的向大家演示一遍该配置过程. 第一部分:eclipse环境下如何配置tomcat 1.下载并成功安装Eclipse和Tomcat 2.打开Eclipse,单击“window”菜单,选择下方的“Preferences” . 3. 点击 Add 添加Tomcat. 4. 选中自己安装的tomcat路径. 5. 选择jdk 版本. 6. 选择自己的jdk版本. 7. 点

[转载]django在eclipse环境下建web网站

一.创建一个项目如果这是你第一次使用Django,那么你必须进行一些初始设置.也就是通过自动生成代码来建立一个Django项目--一个Django项目的设置集,包含了数据库配置.Django详细选项设置和应用 特性配置,具体操作步骤如下所示. 1.新建Django项目选择sqlite数据库 2.创建网站模块app 3.测试新建的模块是否正常 Validating models... 0 errors found March 12, 2014 - 10:26:53 Django version 1

android开发——Eclipse环境下代码编辑最常用快捷键集锦(来了就不能空手而归)

Ctrl+D:删除光标所在行 Ctrl+/ :注释选中行 :Ctrl+\:注销选中行 Ctrl+Shift+/:注释选中的java或xml代码块: Ctrl+Shift+\:注销选中的Java或xml代码块.(形式:/*      */ 或 <!--      -->) shift + alt + j或/**+Enter(回车键):添加javadoc头注释,形如/** * * * * * */(个人更习惯用/**+Enter(回车键)) Ctrl+K:向前查找与当前选定内容相同的代码(如查找与

Eclipse环境下JBoss调试,解决引用的工程不被部署的问题

其实算是一个很小的经验,在eclipse环境下进行jboss的部署,因为要定义某公共包的问题,将代码down下来做了个工程,部署时发现jboss提示:class not found! 从jboss部署目录中没有发现该类,在lib中也没有发现对应的jar包,考虑是编译时正确但运行时错误,原因就是没有部署. 后台经过同事指点,得知需要修改project的Deployment Assembly,需要将引用的工程通过jar的形式引入到jboss中.如图示: 重新部署,debug启动即可. Eclipse

Eclipse 环境下安装PhoneGap开发插件

phoneGap开发跨所有移动平台软件已经成为未来移动终端开发的总趋势,如何在大家所熟悉的Eclipse IDE中快速安装PhoneGap开发插件,介绍如下: 点击help-->install new software-->add连接:http://svn.codespot.com/a/eclipselabs.org/mobile-web-development-with-phonegap/tags/r1.2.91/download/ 然后一路next,选择重新启动Eclipse,出现左边所示

java 在centos6.5+eclipse环境下调用opencv实现sift算法

java 在centos6.5+eclipse环境下调用opencv实现sift算法,代码如下: import org.opencv.core.Core; import org.opencv.core.Mat; import org.opencv.core.MatOfKeyPoint; import org.opencv.highgui.Highgui; import org.opencv.features2d.*; public class ExtractSIFT{ public static

IntelliJ和eclipse环境下的Hello World

1. IntelliJ环境下的Hello World 1. 启动IntelliJ IDE,选择File->New->Project 选择Java如果没有出现Project SDK,则选择New,JDK 选择New->JDK->指向java SDK安装的文件夹(一般位于C:\Program Files (x86)\Java\jdk(版本号))   之后直接选择Next(不从模板创建)->选择项目文件夹和项目名(Hello World) 选择Project->SDK->