Гость
Форумы / Java [игнор отключен] [закрыт для гостей] / Ошибка в коде, как можно исправить / 4 сообщений из 4, страница 1 из 1
02.10.2019, 08:23
    #39870341
skyboyy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в коде, как можно исправить
Я написал программу где должна выводится информация о домене из базы данных. Так вот первый запрос работает, но со вторым запросом проблема.

Вот код

Repositiry
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
    @org.springframework.stereotype.Repository
    public class Repository {
    
      private static Logger logger = Logger.getLogger(Repository.class.getName());
    
      @Autowired
      private JdbcTemplate template;
    
      private String findDomainInfo = "select * from r_domain where name = ?";
    
      public TemporaryModel findDomainInfo(String domain) {
        logger.log(Level.INFO, "searching by domain: " + domain);
        try {
          TemporaryModel temporaryModel = template.queryForObject(
              findDomainInfo,
              new Object[]{domain},
              new DomainRowMapper()
          );
          logger.log(Level.INFO, "found: " + temporaryModel);
          return temporaryModel;
        } catch (EmptyResultDataAccessException e) {
          logger.log(Level.INFO, "not found by domain: " + domain);
    
          return null;
        }
      }
      
      private String findDomainInfor = "select * from r_contact where name = ?";
      
      public DomainInfo findDomainInfor(String domain) {
          logger.log(Level.INFO, "searching by domain: " + domain);
        try {
          DomainInfo domainInfo = template.queryForObject(
              findDomainInfor,
              new Object[]{domain},
              new DomainRowMapper()
          );
          logger.log(Level.INFO, "found: " + domainInfo);
          return domainInfo;
        } catch (EmptyResultDataAccessException e) {
          logger.log(Level.INFO, "not found by domain: " + domain);
    
          return null;
        }
      }
    
    }
    
    class DomainRowMapper implements RowMapper<TemporaryModel> {
    
      @Override
      public TemporaryModel mapRow(ResultSet rs, int i) throws SQLException {
        return new TemporaryModel(
            rs.getLong("id"),
            rs.getLong("oid"),
            rs.getString("name"),
            rs.getLong("tld"),
            rs.getString("registrant"),
            rs.getString("c_admin"),
            rs.getString("c_tech"),
            rs.getString("c_bill"),
            rs.getDate("expired")
        );
      }
      
      class DomainRowMapperr implements RowMapper<DomainInfo> {
    
      @Override
      public DomainInfo mapRow(ResultSet rs, int i) throws SQLException {
        return new DomainInfo(
            rs.getString("domainName"),
            rs.getString("name"),
            rs.getString("organizationName"),
            rs.getString("streetAddress"),
            rs.getString("city"),
            rs.getString("state"),
            rs.getLong("PostalCode"),
            rs.getString("country"),
            rs.getDate("domainCreated"),
            rs.getDate("lastModified"),
            rs.getString("status"),
            rs.getString("registarCreated"),
            rs.getString("currentRegister")
        );
      }
      
      
    
      
      
     
    }




DomainInfo

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
 import java.time.LocalDateTime;
    import lombok.AllArgsConstructor;
    import lombok.Data;
    
    @Data
    @AllArgsConstructor
    
    public class DomainInfo {
    
      String domainName;
      String name;
      String organizationName;
      String streetAddress;
      String city;
      String state;
      String postalCode;
      String country;
    
      LocalDateTime domainCreated;
      LocalDateTime lastModified;
      String status;
      String registarCreated;
      String currentRegistar;
    
    
    }
...
Рейтинг: 0 / 0
02.10.2019, 09:23
    #39870355
pavel_nv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в коде, как можно исправить
skyboyy,

у тебя маппер DomainRowMapper создает объекты класса TemporaryModel, а ты пытаешься присвоить его к DomainInfo
...
Рейтинг: 0 / 0
02.10.2019, 09:36
    #39870363
skyboyy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в коде, как можно исправить
pavel_nv,
я правильно же написал почему ругается на DomainRowMapperr
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
 private String findDomainInfor = "select * from r_contact where name = ?";
  
  public DomainInfo findDomainInfor(String domain) {
      logger.log(Level.INFO, "searching by domain: " + domain);
    try {
      DomainInfo domainInfo = template.queryForObject(
          findDomainInfor,
          new Object[]{domain},
          new DomainRowMapperr()
              
      );
      
      logger.log(Level.INFO, "found: " + domainInfo);
      return domainInfo;
    } catch (EmptyResultDataAccessException e) {
      logger.log(Level.INFO, "not found by domain: " + domain);

      return null;
    }
  }

}

class DomainRowMapper implements RowMapper<TemporaryModel> {

  @Override
  public TemporaryModel mapRow(ResultSet rs, int i) throws SQLException {
    return new TemporaryModel(
        rs.getLong("id"),
        rs.getLong("oid"),
        rs.getString("name"),
        rs.getLong("tld"),
        rs.getString("registrant"),
        rs.getString("c_admin"),
        rs.getString("c_tech"),
        rs.getString("c_bill"),
        rs.getDate("expired")
    );
  }
  
  class DomainRowMapperr implements RowMapper<DomainInfo> {

  @Override
  public DomainInfo mapRow(ResultSet rs, int i) throws SQLException {
    return new DomainInfo(
        rs.getString("domainName"),
        rs.getString("name"),
        rs.getString("organizationName"),
        rs.getString("streetAddress"),
        rs.getString("city"),
        rs.getString("state"),
        rs.getLong("PostalCode"),
        rs.getString("country"),
        rs.getDate("domainCreated"),
        rs.getDate("lastModified"),
        rs.getString("status"),
        rs.getString("registarCreated"),
        rs.getString("currentRegister")
    );
  }
  
  

  
  
 
}
...
Рейтинг: 0 / 0
02.10.2019, 12:00
    #39870438
chpasha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка в коде, как можно исправить
у тебя два DomainRowMapper - с одной "r" на конце и двумя - на скриншоте с ошибкой - с одной. Ногами за такое именование классов бить надо.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Ошибка в коде, как можно исправить / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]