Java Spring MVC+;冬眠
我遵循一个教程在SpringMVC中创建一个网站。本教程使用HSQL数据库,但我更喜欢使用MySql。我能够从数据库中获取数据,但无法将用户数据保存在数据库中 我的配置是: applicationContext.xml:Java Spring MVC+;冬眠,java,hibernate,spring-mvc,jpa,Java,Hibernate,Spring Mvc,Jpa,我遵循一个教程在SpringMVC中创建一个网站。本教程使用HSQL数据库,但我更喜欢使用MySql。我能够从数据库中获取数据,但无法将用户数据保存在数据库中 我的配置是: applicationContext.xml: <context:component-scan base-package="com.coolbreeze.realestate <context:exclude-filter type="annotation" expression="org.springframe
<context:component-scan base-package="com.coolbreeze.realestate
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
用户服务:
@Service
@Transactional
public class UserService {
@Autowired
private UserRepository userRepository;
public void save(User user) {
userRepository.save(user);
}
用户存储库:
public interface UserRepository extends JpaRepository<User, Integer> {
}
public interface UserRepository扩展了JpaRepository{
}
请帮助我,我也无法在控制台中看到sql查询,但是它被配置为在hibernate配置xml中显示
非常感谢你的帮助
谢谢您在哪里为UserRepository实现DB保存方法
这是一个关于同一主题的文档非常丰富的教程-您有什么特别的理由来定义SessionFactory和EntityManagerFactory吗?如果看不到日志输出,请尝试获取此处详述的文件中的内容:并将其粘贴到名为log4j.properties的新文件中。若您使用的是maven,那个么在控制台中的src/main/resourcesany exception stacktrace下创建它?
<hibernate-configuration>
<session-factory>
<!-- We're using MySQL database so the dialect needs to MySQL as well-->
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<!-- Enable this to see the SQL statements in the logs-->
<property name="show_sql">true</property>
<property name="use_sql_comments">true</property>
<!-- This will drop our existing database and re-create a new one.
Existing data will be deleted! -->
<property name="hbm2ddl.auto">update</property>
</session-factory>
</hibernate-configuration>
@Controller
public class UserController {
@Autowired
private UserService userService;
@ModelAttribute("user")
public User construct(){
return new User();
}
@RequestMapping(value="/register", method=RequestMethod.POST)
public String doRegister(@ModelAttribute("user") User user){
userService.save(user);
return "register";
}
@Service
@Transactional
public class UserService {
@Autowired
private UserRepository userRepository;
public void save(User user) {
userRepository.save(user);
}
public interface UserRepository extends JpaRepository<User, Integer> {
}