Java 在jsp中显示Postgres中的表
我想用jsp显示表 静态内容可以,但表不显示。Java 在jsp中显示Postgres中的表,java,postgresql,servlets,jakarta-ee,Java,Postgresql,Servlets,Jakarta Ee,我想用jsp显示表 静态内容可以,但表不显示。 我想在MVC中实现,我不想在jsp中使用java代码 数据连接 模型 刀 KsiegiDAO公共类{ 专用静态连接db1; 专用静态连接; 公共列表getReleaseData(){ List ksiegi=newarraylist(); ResultSet ResultSet=null; Statement=null; 试一试{ db1=新的DbConnection(); connection=db1.getConnection(); Strin
我想在MVC中实现,我不想在jsp中使用java代码 数据连接 模型 刀
KsiegiDAO公共类{
专用静态连接db1;
专用静态连接;
公共列表getReleaseData(){
List ksiegi=newarraylist();
ResultSet ResultSet=null;
Statement=null;
试一试{
db1=新的DbConnection();
connection=db1.getConnection();
String query=“从ksiegi中选择nrksiegi、地址、nrdzialki”;
statement=connection.createStatement();
resultSet=语句.executeQuery(查询);
{
while(resultSet.next()){
KsiegaWieczysta ksiega=新的KsiegaWieczysta();
ksiega.setNrksiegi(resultSet.getLong(“nrksiegi”);
ksiega.setAdres(resultSet.getString(“地址”);
ksiega.setNrdzialki(resultSet.getLong(“nrdzialki”);
ksiegi.add(ksiega);
}
}
}捕获(例外e){
e、 printStackTrace();
}最后{
if(resultSet!=null){
试一试{
resultSet.close();
}捕获(SQLE异常){
e、 printStackTrace();
}
}
if(语句!=null){
试一试{
语句。close();
}捕获(SQLE异常){
e、 printStackTrace();
}
}
if(连接!=null){
试一试{
connection.close();
}捕获(SQLE异常){
e、 printStackTrace();
}
}
}
返回ksiegi;
}
}
Servlet
@WebServlet(“/showtable”)
公共类ShowTable扩展了HttpServlet{
KsiegiDAO KsiegiDAO=新的KsiegiDAO();
受保护的void doGet(HttpServletRequest请求、HttpServletResponse响应)
抛出ServletException、IOException{
List ksiegi=ksiegiDAO.getReleaseData();
setAttribute(“ksiegi”,ksiegi);//将作为
//JSP中的${ksiegi}
request.getRequestDispatcher(“/WEB-INF/showtable.jsp”).forward(请求,响应);
}
}
JSP
在此处插入标题
你好
谢谢你的帮助你有什么错误吗?或者它只是不显示?另外,您是否打印了sql查询的结果,以便知道KsiegaWieczysta对象属性不为空?在控制台中,我得到了连接。。。而且它不显示在ksiegi.add(ksiega)之前在DAO中,打印
ksiega.getNrksiegi()
,以便验证对象属性yes显示的数据来自sql“Connected…1029 9332 10029 12930 12344 19288 109349 99481 1237471 19384817”,但出现此错误
import java.sql.Connection;
import java.sql.DriverManager;
public class DbConnection {
Connection db_conn;
public Connection getConnection()
{
try {
Class.forName("org.postgresql.Driver").newInstance();
String url = "jdbc:postgresql://localhost:5432/testowaaplikacja";
String user = "postgres";
String pass = "password";
db_conn = DriverManager.getConnection(url,user,pass);
if((db_conn != null)&&(!db_conn.isClosed()))
{
System.out.println("Connected...");
}
return db_conn;
}
catch(Exception e)
{
//System.out.println("Error in connecting to database ");
e.printStackTrace();
}
return null;
}
}
public class KsiegaWieczysta {
private long nrksiegi;
private String adres;
private long nrdzialki;
public long getNrksiegi() {
return nrksiegi;
}
public void setNrksiegi(long nrksiegi) {
this.nrksiegi = nrksiegi;
}
public String getAdres() {
return adres;
}
public void setAdres(String adres) {
this.adres = adres;
}
public long getNrdzialki() {
return nrdzialki;
}
public void setNrdzialki(long nrdzialki) {
this.nrdzialki = nrdzialki;
}
}
public class KsiegiDAO {
private static DbConnection db1;
private static Connection connection;
public List<KsiegaWieczysta> getReleaseData() {
List<KsiegaWieczysta> ksiegi = new ArrayList<KsiegaWieczysta>();
ResultSet resultSet = null;
Statement statement = null;
try {
db1 = new DbConnection();
connection = db1.getConnection();
String query = "SELECT nrksiegi, address, nrdzialki FROM ksiegi";
statement = connection.createStatement();
resultSet = statement.executeQuery(query);
{
while (resultSet.next()) {
KsiegaWieczysta ksiega = new KsiegaWieczysta();
ksiega.setNrksiegi(resultSet.getLong("nrksiegi"));
ksiega.setAdres(resultSet.getString("address"));
ksiega.setNrdzialki(resultSet.getLong("nrdzialki"));
ksiegi.add(ksiega);
}
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (resultSet != null) {
try {
resultSet.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (statement != null) {
try {
statement.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (connection != null) {
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
return ksiegi;
}
}
@WebServlet("/showtable")
public class ShowTable extends HttpServlet {
KsiegiDAO ksiegiDAO = new KsiegiDAO();
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
List<KsiegaWieczysta> ksiegi = ksiegiDAO.getReleaseData();
request.setAttribute("ksiegi", ksiegi); // Will be available as
// ${ksiegi} in JSP
request.getRequestDispatcher("/WEB-INF/showtable.jsp").forward(request, response);
}
}
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!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">
<title>Insert title here</title>
</head>
<body>
Hello
<table>
<c:forEach items="${ksiegi}" var="ksiega">
<tr>
<td><c:out value="${ksiega.nrksiegi}" /></td>
<td><c:out value="${ksiega.adres}" /></td>
<td><c:out value="${ksiega.nrdzialki}" /></td>
</tr>
</c:forEach>
</table>
</body>
</html>