无法从HikariConfig类类加载器sun.misc.Launcher$AppClassLoader@73d16e93加载驱动程序类com.microsoft.sqlserver.jdbc.SQLServerDriver

时间:2019-12-17 13:38:05

标签: java spring-boot spring-mvc tomcat spring-data-jpa

我是Spring的新手,我正尝试在STS中做一个简单的项目,该项目可以访问本指南https://spring.io/guides/gs/accessing-data-mysql/#_how_to_complete_this_guide中的oracle数据库(使用oracle11g xe创建)上的数据:initial state of a button

这是我的项目配置:

  • 应用程序属性:
struct AccountView: View {
    @State private var toggleSheet = false
    // Access the value, that was inserted in `ContentView`
    @EnvironmentObject private var userAuth: UserAuth

    var body: some View {
        VStack {
            Spacer()
            Button(action: {
                self.toggleSheet.toggle()
            }){
                Text("Toggle Modal")
                    .padding()
                    .foregroundColor(Color.white)
                    .background(Color.blue)
                    .cornerRadius(10)
            }
            .sheet(isPresented: self.$toggleSheet){
                LoginView()
                // Insert UserAuth object again
                .environmentObject(self.userAuth)
            }
            Spacer()
        }
    }
}
  • 主类:
spring.jpa.hibernate.ddl-auto=update
spring.datasource.url=jdbc:mysql:localhost:1521/xe
spring.datasource.username=aiello
spring.datasource.password=123
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
  • 实体类:
package com.prodotti.crud.products;

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

@SpringBootApplication
public class ProductsApplication{

    public static void main(String[] args) {
        SpringApplication.run(ProductsApplication.class, args);        
    }
}
  • 存储库接口:
package com.prodotti.crud.products;

import java.sql.Date;

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

@Entity
@Table(name = "PRODOTTI_AMZ")
public class PRODOTTI_AMZ {
    @Id
    @GeneratedValue
    private String SKU;

    private String ARTICOLO;
    private String CONDIZIONE;
    private String OFFERTA;
    private int QUANTITA;
    private Date DATA_ORDINE;
    private float PREZZO;
    private float TASSE;
    private String SPEDIZIONE;
    private float TASSA_SPEDIZIONE;
    private float COMMISSIONE;
    private float GUADAGNI;

    public void setSKU(String SKU) {
        this.SKU = SKU;
    }

    public void setARTICOLO(String ARTICOLO) {
        this.ARTICOLO = ARTICOLO;
    }

    public void setCONDIZIONE(String ARTICOLO) {
        this.ARTICOLO = ARTICOLO;
    }

    public void setOFFERTA(String OFFERTA) {
        this.OFFERTA = OFFERTA;
    }

    public void setQUANTITA(int QUANTITA) {
        this.QUANTITA = QUANTITA;
    }

    public void setDATA_ORDINE(Date DATA_ORDINE) {
        this.DATA_ORDINE = DATA_ORDINE;
    }

    public void setPREZZO(float PREZZO) {
        this.PREZZO = PREZZO;
    }

    public void setTASSE(float TASSE) {
        this.TASSE = TASSE;
    }

    public void setTASSA_SPEDIZIONE(float TASSA_SPEDIZIONE) {
        this.TASSA_SPEDIZIONE = TASSA_SPEDIZIONE;
    }

    public void setCOMMISSIONE(float COMMISSIONE) {
        this.COMMISSIONE = COMMISSIONE;
    }

    public void setSPEDIZIONE(String SPEDIZIONE) {
        this.SPEDIZIONE = SPEDIZIONE;
    }

    public void setGUADAGNI(float GUADAGNI) {
        this.GUADAGNI = GUADAGNI;
    }

    public String getARTICOLO() {
        return ARTICOLO;
    }

    public float getCOMMISSIONE() {
        return COMMISSIONE;
    }

    public String getCONDIZIONE() {
        return CONDIZIONE;
    }

    public Date getDATA_ORDINE() {
        return DATA_ORDINE;
    }

    public float getGUADAGNI() {
        return GUADAGNI;
    }

    public String getOFFERTA() {
        return OFFERTA;
    }

    public float getPREZZO() {
        return PREZZO;
    }

    public int getQUANTITA() {
        return QUANTITA;
    }

    public String getSKU() {
        return SKU;
    }

    public String getSPEDIZIONE() {
        return SPEDIZIONE;
    }

    public float getTASSA_SPEDIZIONE() {
        return TASSA_SPEDIZIONE;
    }

    public float getTASSE() {
        return TASSE;
    }

    @Override
    public String toString() {
        return "Prodotti_AMZ [SKU=" + SKU + ", Articolo=" + ARTICOLO + ", Condizione=" + CONDIZIONE + ", Offerta=" + OFFERTA  + "]";
    }
}
  • 控制器类:
package com.prodotti.crud.products;

import org.springframework.data.repository.CrudRepository;

public interface PROD_AMZ_Repository extends CrudRepository<PRODOTTI_AMZ, Integer> {

}

这就是我启动应用程序时控制台显示的内容:

package com.prodotti.crud.products;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller 
@RequestMapping(path="/demo")
public class MainController {
    @Autowired
    private PROD_AMZ_Repository repo;

    @PostMapping("/add")    
    public @ResponseBody String addNewProduct (@RequestParam String SKU, float prezzo) {
        PRODOTTI_AMZ prod = new PRODOTTI_AMZ();
        prod.setSKU(SKU);
        prod.setPREZZO(prezzo);
        repo.save(prod);
        return "Saved";
    }

    @GetMapping(path="/all")
      public @ResponseBody Iterable<PRODOTTI_AMZ> getAllUsers() {
        // This returns a JSON or XML with the users
        return repo.findAll();
      }
}

有人吗?

0 个答案:

没有答案
相关问题