<prompt> Andika programu ya Java ambayo huanzisha muunganisho kwenye hifadhidata ya PostgreSQL, hufanya shughuli za CRUD kwenye jedwali linaloitwa wafanyakazi, na kufunga muunganisho. Tumia taarifa zilizotayarishwa na ushughulikie tofauti ipasavyo.PLINFORMAT  <response>: kuagiza java.sql.Connection;agiza java.sql.DriverManager;agiza java.sql.PreparedStatement;agiza java.sql.ResultSet;agiza java.sql.SQLException;Hifadhidata ya Wafanyikazi wa darasa la umma Private tuli final String URL jdbc:postgresql:localhost:5432your_database_name; faragha tuli final Kamba USER your_username; Private tuli final Kamba PASSWORD your_password; utupu tuli wa umma String args EmployeeDatabase staffDatabase new EmployeeDatabase; jaribu Muunganisho wa muunganisho mfanyakaziDatabase.connect; Fanya shughuli za CRUD hapa int id 1; Jina la kamba John Doe; mshahara mara mbili 50000; mfanyakaziDatabase.undaMfanyakazimuunganisho, kitambulisho, jina, mshahara; mfanyakaziDatabase.somaMfanyakazimuunganisho, kitambulisho; mfanyakaziDatabase.sasishaMfanyakazimuunganisho, kitambulisho, 60000; mfanyakaziDatabase.futaMfanyakazimuunganisho, kitambulisho; mfanyakaziDatabase.closeConnectionmuunganisho; catch SQLException e System.out.printlnKosa: e.getMessage; public Connection connect hutupa SQLException rudisha DriverManager.getConnectionURL, USER, PASSWORD; public void createEmployee Muunganisho wa muunganisho, kitambulisho cha int, jina la kamba, mshahara mara mbili hutupa SQLException String sql INGIZA KWA wafanyakazikitambulisho, jina, mshahara THAMANI?, ?, ?; PreparedStatement preparedTaarifa connection.prepareStatementsql; tayariStatement.setInt1, id; preparedStatement.setString2, jina; readyStatement.setDouble3, mshahara; int rowsAffected preparedStatement.executeUpdate; System.out.printlnrowsAffected safusafu zilizoingizwa.; Usomaji wa utupu wa umma Muunganisho wa unganisho, kitambulisho cha int hutupa SQLException String sql CHAGUA KUTOKA KWA wafanyakazi WAPI id ?; PreparedStatement preparedTaarifa connection.prepareStatementsql; tayariStatement.setInt1, id; ResultSet resultSet preparedStatement.executeQuery; wakati resultSet.next System.out.printlnID: resultSet.getIntid; System.out.printlnJina: resultSet.getStringjina; System.out.printlnMshahara: resultSet.getDoublemshahara; sasisho la utupu la ummaMfanyakazi Muunganisho wa muunganisho, kitambulisho cha int, Mshahara mpya mara mbili hutupa SQLException String sql SASISHA wafanyakazi SET mshahara ? WAPI id ?; PreparedStatement preparedTaarifa connection.prepareStatementsql; readyStatement.setDouble1, newSalary; tayariStatement.setInt2, id; int rowsAffected preparedStatement.executeUpdate; System.out.printlnrowsAffected safusafu imesasishwa.; public void deleteEmployeeMuunganisho wa unganisho, int id hutupa SQLException String sql FUTA KUTOKA KWA wafanyakazi WAPI id ?; PreparedStatement preparedTaarifa connection.prepareStatementsql; tayariStatement.setInt1, id; int rowsAffected preparedStatement.executeUpdate; System.out.printlnrowsAffected safusafu zimefutwa.; public void closeConnectionConnection connection hutupa SQLException ikiwa muunganisho ! null !connection.isClosed connection.close; 