2012-05-31 3 views
5

Какие библиотеки AJAX хорошо работают с Spring MVC?AJAX с пружиной MVC

Я новичок в разработке с весной и весной MVC. Из документации по адресу http://www.springsource.org Я еще не понимаю, какая инфраструктура AJAX Spring MVC имеет встроенные или какие сторонние API и инструментальные средства могут быть предложены в качестве работы с разработкой приложения Spring MVC.

Все рекомендации приветствуются.

Я искал предыдущие SO дискуссии по этому вопросу, но я не получил четкого указания.

ответ

8

Весна очень проста в использовании с Ajax. Если Джексон находится на пути к классу, Spring может использовать его для возвращения JSON вызывающему. Что-то вроде этого:

@RequestMapping("/my/path") 
public @ResponseBody MyObject doSomething(@RequestParam Long myVal) { 
    MyObject result = new MyObject(myVal); 
    // do something interesting 
    return result; 
} 

Затем вы можете использовать JQuery (или любой другой любимой библиотекой JavaScript), чтобы сделать запрос на http://myserver/my/path и обработать полученный объект JSON.

Google GSON также прост в использовании. Как и в случае:

@RequestMapping("/my/path") 
public ResponseEntity<String> MyObject doSomething(@RequestParam Long myVal) { 
    MyObject result = new MyObject(myVal); 
    // do something interesting 
    HttpHeaders headers = new HttpHeaders(); 
    headers.set( "Content-Type", "application/json"); 
    String json = gson.toJson(result); 
    return new ResponseEntity<String>(json, headers, HttpStatus.CREATED); 
} 
+0

Благодарим вас за подробный ответ и пример. –

1

Весна не касается каркасов Javascript, как таковых. Я не знаю, поддерживает ли Springsource какую-либо защиту какой-либо конкретной структуры Javascript или агностик. Ajax - это всего лишь технология, поддерживаемая технологией браузера в сочетании с языком Javascript, и важна способность передавать какие-то сериализованные данные между клиентом и сервером. Не сложно скомпилировать собственную базовую структуру AJAX, и вы даже можете создать собственную кодировку данных, а не использовать JSON или XML. Разумно принять существующие рамки и стандарты, потому что вы не хотите поддерживать много вспомогательного кода или беспокоиться об этом, и вместо этого сосредоточьтесь на проблеме, которую пытаетесь решить. Вот почему есть много фреймворков Javascript, которые могут выполнять асинхронные запросы, а некоторые имеют некоторые действительно приятные функции и возможности, которые облегчают вашу жизнь, например jQuery обеспечивает отличную манипуляцию DOM и нейтральную браузер функцию. Я думаю, что использование Spring MVC в сочетании с библиотекой Jackson JSON на стороне сервера и jQuery на стороне клиента является основой для очень достойного сквозного решения. У меня был большой успех с jQuery и jQuery-UI, но другие Javascript-фреймворки могут работать так же хорошо. Для сложных приложений вы в основном нуждаетесь в том, что составляет второй MVC на стороне клиента, потому что вам нужна эта разбивка между виджетами пользовательского интерфейса и данными, которые должны перемещаться между клиентом и сервером.

1

Spring JS имеет поддержку инфраструктуры JavaScript Dojo. Spring Js

+0

Благодарим вас за информацию и ссылку. Я просто торопливо смотрел в документах для «AJAX» и не просто смотрел «JavaScript». (Хотя теперь я вижу, что «AJAX» находится в документах. Я не уверен, как я пропустил это раньше.) –

2

Вот другой подход, чтобы позволить Spring MVC для работы с компонентами пользовательского интерфейса ZK - Rich Web Application with Spring MVC CRUD Demo

В этой статье, используется контроллер Spring MVC для взаимодействия с компонентами ZK UI. (все в коде Java)

Смежные вопросы