Я новичок в SpringMVC и Hibernate. Когда я запускаю свой prgm, я получаю ошибку, поскольку SQLGrammarException и таблица не существует. Но таблица есть в БД.Ошибка обработки запроса; Вложенное исключение - org.hibernate.exception.SQLGrammarException: не удалось вставить:
Мой контроллер
@Controller
public class ExamController {
@Autowired
private ExamDAO daoObj;
@RequestMapping(value="/submitForm.do",method=RequestMethod.POST)
public ModelAndView SubmitForm(@RequestParam("studCon")int Contact,
@RequestParam("studName")String Name, @RequestParam("studpwd") String password)
{
ExamModel modObj = new ExamModel();
modObj.setStudCon(Contact);
modObj.setStudName(Name);
modObj.setStudpwd(password);
daoObj.save(modObj);
ModelAndView mvcObj=new ModelAndView("Result");
return mvcObj;
}}
DAO
@Repository
@Transactional
public class ExamDAO {
@Autowired
private SessionFactory sessFac;
@SuppressWarnings("unchecked")
public List<String[]> getAllItem()
{
Criteria c =sessFac.getCurrentSession().createCriteria(ExamModel.class);
);
return c.list();
}
public int save(ExamModel ge)
{
return (Integer) sessFac.getCurrentSession().save(ge);
}}
Модель
@Entity
@Table(name = "exam")
public class ExamModel implements Serializable {
private static final long serialVersionUID = -723583058586873479L;
@Id
@Column(name="stud_id")
@GeneratedValue(strategy=GenerationType.AUTO)
private int studId;
@Column(name="stud_name")
private String studName;
@Column(name="phone")
private int studCon;
@Column(name="pwd")
private String studpwd;
public int getStudId() {
return studId;
}
public void setStudId(int studId) {
this.studId = studId;
}
public String getStudName() {
return studName;
}
public void setStudName(String studName) {
this.studName = studName;
}
public int getStudCon() {
return studCon;
}
public void setStudCon(int studCon) {
this.studCon = studCon;
}
public String getStudpwd() {
return studpwd;
}
public void setStudpwd(String studpwd) {
this.studpwd = studpwd;
}
}
Можете ли вы помочь мне выйти из этой ошибки. Ошибка говорит, что она не может вставляться, поскольку существует SQLException.
Это могут быть неправильные настройки БД. Какую БД вы используете? Проверьте все параметры и права доступа для пользователя, которого вы используете для входа. – StanislavL
Добавьте полный стек. – Jens
MYSQL..SEVERE: Servlet.service() для сервлета [диспетчера] в контексте с пути [/ ExamFirst] выбрал исключение [Обработка запроса не удалась; Вложенное исключение - это org.hibernate.exception.SQLGrammarException: не удалось вставить: [com.model.ExamModel]] с корневой причиной com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: таблица «test.exam» не существует – Sims