gpt4 book ai didi

java - JSP 和 derby 数据库类

转载 作者:行者123 更新时间:2023-12-02 06:13:50 24 4
gpt4 key购买 nike

我有一个 jsp 页面,我想在其中放置数据库中的一些信息。其代码为:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"
import="java.util.ArrayList"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="css/bootstrap.min.css" rel="stylesheet">
<title>Lab4</title>
</head>
<body>
<div id='chekboxOfCompanies'>
<%
ArrayList<String> companiesList=DBHandler.getCompaniesList();
for (int i=0;i<companiesList.size();i++){
out.println("<input type='checkbox'>");
}
%>
</div>
</body>
</html>

DBHandler 获取数据库中公司名称的数组列表。这是代码。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;


public class DBHandler {
public static ArrayList<String> getCompaniesList(){
Connection conn = null;
ArrayList<Statement> statements = new ArrayList<Statement>();
Statement s = null;
ResultSet rs = null;
String dbName = "Lab4DB";
ArrayList<String> returnArray=new ArrayList<String>();
try {
conn = DriverManager.getConnection(protocol + dbName);
System.out.println("Connected to database " + dbName);
conn.setAutoCommit(false);
s = conn.createStatement();
statements.add(s);
rs = s.executeQuery("SELECT company from companies");
while(rs.next()){
returnArray.add(rs.getString(1));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return returnArray;
}
private static String protocol = "jdbc:derby:";
}

当我尝试在服务器上运行它时,它说无法解析 DBHandler。我怎样才能得到这些信息?我做错了什么?

最佳答案

就像导入 java.util.ArrayList 才能使用它一样,您也必须导入 DBHandler 类才能使用它。如果 DBHandler 看起来像在默认包中,则将其移动到包中。默认包中不应该有任何类。

也就是说,您也不应该在 JSP 中使用 scriptlet。 DB 访问代码应该从用 Java 编写的 Servlet 调用,并且 Servlet 应该将列表存储在请求属性中并转发到 JSP。 JSP 应使用 JSP EL 和 JSTL 来显示此列表,并且不应包含任何 Java 代码。

关于java - JSP 和 derby 数据库类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21656949/

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