CREATE PROCEDURE p_oblicz_odleglosc_v2 @idCustomer int, @idVehicle int as select @idCustomer [idCustomer], @idVehicle [idVehicle], c.location.STDistance(v.locationVehicle)/1000 [distanceInKm] from Customer c join Vehicle v on v.idVehicle = @idVehicle where c.idCustomer = @idCustomer; go
Mam taka procedure w SQL server wywolanie jest bardzo proste
exec p_oblicz_odleglosc_v2 1,2 teraz chcialbym ja wywolac w javie . Czy moglby ktos objasnic jak wywolac taka procedure lub jakis tutorial ?
Jak wylowac procedure w javie , hibernate , spring
- Rejestracja: dni
- Ostatnio: dni
- Postów: 4
0
- Rejestracja: dni
- Ostatnio: dni
- Postów: 2787
1
Jak już masz Hibernate to możesz .createNativeQuery(..) na entity managerze albo jak nie masz Hibernate to po prostu gołym PreparedStatement
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Space: the final frontier
- Postów: 26433
0
- Po co tu hibernate? o_O
- Nie widzę powodu czemu miałbyś nie móc zrobić formularza na stroni który to woła, ale mam wrazenie że w ogóle nie umiesz javy, a to może być problem...
- Rejestracja: dni
- Ostatnio: dni
- Postów: 4
0
@Shalom: Po prostu wszystkie operacje na bazie robie za pomoca hibernate , co do drugiego punktu to po prostu nie wiem jak sie wywoluje procedury dlatego zapytalem .
@RequestMapping("/user")
public String user(Model model, User user, BindingResult bindingResult){
if(this.sessionObject.getUser() == null){
return "redirect:login";
}
if(bindingResult.hasErrors()) {
return "user";
}
User result = userDAO.getUserByLogin(user.getUsername());
model.addAttribute("result", result);
return "resultUser";
}
<form action="/user" th:object="${user}" method="post" id="login" class="input-group">
<input type="text" class="input-field" placeholder="username" name="username" th:field="*{username}" th:errorClass="error"required>
<span th:if="${#fields.hasErrors('username')}" th:errors="*{username}">Incorrect data</span>
<button type="submit" class="submit-btn">Get your profil</button>
</form>
@Override
public User getUserByLogin(String username) {
Session session = this.sessionFactory.openSession();
User user =
(User) session.createQuery("FROM pl.edu.wszib.model.User WHERE username = :username" )
.setParameter("username", username)
.uniqueResult();
session.close();
System.out.println(user);
return user; }
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Space: the final frontier
- Postów: 26433
0
userDAO, sessionFactory, czy mamy rok 2011 czy 2021? :D Anyway, jw. musisz tu użyć nativeQuery jeśli chcesz to robić w ten sposób.
- Rejestracja: dni
- Ostatnio: dni
- Postów: 4
0
@Shalom: 2021 a odpowiedzi jak w 2011 xd