2015-02-04 3 views
1

Я новичок в 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.

+0

Это могут быть неправильные настройки БД. Какую БД вы используете? Проверьте все параметры и права доступа для пользователя, которого вы используете для входа. – StanislavL

+1

Добавьте полный стек. – Jens

+0

MYSQL..SEVERE: Servlet.service() для сервлета [диспетчера] в контексте с пути [/ ExamFirst] выбрал исключение [Обработка запроса не удалась; Вложенное исключение - это org.hibernate.exception.SQLGrammarException: не удалось вставить: [com.model.ExamModel]] с корневой причиной com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: таблица «test.exam» не существует – Sims

ответ

0

сообщение довольно ясно:

Table 'test.exam' doesn't exist 

Вы должны создать таблицу exam.

+0

уже создан ... все еще отображается ошибка как таковая – Sims

+0

И ваше приложение подключается к той же базе данных, что и вы создали таблицу? И вы создали таблицу в db 'test'? – Jens

+0

Да .. 'экзамена' в таблице 'test' db – Sims

Смежные вопросы

 Смежные вопросы