в этом контроллере, когда 'stdin.save (std);' удален код работает лучше, но когда я добавляю это 'stdin.save (std);' строка "java .lang.IllegalArgumentException: целевой объект не должен быть нулевым", это исключение
package com.access6.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;
import com.access6.dao.StudentInt;
import com.access6.model.Student;
@RestController
public class StudentContrlr {
@Autowired
StudentInt stdin;
Student std;
@RequestMapping("/")
public ModelAndView home() {
return new ModelAndView("home");
}
@RequestMapping("/addStd")
public ModelAndView addStd(@RequestParam ("id") String id, @RequestParam ("name") String name,
@RequestParam ("location") String location,ModelMap mp ) {
mp.put("id", id);
mp.put("name", name);
mp.put("location", location);
stdin.save(std);
return new ModelAndView("home");
}
}
модель: @entity не может создать таблицу в базе данных, но соединение работает нормально
package com.access6.model;
import javax.persistence.Entity;
import javax.persistence.Id;
@Entity
public class Student {
@Id
int id;
String name;
String location;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getLocation() {
return location;
}
public void setLocation(String location) {
this.location = location;
}
@Override
public String toString() {
return "Student [id=" + id + ", name=" + name + ", location=" + location + "]";
}
}
интерфейс
package com.access6.dao;
import org.springframework.data.repository.CrudRepository;
import com.access6.model.Student;
public interface StudentInt extends CrudRepository<Student, Integer> {
}
Приложение весенней загрузки
package com.access6;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DbConnect2Application {
public static void main(String[] args) {
SpringApplication.run(DbConnect2Application.class, args);
}
}
application.properties
spring.mvc.view.prefix= /WEB-INF/pages/
spring.mvc.view.suffix= .jsp
spring.h2.console.enabled=true
spring.datasource.platform=h2
spring.datasource.url=jdbc:h2:mem:vinanth