Nano Hash - криптовалюты, майнинг, программирование

Экспорт сетки GXT в файл Excel

Я использую GXT. У меня есть Грид.

com.sencha.gxt.widget.core.client.grid.Grid<RiaBean>  grid;

Я хочу экспортировать это в файл excel.

я не хочу использовать внешние файлы Jar.

Может ли какой-нибудь орган помочь.

04.06.2013

  • Сгенерированный Excel имеет форматирование, например: стили 05.06.2013

Ответы:


1

Ваша Сеть состоит из ColumnConfig<RiaBean,?>.

Каждый ColumnConfig<RiaBean,?> связан с ValueProvider<RiaBean,?>. Каждый ValueProvider<RiaBean,?> содержит методgetPath(), предназначенный для возврата пути к отображаемым элементам.

Следовательно, вы можете легко получить пути к отображаемым элементам, отправить их на сервер и вернуть значение с помощью самоанализа или EL.

Например, возьмем этот класс

public class RIABean{
  private String a;
  private Integer b;
  private Boolean c;
  private Integer idFoo;
}

Используйте интерфейс, который расширяет возможности PropertyAccess, чтобы легко определять ваши ValueProviders. Он также сгенерирует методы getPath() с точным значением.

public interface RIABeanPropertyAccess extends PropertyAccess<RIABean>{
  //The generated getPath() method returns "a"
  ValueProvider<RIABean,String> a();
  //The generated getPath() method returns "b"
  ValueProvider<RIABean,Integer> b();
  //The generated getPath() method returns "c"
  ValueProvider<RIABean, Boolean> c();
  //The generated getPath() method returns "foo.id"
  @Path("foo.id")
  ValueProvider<RIABean, Integer> idFoo();
}

Создайте ColumnModel для вашей сетки:

RIABeanPropertyAccess pa=GWT.create(RIABean.class);
List<ColumnConfig<RIABean,?>> listCols=new ArrayList<ColumnConfig<RIABean,?>>();
listCols.add(new ColumnConfig(pa.a(),100,"Header text for column A");
listCols.add(new ColumnConfig(pa.b(),100,"Header text for column B");
listCols.add(new ColumnConfig(pa.c(),100,"Header text for column C");
ColumnModel colModel=new ColumnModel(listCols);

Когда пользователь нажимает кнопку «Экспорт», просто повторите список ColumnConfig<RiaBean,?> вашей сетки, чтобы получить Path каждого из них и отправить этот список путей на сервер. Затем сервер может использовать самоанализ/рефлексию/EL для получения значений, соответствующих каждому пути.

Невозможно сгенерировать файл на стороне клиента. Так как сервер должен это делать, это самый простой способ, который я знаю, и это то, что мы делаем в моей команде.

Наконец, спросите себя, действительно ли вам нужен файл Excel или будет достаточно файла csv. Файл csv можно легко сделать без какой-либо библиотеки, и его можно открыть в Excel.

04.06.2013
  • Как мы можем экспортировать в файл cvs? 29.11.2013
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..