ich diesen Code schrieb:Nullpointer beim Anschließen Spring MVC postgres
Controller:
@Controller
@RequestMapping("/groups")
public class GroupController {
@Autowired
private GroupService groupService;
@RequestMapping
public String list(Model model) {
model.addAttribute("groups", groupService.getAllGroups());
return "groups";
}
}
dbConnect
public class dbConnect {
public dbConnect(){}
private JdbcTemplate jdbcTemplate;
public JdbcTemplate getJdbcTemplate() {
return jdbcTemplate;
}
public void DatabaseConnection(){
DriverManagerDataSource driverManagerDataSource = new DriverManagerDataSource();
driverManagerDataSource.setDriverClassName("org.postgresql.Driver");
driverManagerDataSource.setUrl("jdbc:postgres://xxx");
driverManagerDataSource.setUsername("x");
driverManagerDataSource.setPassword("xss");
this.jdbcTemplate=new JdbcTemplate(driverManagerDataSource);
}
}
Gruppe Repo-Schnittstelle
public interface GroupRepository {
List<Group> getAllGroups();
}
Gruppe Repo Impl
@Repository
public class InMemoryGroupRepository implements GroupRepository {
public InMemoryGroupRepository(){}
private dbConnect data;
//@Autowired
public InMemoryGroupRepository(dbConnect dbConnect) {
this.data = dbConnect;
}
public List<Group> getAllGroups() {
return data.getJdbcTemplate().query("SELECT id_grupy, nazwa, id_egzaminatora, haslo, egzaminatorzy_id_egzaminatora FROM grupy", new RowMapper<Group>() {
public Group mapRow(ResultSet rs, int rowNum)
throws SQLException {
Group group = new Group();
group.setId_grupy(rs.getInt(1));
group.setNazwa(rs.getString(2));
group.setId_egzaminatora(rs.getInt(3));
group.setHaslo(rs.getString(4));
group.setEgzaminatorzy_id_egzaminatora(rs.getInt(5));
return group;
}
});
}
}
Group Service-Schnittstelle
public interface GroupService {
List<Group> getAllGroups();
}
Group Service Impl
@Service
public class GroupServiceImpl implements GroupService {
@Autowired
private GroupRepository groupRepository;
public List<Group> getAllGroups() {
return groupRepository.getAllGroups();
}
}
Wenn ich geben versuchen "/ Gruppen" Ich habe diesen Fehler:
denke ich, dass die Problem ist, dass Datenbankverbindung nicht hergestellt werden kann. Wir haben fast jeden möglichen Fehler ausgeschlossen. Wir haben versucht, ArrayList anstelle der Datenbank zu verwenden, und es hat gut funktioniert. Wie kann ich es reparieren?
Was ist die URL Ihrer Datenbank? Ich sehe Ihre URL ist: 'driverManagerDataSource.setUrl (" jdbc: postgres: // xxx ");' ist es in korrekter Syntax? [Siehe hierzu] (https://www.mkyong.com/jdbc/how-do-connect-to-postgresql-with-jdbc-driver-java/) um Setup jdbc mit Postgre –
zu wissen Überprüfen Sie den Port, 5432 ist Standard für Postgres –
Haben Sie versucht mit @Bean statt @Autowired? – German