永发信息网

hibernate engine=myisam 为什么

答案:1  悬赏:70  手机版
解决时间 2021-11-09 08:42
  • 提问者网友:沉默菋噵
  • 2021-11-09 00:29
hibernate engine=myisam 为什么
最佳答案
  • 五星知识达人网友:你可爱的野爹
  • 2021-11-09 01:54
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"">


jdbc:mysql://127.0.0.1/lianxi
com.mysql.jdbc.Driver
root
root
org.hibernate.dialect.MySQLDialect
true
update








上面是hibernate.cfg.xml 的配置,需要注意的就是把实体映射类的配置文件都引用过来。

还有提点需要理解的是 hibernate.hbm2dll.auto的配置:

validate 加载hibernate时,验证创建数据库表结构
create 每次加载hibernate,重新创建数据库表结构,这就是导致数据库表数据丢失的原因。
create-drop 加载hibernate时创建,退出是删除表结构
update 加载hibernate自动更新数据库结构

在本机开发调试初始化数据的时候可以选择create、update等。

但是网站发布正式版本的时候,对数据库现有的数据或表结构进行自动的更新是很危险的。 此时此刻应该由DBA同志通过手工的方式进行后台的数据库操作。

hibernate.hbm2ddl.auto的值建议是“none”或“validate”。“validate”应该是最好的选择:这样spring在加载之初,如果model层和数据库表结构不同,就会报错,这样有助于技术运维预先发现问题。

有了自己的实体类和相应的映射文件后,就可可以通过下面的这个方法由实体类生成数据库的表了,代买如下;

[java] view plaincopyprint?

import org.hibernate.cfg.Configuration;
import org.hibernate.tool.hbm2ddl.SchemaExport;
public class ExportDB {
public static void main(String[] args) {

//读取hibernate.cfg.xml文件
Configuration cfg = new Configuration().configure();

SchemaExport export = new SchemaExport(cfg);

export.create(true, true);
}
}

下面是一些数据库方言,在这里列出方便查找使用

//参照表

DB2

org.hibernate.dialect.DB2Dialect

DB2 AS/400

org.hibernate.dialect.DB2400Dialect

DB2 OS390

org.hibernate.dialect.DB2390Dialect

PostgreSQL

org.hibernate.dialect.PostgreSQLDialect

MySQL

org.hibernate.dialect.MySQLDialect

MySQL with InnoDB

org.hibernate.dialect.MySQLInnoDBDialect

MySQL with MyISAM

org.hibernate.dialect.MySQLMyISAMDialect

Oracle (any version)

org.hibernate.dialect.OracleDialect

Oracle 9i/10g

org.hibernate.dialect.Oracle9Dialect

Sybase

org.hibernate.dialect.SybaseDialect

Sybase Anywhere

org.hibernate.dialect.SybaseAnywhereDialect

Microsoft SQL Server

org.hibernate.dialect.SQLServerDialect

SAP DB

org.hibernate.dialect.SAPDBDialect

Informix

org.hibernate.dialect.InformixDialect

HypersonicSQL

org.hibernate.dialect.HSQLDialect

Ingres

org.hibernate.dialect.IngresDialect

Progress

org.hibernate.dialect.ProgressDialect

Mckoi SQL

org.hibernate.dialect.MckoiDialect

Interbase

org.hibernate.dialect.InterbaseDialect

Pointbase

org.hibernate.dialect.PointbaseDialect

FrontBase

org.hibernate.dialect.FrontbaseDialect

Firebird

org.hibernate.dialect.FirebirdDialect
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯