oktatas:programozas:java:java_adatbazis:mariadb:org.mariadb.odbc_csomag
Tartalomjegyzék
MariaDB org.mariadb.odbc csomag
- Szerző: Sallai András
- Copyright © 2024, Sallai András
- Szerkesztve: 2024
- Licenc: CC BY-SA 4.0
- Web: https://szit.hu
Bevezetés
Az adatok lekéréséhez általában java.sql csomagot használjuk. Használhatjuk az org.mariadb.odbc csomagot is. Valójában csak a Connection objektum megszerzésében van különbség.
A leírásban Properties osztályt is használom, de az független az org.mariadb.odbc csomag használatától, mivel annak használata ajánlott a java.sql csomaggal is. A ResultSet és az SQLException osztály csak java.sql csomagban áll rendelkezésre.
Dokumentáció:
Konfiguráció
- config.properties
db.host = localhost db.name = sargabt db.user = sargabt db.pass = titok
Modell
- Employee.java
public class Employee { int id; String name; String city; double salary; }
Kapcsolat
- Mariadb.java
import java.sql.SQLException; import java.util.Properties; import org.mariadb.jdbc.Configuration; import org.mariadb.jdbc.Connection; import org.mariadb.jdbc.Driver; public class Mariadb implements DataSource{ String user = "sargabt"; String pass = "titok"; String host; String name; String url; public Mariadb(Properties pro) { this.host = pro.getProperty("db.host"); this.name = pro.getProperty("db.name"); this.user = pro.getProperty("db.user"); this.pass = pro.getProperty("db.pass"); this.url = "jdbc:mariadb://" + host + ":3306/" + name + "?user=" + user + "&password=" + pass; } public Connection connect() { Connection conn = null; try { conn = tryConnect(); } catch (SQLException e) { System.err.println("Hiba! A kapcsolódás sikertelen!"); System.err.println(e.getMessage()); } return conn; } public Connection tryConnect() throws SQLException { Configuration conf = Configuration.parse(url); Connection conn = Driver.connect(conf); return conn; } }
Adatok lekérése
- DataService.java
import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import org.mariadb.jdbc.Connection; import org.mariadb.jdbc.Statement; public class DataService { DataSource dataSource; public DataService(DataSource dataSurce) { this.dataSource = dataSurce; } public ArrayList<Employee> getEmployees() { ArrayList<Employee> empList = null; try { empList = tryGetEmployees(); } catch (SQLException e) { System.err.println("Hiba! A lekérdezés sikertelen!"); System.err.println(e.getMessage()); } return empList; } public ArrayList<Employee> tryGetEmployees() throws SQLException { ArrayList<Employee> empList = new ArrayList<>(); Connection conn = this.dataSource.connect(); String sql = "select * from Employees"; Statement st = conn.createStatement(); ResultSet rs = st.executeQuery(sql); while(rs.next()) { Employee emp = new Employee(); emp.id = rs.getInt("id"); emp.name = rs.getString("name"); emp.city = rs.getString("city"); emp.salary = rs.getDouble("salary"); empList.add(emp); } return empList; } }
Főprogram
- Sarga.java
import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.util.Properties; public class Sarga { public void start() { Properties pro = loadConfig(); DataService ds = new DataService(new Mariadb(pro)); for(Employee emp : ds.getEmployees()) { System.out.println(emp.name); } } public Properties loadConfig() { Properties pro = null; try { pro = tryLoadConfig(); } catch (Exception e) { System.err.println(e.getMessage()); } return pro; } public Properties tryLoadConfig() throws FileNotFoundException, IOException { Properties pro =new Properties(); pro.load(new FileInputStream("config.properties")); pro.getProperty("Első"); return pro; } }
A belépési pont
oktatas/programozas/java/java_adatbazis/mariadb/org.mariadb.odbc_csomag.txt · Utolsó módosítás: 2024/02/06 22:52 szerkesztette: admin