导入他人的ssh项目,使用hibernate.hbm2ddl.auto属性为update,不自动创建表结构

时间:2022-11-17 08:25:37
我导入一个他人的项目到MyEclipse中,运行没错,在其applicationContext.xml中设置的hibernate.hbm2ddl.auto属性为update,第一次加载时能够自动的创建数据库表。但是我将其项目(vote)重命名为一个其他的项目(network),并且重构了里面的包结构:例如:将所有的sunyang.vote.*****的包结构重构为com.network.*****的包结构,并且全部的修改了其中的配置文件的sunyang.vote为com.network。部署项目的时候,没有报错,但就是不能自动的创建数据库表。我在网上查了一下资料,有的说将其hibernate.hbm2ddl.auto属性修改为create就可以了,可我试过了还是不行,还有的说,因为hibernate.hbm2ddl.auto的属性为update,修改了实体类的映射文件,会有影响,我又拷贝其项目,先将hibernate.hbm2ddl.auto的属性设置为none,再修改里面的内容,但还是不能自动的创建数据库表,另外,我修改的项目没有自动的创建数据库表,所有我就在MySQL数据库的命令行里手动的创建了数据库表,并且成功的给表中插入了一条数据,但我在浏览器中,运行时,在其首页的登录框中,输入正确的用户名和密码,也就是我插入数据的那条语句,却提示用户名或密码不对,明明是对的,为什么会出现这样的问题了,望热心人帮助,我Java学得不好,这个做的是毕业论文,5月10号要交源代码,十分感谢。

4 个解决方案

#1


还有一个地方需要修改的

选择工程

右键

properties

Myeclipse

web

Context_Root 里有个 web_Context_Root 修改為你改后的工程名

#2


还有一个地方需要修改的

选择工程

右键

properties

Myeclipse

web

Context_Root 里有个 web_Context_Root 修改為你改后的工程名
修改过了,谢谢

#3


问题已经解决,因为我重构了项目之后,数据库也重新命令了,原来数据库叫vote,我之后修改为了network,而在*.hbm.xml文件映射的表中中设置了一个属性为 catalog=“vote”,我修改为“network”之后,就可以自动的创建数据库了。

#4


不修改工程名字,直接在applicationContext.xml文件中修改hibernate.hbm2ddl.auto=“create”就可以了,我刚做的一个项目就是这样的。就成功了呀

#1


还有一个地方需要修改的

选择工程

右键

properties

Myeclipse

web

Context_Root 里有个 web_Context_Root 修改為你改后的工程名

#2


还有一个地方需要修改的

选择工程

右键

properties

Myeclipse

web

Context_Root 里有个 web_Context_Root 修改為你改后的工程名
修改过了,谢谢

#3


问题已经解决,因为我重构了项目之后,数据库也重新命令了,原来数据库叫vote,我之后修改为了network,而在*.hbm.xml文件映射的表中中设置了一个属性为 catalog=“vote”,我修改为“network”之后,就可以自动的创建数据库了。

#4


不修改工程名字,直接在applicationContext.xml文件中修改hibernate.hbm2ddl.auto=“create”就可以了,我刚做的一个项目就是这样的。就成功了呀