mysql中文问题和异常:org.springframework.orm.hibernate3.HibernateJdbcException

异常全部显示为:

       org.springframework.orm.hibernate3.HibernateJdbcException: JDBC exception on Hibernate data access; nested exception is org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update

JDBC生成异常,在我修改我mysql5.0的my.ini文件后发生的。

情况描述:

          (1)由于mysql数据库不支持中文显示,进行解决;
如果数据库不支持中文,会出现异常,解决方法是:
1、找到mysql的配置文件:my.ini
2、修改其中的编码设置为:default-character-set=gb2312
3、重启mysql
4、drop掉原来的数据库latin1
5、create数据库
6、在运行初始化测试单元

        (2)mysql数据库支持了中文显示,但是在我的项目中却不能进行中文的插入和更新操作,出现了org.springframework.orm.hibernate3.HibernateJdbcException: JDBC exception on Hibernate data access; nested exception is org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update

问题解决:

        进行tomcat缓存的清理,并重新启动服务器,ok.

  

 
要在Spring Boot中使用Hibernate JPA,您可以使用Spring Boot提供的HibernateJpaConfiguration类进行配置。以下是一个简单的示例,演示如何使用Hibernate JPA和Spring Boot配置JDBC连接: 1. 添加Hibernate JPA和MySQL JDBC的依赖项: ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> ``` 2. 在application.properties文件中添加以下属性: ``` spring.datasource.url=jdbc:mysql://localhost:3306/db_name spring.datasource.username=db_username spring.datasource.password=db_password spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.jpa.show-sql=true spring.jpa.hibernate.ddl-auto=update ``` 3. 创建一个HibernateJpaConfiguration类,继承自Spring Boot提供的HibernateJpaConfiguration类: ``` @Configuration @EnableTransactionManagement public class MyHibernateJpaConfiguration extends HibernateJpaConfiguration { @Autowired private DataSource dataSource; @Bean public LocalContainerEntityManagerFactoryBean entityManagerFactory() { LocalContainerEntityManagerFactoryBean em = new LocalContainerEntityManagerFactoryBean(); em.setDataSource(dataSource); em.setPackagesToScan("com.example.demo.entity"); JpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter(); em.setJpaVendorAdapter(vendorAdapter); Properties properties = new Properties(); properties.setProperty("hibernate.dialect", "org.hibernate.dialect.MySQL5Dialect"); em.setJpaProperties(properties); return em; } @Bean public PlatformTransactionManager transactionManager() { JpaTransactionManager transactionManager = new JpaTransactionManager(); transactionManager.setEntityManagerFactory(entityManagerFactory().getObject()); return transactionManager; } } ``` 4. 确保您的实体类在指定的包中,并且使用@Entity和@Id注释进行注释: ``` @Entity @Table(name = "users") public class User { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; @Column(name = "name") private String name; @Column(name = "email") private String email; // getters and setters } ``` 5. 在您的服务类中使用@Autowired注释自动装配EntityManager: ``` @Service public class UserService { @Autowired private EntityManager entityManager; @Transactional public User save(User user) { entityManager.persist(user); return user; } @Transactional(readOnly = true) public User findById(Long id) { return entityManager.find(User.class, id); } // other methods } ``` 这个例子展示了如何使用Hibernate JPA和Spring Boot配置JDBC连接。您可以根据自己的需要进行调整和修改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值