Commit f993259a by Patryk Czarnik

Pierwsze dostępy do bazy danych

parent e93ed8b1
package sklep.rest;
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.Produces;
import jakarta.ws.rs.WebApplicationException;
import jakarta.ws.rs.core.MediaType;
import java.sql.*;
@Path("/a/products")
public class AProducts {
@GET
@Produces(MediaType.TEXT_PLAIN)
public String allProducts() {
try (Connection c = DriverManager.getConnection(
"jdbc:postgresql://localhost:5432/sklep",
"alx", "abc123");
PreparedStatement stmt = c.prepareStatement("select product_name, price from products")) {
StringBuilder sb = new StringBuilder("Produkty:\n");
try (ResultSet rs = stmt.executeQuery()) {
while (rs.next()) {
sb.append(rs.getString(1)).append(" za ").append(rs.getString(2)).append('\n');
}
}
return sb.toString();
} catch (SQLException e) {
throw new WebApplicationException("Błąd bazy danych. " + e.getMessage(), e, 500);
}
}
}
\ No newline at end of file
package sklep.rest;
import jakarta.inject.Inject;
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.Produces;
import jakarta.ws.rs.WebApplicationException;
import jakarta.ws.rs.core.MediaType;
import javax.sql.DataSource;
import java.sql.*;
@Path("/b/products")
public class BProducts {
@Inject
private DataSource dataSource;
// ew. adnotacja @Resource
@GET
@Produces(MediaType.TEXT_PLAIN)
public String allProducts() {
try (Connection c = dataSource.getConnection();
PreparedStatement stmt = c.prepareStatement("select product_name, price from products")) {
StringBuilder sb = new StringBuilder("Produkty:\n");
try (ResultSet rs = stmt.executeQuery()) {
while (rs.next()) {
sb.append(rs.getString(1)).append(" za ").append(rs.getString(2)).append('\n');
}
}
return sb.toString();
} catch (SQLException e) {
throw new WebApplicationException("Błąd bazy danych. " + e.getMessage(), e, 500);
}
}
}
\ No newline at end of file
package sklep.rest;
import jakarta.inject.Inject;
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.Produces;
import jakarta.ws.rs.WebApplicationException;
import jakarta.ws.rs.core.MediaType;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
@Path("/c/products")
public class CProducts {
@Inject
private DataSource dataSource;
// ew. adnotacja @Resource
@GET
@Produces(MediaType.TEXT_HTML)
public String allProducts() {
try (Connection c = dataSource.getConnection();
PreparedStatement stmt = c.prepareStatement("select product_name, price from products")) {
StringBuilder result = new StringBuilder("""
<!DOCTYPE html>
<html>
<body>
<h1>Lista produktów</h1>
<ul>
""");
try(ResultSet rs = stmt.executeQuery()) {
while(rs.next()) {
result.append("<li>")
.append(rs.getString("product_name"))
.append(" za ")
.append(rs.getString("price"))
.append("</li>\n");
}
}
result.append("""
</ul>
</body>
</html>
""");
return result.toString();
} catch (SQLException e) {
throw new WebApplicationException("Błąd bazy danych. " + e.getMessage(), e, 500);
}
}
}
\ No newline at end of file
quarkus.datasource.jdbc.url=jdbc:postgresql://vps-2bc225bd.vps.ovh.net:5432/sklep
quarkus.datasource.username=alx
quarkus.datasource.password=abc123vps
quarkus.datasource.jdbc.url=jdbc:postgresql://localhost:5432/sklep
quarkus.datasource.password=abc123
# quarkus.datasource.jdbc.url=jdbc:postgresql://vps-2bc225bd.vps.ovh.net:5432/sklep
# quarkus.datasource.password=abc123vps
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment