Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用Wicket创建第一个启动向导?(数据库表创建等)_Java_Hibernate_Spring_Maven 2_Wicket - Fatal编程技术网

Java 如何使用Wicket创建第一个启动向导?(数据库表创建等)

Java 如何使用Wicket创建第一个启动向导?(数据库表创建等),java,hibernate,spring,maven-2,wicket,Java,Hibernate,Spring,Maven 2,Wicket,我正在使用Wicket、Spring和Hibernate开发一个Java Web应用程序。web应用程序并不特别大(我有一个DAO和一个服务),但我想为部署应用程序的用户提供一个启动向导,就像Wordpress中的启动向导一样 当第一次访问网页时(没有创建数据库表/没有用户),我希望用户能够输入数据库设置(用户名、密码、数据库名称、数据库类型),然后我希望web应用程序创建它将使用的所有表 由于我是Wicket和JavaWeb开发的新手,我不确定如何实现这一点。通常,当与DAO交互(例如创建用户

我正在使用Wicket、Spring和Hibernate开发一个Java Web应用程序。web应用程序并不特别大(我有一个DAO和一个服务),但我想为部署应用程序的用户提供一个启动向导,就像Wordpress中的启动向导一样

当第一次访问网页时(没有创建数据库表/没有用户),我希望用户能够输入数据库设置(用户名、密码、数据库名称、数据库类型),然后我希望web应用程序创建它将使用的所有表

由于我是Wicket和JavaWeb开发的新手,我不确定如何实现这一点。通常,当与DAO交互(例如创建用户)时,数据库表是按需创建的(如果它还不存在的话)——至少在我看来是这样的

有没有办法提取我的应用程序将通过服务->DAO层使用的mye域对象的SQL

现在我通过过滤器配置数据库访问;例如src/main/config/application-DEV.properties。如果我想使用如上所述的向导,我想我需要停止使用属性文件


非常感谢您的帮助。

我经常想到这一点,因为这是许多PHP/Perl系统中的标准做法,但在java/spring等系统中似乎很复杂

首先:使用wicket扩展来

然后我会做的很简单,我会将我所有的Springbean声明为懒惰的,并使用系统属性来配置它们(使用PropertyPlaceHolderConfigure)。我会使用向导第一次获取这些属性,然后将它们写入文件系统中的一个已知位置(DB会更好,但这是一个鸡/蛋问题)。然后,我将使用系统属性初始化应用程序上下文

这里的问题是:我不认为有一种可移植的方式可以从web应用程序访问文件系统,我认为每个应用程序服务器可能会以不同的方式处理文件系统访问,因此您需要小心