gpt4 book ai didi

java - 以输入表单 (JSP) 显示数据库中的值

转载 作者:行者123 更新时间:2023-11-29 21:39:15 27 4
gpt4 key购买 nike

我正在寻找一些更好的解决方案。我正在为我的学校项目制作一个匹配文字游戏,但我遇到了一些问题。我希望从 sql 数据库中随机显示我的值,而不是这种代码风格,但不重复相同的单词。我尝试了一些方法,但它不起作用,所以我将感谢您的帮助。

这是我的小游戏的屏幕截图:when i click start words will be open, and the game will start...

我的代码是:

     <!DOCTYPE html>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="java.util.*" %>


<%! String[] wordsleft ={"Belgrade","Zagreb","Sarajevo", "Washington", "Paris" };

%>

<%! String[] wordsright ={"Serbia","Bosnia","Croatia","France","USA"};

%>

<%!
String printleft(){
Random rand = new Random();
int a = rand.nextInt(4 - 0 + 1) + 0;
return String.valueOf(wordsleft[a]);
} %>


<%!
String printright(){
Random rand = new Random();
int a = rand.nextInt(4 - 0 + 1) + 0;
return String.valueOf(wordsright[a]);

} %>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="cssstyle.css" rel="stylesheet">
<title>Matching Words</title>
</head>
<body>

<h1 id="welcome">Welcome!</h1>
<p class="tekst">Spojnica je igra sa rečima. <br><br>U dve kolone je prikazano po 5 reči.
Svaka reč u levoj koloni ima svoj par u desnoj koloni. Za svaki spojen par dobijate 3 poena.
</p>

<div id="container">

<div class="containerlevo">
<input type="submit" class="leftword" name="prvo" id="firstleft" value="?" />
<input type="submit" class="leftword" name="drugo" id="secondleft" value="?" />
<input type="submit" class="leftword" name="trece" id="thirdleft" value="?" />
<input type="submit" class="leftword" name="trece" id="fourthleft" value="?" />
<input type="submit" class="leftword" name="trece" id="fifthleft" value="?" />

</div>

<div class="containerdesno">
<input type="submit" class="rightword" name="prvo" id="firstright" value="?" />
<input type="submit" class="rightword" name="drugo" id="secondright" value="?" />
<input type="submit" class="rightword" name="trece" id="thirdright" value="?" />
<input type="submit" class="rightword" name="drugo" id="fourthright" value="?" />
<input type="submit" class="rightword" name="trece" id="fifthright" value="?" />
</div>


<form action="Rezultat" method="post" >
<input class="button start" type="button" id="start" onclick = "printright(); printleft();" value="START" name="start"/>
<input class="button" type="submit" id="end" value="END" name="end"/>
</form>
</div>
</body>
</html>

<script>

function printleft(){
document.getElementById("firstleft").value = "<%= printleft() %>";
document.getElementById("secondleft").value = "<%= printleft() %>";
document.getElementById("thirdleft").value = "<%= printleft() %>";
document.getElementById("fourthleft").value = "<%= printleft() %>";
document.getElementById("fifthleft").value = "<%= printleft() %>";

document.getElementById("start").disabled = true;
}

function printright(){
document.getElementById("firstright").value = "<%= printright() %>";
document.getElementById("secondright").value = "<%= printright() %>";
document.getElementById("thirdright").value = "<%= printright() %>";
document.getElementById("fourthright").value = "<%= printright() %>";
document.getElementById("fifthright").value = "<%= printright() %>";

document.getElementById("start").disabled = true;
}

最佳答案

要使用姓名数据库需要添加和学习很多东西。也许您想从名称文件开始 - 这似乎更容易开始。

尽管如此。首先,您需要创建一个数据库,并根据所使用的 jdbc 驱动程序,创建到数据库的 jdbc 连接字符串(此处为 mysql)。

String connurl = "jdbc:mysql://localhost:3306/riddle?profileSQL=true";

然后,您需要在应用程序中加载一次驱动程序类,通常是在 init() 处,或者甚至更好地作为上下文监听器。当您使用 JDBC 时,最佳实践是在应用程序部署描述符中定义数据源。

描述这方面的所有细节显然超出了本文的范围,而且肯定在其他地方已经写得更好了。您可以找到大量示例:Netbeans 有一个教程在此显示此内容 https://netbeans.org/kb/docs/web/mysql-webapp.html

然后,您应该从一个为您提供单词列表的类(模型类)开始。模型类将隐藏从 JSP 页面获取的所有数据。

这就是您应该从现在的位置开始的地方:从 JSP 中删除所有函数并将数据处理放在模型类中。然后在 JSP 中使用该模型类来提供数组。

当你这样做时,你只需要将模型更改为从文件读取而不是 const 数组。如果你能做到这一点,请处理数据库。

关于java - 以输入表单 (JSP) 显示数据库中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34667805/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com