Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.epam.repository.impl;
- import com.epam.exception.UserAlreadyCreatedException;
- import com.epam.mapper.ObjectMapper;
- import com.epam.model.Role;
- import com.epam.model.User;
- import com.epam.repository.UserDao;
- import org.apache.logging.log4j.LogManager;
- import org.apache.logging.log4j.Logger;
- import org.springframework.dao.EmptyResultDataAccessException;
- import org.springframework.jdbc.core.JdbcTemplate;
- import java.util.List;
- public class UserDaoImpl implements UserDao {
- private static Logger log = LogManager.getLogger(UserDaoImpl.class.getName());
- private JdbcTemplate jdbcTemplateObject;
- public UserDaoImpl(JdbcTemplate jdbcTemplateObject) {
- this.jdbcTemplateObject = jdbcTemplateObject;
- }
- @Override
- public User getUser(Integer id) {
- String SQL = "select * from User where USER_ID = ?";
- User user = jdbcTemplateObject.queryForObject(SQL,
- new Object[]{id}, new ObjectMapper.RowMapperUser());
- log.info(user);
- return user;
- }
- @Override
- public List<User> getAllUsers() {
- String SQL = "select * from User";
- List<User> usersList = jdbcTemplateObject.query(SQL, new ObjectMapper.RowMapperUser());
- for (User user : usersList) {
- log.info(user);
- }
- return usersList;
- }
- @Override
- public int deleteUser(Integer id) {
- String sql = "SELECT * FROM USER WHERE USER_ID = ?";
- User deletedUser = jdbcTemplateObject.queryForObject(
- sql, new Object[]{id},
- new ObjectMapper.RowMapperUser());
- String SQL = "DELETE FROM USER WHERE USER_ID = ?";
- log.info(deletedUser);
- return jdbcTemplateObject.update(SQL, id);
- }
- @Override
- public int updateUser(User user) {
- String password = user.getPassword();
- String mail = user.getMail();
- Integer id = user.getId();
- String name = user.getUserName();
- Object[] objects = {name, password, mail, id};
- String sqlStatement = "update User set USER_NAME = ?, USER_MAIL=? ,USER_PASSWORD = ? Where USER_ID =?";
- log.info(user);
- return jdbcTemplateObject.update(sqlStatement, objects);
- }
- @Override
- public User getUserByEmail(String mail) {
- String SQL = "select * from User where USER_MAIL = ?";
- User user = jdbcTemplateObject.queryForObject(SQL,
- new Object[]{mail}, new ObjectMapper.RowMapperUser());
- log.info(user);
- return user;
- }
- @Override
- public User createUser(User user) {
- if (getUserByEmail(user.getMail()) != null) {
- throw new UserAlreadyCreatedException();
- }
- String role = user.getUserRole();
- String name = user.getUserName();
- String mail = user.getMail();
- String password = user.getPassword();
- String SQL = "insert into User (user_name, user_mail, user_role, user_password) values (?, ?, ?, ? )";
- jdbcTemplateObject.update(SQL, name, mail, role, password);
- log.info(user);
- return getUserByEmail(mail);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement