Как программно использовать JdbcTemplate Spring?

Хорошо - Вы не будете в состоянии сделать это серверная сторона на обратной передаче, поскольку файл будет отправлен (загруженный) во время обратной передачи.

я думаю, что можно быть в состоянии сделать это на клиенте, использующем JavaScript. Лично, я использую сторонний компонент, названный radUpload Telerik. Это имеет хороший API клиентской и серверной стороны, и это обеспечивает индикатор выполнения для больших загрузок файла.

я уверен, что существуют доступные решения с открытым исходным кодом, также.

6
задан Cœur 21 January 2019 в 11:57
поделиться

3 ответа

Просто используйте необработанный поиск JNDI:

public void setDataSourceName(String name) {
    InitialContext ctx = new InitialContext();
    jdbcTemplate = new JdbcTemplate((DataSource) ctx.lookup(name));
}
3
ответ дан 8 December 2019 в 17:23
поделиться

Не знаю, зачем вам это нужно, но ... вы можете найти источник данных JDNI с помощью Spring JndiDataSourceLookup :

JndiDataSourceLookup lookup = new JndiDataSourceLookup();
lookup.setResourceRef(true); // if the lookup occurs in a J2EE container
DataSource ds = lookup.getDataSource(jndiName);

Или просто выполните поиск вручную, используя Классы Sun:

Context ctx = new InitialContext();
DataSource ds = (DataSource)ctx.lookup("jdbc/AcmeDB");

Затем просто передайте ссылку на источник данных конструктору JdbcTemplate или вызовите setDataSource (ds) .

Но, как я уже сказал, я понятия не имею, почему вы не хотите использовать инъекцию.

6
ответ дан 8 December 2019 в 17:23
поделиться

Вот пример кода из написанного мной проекта:

SimpleJdbcTemplate db;
DataSource dataSource = new SingleConnectionDataSource(System.getProperty(
         "lingcog.db.connectstring"),
      System.getProperty("lingcog.db.username"),
      System.getProperty("lingcog.db.password"), false);

db = new SimpleJdbcTemplate(dataSource);

Возможно, мой код был бы проще, если бы я использовал инъекцию, но это хороший пример как сделать это без использования инъекции.

Вы можете использовать объект org.springframework.jdbc.datasource.lookup.JndiDataSourceLookup , чтобы найти нужный источник данных по имени JDNI.

DataSource dataSource = new JndiDataSourceLookup().getDataSource("java:/TheOracleDS")
SimpleJdbcTemplate db=new SimpleJdbcTemplate(dataSource);
5
ответ дан 8 December 2019 в 17:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: