当前位置: 首页 > 知识库问答 >
问题:

Spring Boot无法连接到MySql

微生嘉
2023-03-14

这是我使用Spring Boot的第一次练习,这是我的应用程序。属性:

spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect
spring.jpa.hibernate.ddl-auto=update
spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc.mysql://localhost:3306/notedb
spring.datasource.username=root
spring.datasource.password=*******

这些是我的课程:

>

  • DemomysqlApplication.java

    @ComponentScan(BasePackages={“Com.JoyDeep.SpringBoot”})公共类DemoMysqlApplication{

     public static void main(String[] args) {
         SpringApplication.run(DemoMysqlApplication.class, args);
    
    
     }
    

    noteRepository.java(接口):

    package com.example.demomysql;
        
        import org.springframework.data.repository.CrudRepository;
         
        public interface NoteRepository extends CrudRepository <Note, Integer>{
        
        }
    
        import org.springframework.beans.factory.annotation.Autowired;
        import org.springframework.stereotype.Controller;
        import org.springframework.ui.Model;
        import org.springframework.web.bind.annotation.GetMapping;
        import org.springframework.web.bind.annotation.RequestMapping;
        import org.springframework.web.bind.annotation.ResponseBody;
        
        
           @RestController
            @RequestMapping(value="/note")
            public class NoteController {
                
                
                @Autowired
                private NoteRepository noteRepository;
                
                @GetMapping(value="/all")
                public String getAllNotes(Model model) {
                    model.addAttribute("notes", noteRepository.findAll());
                    return "list";
                }
                
                @GetMapping(value="/debug")
                public @ResponseBody Iterable<Note> getNotes(){
                    return noteRepository.findAll();
                }
                
            }
    
    package com.example.demomysql;
    
    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.GenerationType;
    import javax.persistence.Id;
    
    import org.springframework.data.repository.CrudRepository;
    
    @Entity
    public class Note {
        
        @Id
        @GeneratedValue(strategy=GenerationType.AUTO)
        private Integer id;
        
        private String title;
        private String description;
        private Boolean done;
        
        public Integer getId() {
            return id;
        }
        
        public String getTitle() {
            return title;
        }
        public void setTitle(String title) {
            this.title = title;
        }
        public String getDescription() {
            return description;
        }
        public void setDescription(String description) {
            this.description = description;
        }
        public Boolean getDone() {
            return done;
        }
        public void setDone(Boolean done) {
            this.done = done;
        }
        
    
    }
    
    

    从控制台,我没有看到错误。Tomcat正常启动。这是最后两个信息:

    Tomcat started on port(s): 8080 (http) with context path ''
    
    Started DemoMysqlApplication in 0.731 seconds (JVM running for 480.726)
    

    我想我对控制器类有问题。拜托,你能帮帮我吗?

    谢谢

  • 共有1个答案

    谷梁波
    2023-03-14
    pring.jpa.hibernate.ddl-auto=update
    spring.datasource.platform=mysql
    spring.datasource.url=jdbc:mysql://localhost:3306/notedb?createDatabaseIfNotExist=true
    spring.datasource.username=root
    spring.datasource.password=****
    spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
    spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5InnoDBDialect
    

    >

  • 删除

    >

  • exclude={DatasourceAutoConfiguration.class}

    @componentscan(BasePackages={“com.joydeep.springboot”})

    应用程序

    @SpringBootApplication
    public class DemoMysqlApplication {
        public static void main(String[] args) {
            SpringApplication.run(DemoMysqlApplication.class, args);
        }
    

    休息控制器

        @RestController
        @RequestMapping(value="/note")
        public class NoteController {
    
            @Autowired
            private NoteRepository noteRepository;
    
            @GetMapping(value="/debug")
            public List<Note> getNotes(){
                return noteRepository.findAll();
            }
    
        }
    

    控制器

    @Controller
        @RequestMapping(value="/note")
        public class NoteController {
    
            @Autowired
            private NoteRepository noteRepository;
    
            @GetMapping(value="/debug")
            public ResponseEntity<List<Note>> getNotes(){
                 return new ResponseEntity<List<Note>>(noteRepository.findAll(),HttpStatus.OK);
            }
    
        }
    

  •  类似资料:
    • 我正在尝试从Spring Boot应用程序连接到mySQL数据库。然而,当我试图运行它时,它显示出错误。 我如何解决这个问题? 错误 从我的文件中添加代码片段 pom。xml 应用属性 堆栈跟踪 我还没有在sql中手动创建表,因为我认为spring.jpa.hibernate.ddl-Auto=date应该这样做

    • 我创建了一个docker compose文件,将MySql连接到SpringBoot应用程序。但我得到了这个错误: 我尝试在本地机器中使用docker默认ip运行Spring Boot应用程序,同时在这个docker-compose.yml文件中只运行MySql容器,结果运行得非常好。但当我尝试docker编写文件时。我知道这个错误。

    • 我正在尝试连接到MySQL服务器,但出现无法处理的错误。 java.sql.SQLNonTransientConnectionException:无法创建到数据库服务器的连接。尝试重新连接3次。放弃。com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110)com.mysql.cj.jdbc.excepti

    • 我设法将我的应用程序与HSQLDB连接起来,并使其运行良好。然而,我在将它连接到MySQL时遇到了一些麻烦。 下面是我的堆栈跟踪: 应用程序运行失败 null 我的pom.xml文件: null 这里是我的application.properties文件: 如果我没有错的话,我将MySQL用户配置为与我在ubuntu中的系统用户相同,这样我就可以用“mysql-u thalysmg”启动MySQL

    • 问题内容: 我正在尝试使用Ruby on Rails运行Selenium的示例脚本。我必须使用代理运行它。这是我的代码: 我收到以下错误: 有人能帮我吗…?我已经尝试了好几个小时,却找不到问题…真的不知道该怎么办。 环境: Ubuntu 16.04 LTS,Firefox 45.0,rbenv 2.3.1 另一个问题:有人知道Selenium + Ruby on Rails的示例吗?我找不到真正好

    • 我真的想不通为什么我不能用下面的代码连接到我的Django项目内的JQuery。你能告诉我是什么原因吗?多谢! null null

    • 我正在尝试使用Android studio提供的工具将我的Android应用程序连接到firebase,但我面临着很多麻烦。 我已经尝试更新依赖到最新的最新的谷歌服务,但错误仍然存在,显示的错误是无法解析Android应用模块的Gradle配置。解决分级生成问题和/或重新同步。 分级/应用程序a

    • 我正在开发Selenium,目前我有一个连接到两个运行linux和所有浏览器的虚拟机的集线器。 我能够启动浏览器,直到它突然停止。火狐或任何其他浏览器都不会启动。我得到以下错误。 45000 ms后无法连接到端口7055上的主机127.0.0.1。 我运行Selenium服务器独立2.26与火狐16.0.2. 请帮忙。