Программа Basi c при весенней загрузке. Единственное исключение, вызывающее сбой - PullRequest
2 голосов
/ 17 февраля 2020

Ticket. java

 package com.mysql.model;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;

@Entity
@Table(name= "Ticket")
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@ToString

public class Ticket {
    @Id
    @GeneratedValue
private int id;
private double amount;
private String category;
}

ticketdao

package com.mysql.dao;

import java.util.List;


import org.springframework.data.repository.CrudRepository;

import com.mysql.model.Ticket;

public interface TicketDao  extends CrudRepository<Ticket, Integer>{

    void save(List<Ticket> tickets);

}

Ticketcontroller. java

package com.mysql.controller;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.mysql.dao.TicketDao;
import com.mysql.model.Ticket;

@RestController

@RequestMapping("/ticket")
public class TicketController {
    @Autowired
    private TicketDao dao;
    @PostMapping("/bookTickets")
    public String bookTicket(@RequestBody  List<Ticket> tickets) {

    dao.save(tickets);
    return "tickets booked :" + tickets.size();
}

    @GetMapping("/getTickets")
public List<Ticket> getTickets(){
    return (List<Ticket>) dao.findAll();
}



}

основная программа

package com.example.springmysql;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class SpringMysqlApplication {

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

}

Я обнаружил такое же исключение в переполнении стека для загрузки файла JAR. Но я потерпел неудачу, когда использовал то же самое в моем случае. Это простое приложение для весенней загрузки mysql crud.

ошибка, возникающая при запуске программы Причина: java. net .ConnectException: Тайм-аут соединения: соединение Причина: com. mysql .jdb c .exceptions.jdbc4.CommunicationsException: сбой канала связи. Вызвано: org.hibernate.tool.schema.spi.SchemaManagementException: Невозможно выполнить открытое соединение JDB C для цели управления схемой

Причина: javax.persistence.PersistenceException: [PersistenceUnit: default] Невозможно построить Hibernate SessionFactory

pom. xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.2.4.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>spring-mysql</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>spring-mysql</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <!-- Spring boot jdbc dependency -->
<dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-jdbc</artifactId>
     <scope>compile</scope>
</dependency>

<!-- MySql dependency -->
<dependency>
     <groupId>mysql</groupId>
     <artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <scope>compile</scope>
    <!-- <version>4.1.4.Final</version> -->
</dependency>
<dependency>
  <groupId>javax.transaction</groupId>
  <artifactId>javax.transaction-api</artifactId>
  <scope>compile</scope>
</dependency>
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-entitymanager</artifactId>
    </dependency>




        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

application.properties

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://169.254.99.155:3306/ticket
spring.datasource.username=root
spring.datasource.password=user789
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update
spring.jpa.properties.hibernate.dialect= org.hibernate.dialect.MYSQL5Dialect
spring.datasource.tomcat.testWhileIdle = true
spring.datasource.tomcat.timeBetweenEvictionRunsMillis = 60000
spring.datasource.tomcat.validationQuery = SELECT 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...