나는 event, gebruiker 및 situatie 테이블을 가진 MySQL 데이터베이스 (데이터베이스)를 가지고있다. 이제 넷빈을 사용하여 Java로 코드를 작성하여 편안한 웹 서비스를 테스트해야합니다. 나는 모든 사용자 (= gebruikers, dutch)를 검색 할 수 있지만 기본 사용자 이름 'Username'을 검색하여 특정 사용자 한 명을 검색하려는 경우, 잔잔한 웹 서비스를 테스트 할 때이 500 오류가 발생합니다. 도와주세요! 이 자바에 내 코드입니다 :자바에서 mysql의 특정 사용자 1 명 요청하기
@Stateless
@Path("gebruikers")
public class GebruikerService {
@Resource(name = "jdbc/socialebuurt")
private DataSource source;
/*
* Request all users.
*/
@GET
@Produces(MediaType.APPLICATION_JSON)
public List<Gebruiker> getGebruikers() {
try (Connection conn = source.getConnection()) {
try (PreparedStatement stat = conn.prepareStatement("SELECT * FROM gebruiker")) {
try (ResultSet rs = stat.executeQuery()) {
List<Gebruiker> results = new ArrayList<>();
while (rs.next()) {
Gebruiker g = new Gebruiker();
g.setUsername(rs.getString("Username"));
g.setNaam(rs.getString("Naam"));
g.setVoornaam(rs.getString("Voornaam"));
g.setStraat(rs.getString("Straat"));
g.setHuisNr(rs.getInt("huisnr"));
g.setPostcode(rs.getInt("postcode"));
g.setGemeente(rs.getString("gemeente"));
g.setWachtwoord(rs.getString("wachtwoord"));
results.add(g);
}
return results;
}
}
} catch (SQLException ex) {
throw new WebApplicationException(ex);
}
}
/*
* Request one specific user.
*/
@Path("{username}")
@GET
@Produces(MediaType.APPLICATION_JSON)
public Gebruiker getGebruiker(@PathParam("username") String username) {
try (Connection conn = source.getConnection()) {
try (PreparedStatement stat = conn.prepareStatement("SELECT * FROM gebruiker WHERE username = ?")) {
stat.setString(1,"");
try (ResultSet rs = stat.executeQuery()) {
if (rs.next()) {
Gebruiker ge = new Gebruiker();
ge.setUsername(rs.getString("Username"));
ge.setNaam(rs.getString("Naam"));
ge.setVoornaam(rs.getString("Voornaam"));
ge.setStraat(rs.getString("Straat"));
ge.setHuisNr(rs.getInt("huisnr"));
ge.setPostcode(rs.getInt("postcode"));
ge.setGemeente(rs.getString("gemeente"));
ge.setWachtwoord(rs.getString("wachtwoord"));
return ge;
} else {
throw new WebApplicationException(Status.NOT_FOUND);
}
}
}
} catch (SQLException ex) {
throw new WebApplicationException(ex);
}
}
}
테이블 'gebruiker'속성 다음있다 : 사용자 이름 (기본 키, VARCHAR (26)), 나암 (텍스트), voornaam (텍스트), STRAAT (텍스트), huisNr을 (int (11)), 우편 번호 (int (4)), gemeente (텍스트), wachtwoord (텍스트). 자세한 정보가 필요하면 질문하십시오. 감사합니다.