Форум программистов, компьютерный форум, киберфорум
Java: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/34: Рейтинг темы: голосов - 34, средняя оценка - 4.91
0 / 0 / 0
Регистрация: 03.04.2017
Сообщений: 4

Выпадающий список с из базы данных MySQL

25.04.2018, 14:17. Показов 6611. Ответов 3

Студворк — интернет-сервис помощи студентам
Создаю CRUD приложение. Есть две таблицы type и category:

MySQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
CREATE TABLE `type` (
  `ID` int(11) NOT NULL AUTO_INCREMENT,
  `sort` varchar(45) NOT NULL,
  `categoryId` int(11) NOT NULL,
  PRIMARY KEY (`ID`),
  KEY `category_idx` (`categoryId`),
  CONSTRAINT `categoryId` FOREIGN KEY (`categoryId`) REFERENCES 
 `category_production` (`ID`) ON DELETE NO ACTION ON UPDATE NO ACTION
  ) 
 
CREATE TABLE `category_production` (
  `ID` int(11) NOT NULL AUTO_INCREMENT,
  `category` varchar(45) NOT NULL,
   PRIMARY KEY (`ID`),
   UNIQUE KEY `category_UNIQUE` (`category`)
)
Удаление, изменение и создание данных работает правильно. Проблема появилась когда хотел создать выпадающий список category для type, т.е. при создании записи в type должен быть список с данными из предыдущей таблицы. Сама форма выпадающего списка создалась, но данных в ней нет. Как это можно справить?

Type.java
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
@Entity
@Table(name = "type")
public class Type implements Serializable{
@Id
@Column(name = "ID")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
 
@Column(name = "sort")
private String sort;
 
@OneToOne
@JoinColumn(name = "categoryId")
private Category category;
 
public int getId() {
    return id;
}
 
public void setId(int id) {
    this.id = id;
}
 
public String getSort() {
    return sort;
}
 
public void setSort(String sort) {
    this.sort = sort;
}
 
public Category getCategory() {
    return category;
}
 
public void setCategory(Category category) {
    this.category = category;
}
 
@Override
public String toString() {
    return "Type{" +
            "id=" + id +
            ", sort='" + sort + '\'' +
            ", category=" + category +
            '}';
  }
}
Category.java
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
@Entity
@Table(name = "category_production")
public class Category {
@Id
@Column(name = "ID")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
 
@Column(name = "category", unique = true)
private String name_category;
 
public int getId() {
    return id;
}
 
public void setId(int id) {
    this.id = id;
}
 
public String getName_category() {
    return name_category;
}
 
public void setName_category(String name_category) {
    this.name_category = name_category;
}
 
@Override
public String toString() {
    return "Category{" +
            "id=" + id +
            ", name_category='" + name_category + '\'' +
            '}';
  }
}
TypeController.java
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
@Controller
public class TypeController {
 
private TypeService typeService;
 
@Autowired
@Qualifier(value = "typeService")
public void setTypeService(TypeService typeService) {
    this.typeService = typeService;
}
 
private CategoryService categoryService;
 
@Autowired
@Qualifier(value = "categoryService")
public void setCategoryService(CategoryService categoryService) {
    this.categoryService = categoryService;
}
 
@RequestMapping(value = "types", method = RequestMethod.GET)
public String listType(Model model){
    model.addAttribute("type", new Type());
    model.addAttribute("listType", this.typeService.listType());
 
    return "types";
}
 
@RequestMapping(value = "/types/add", method = RequestMethod.POST)
public String addType(@ModelAttribute("type") Type type,@ModelAttribute("category") Category category){
    if (type.getId()==0){
        this.typeService.addType(type);
        this.categoryService.addCategory(category);
    }else {
        this.typeService.updateType(type);
        this.categoryService.updateCategory(category);
    }
 
    return "redirect:/types";
}
 
@RequestMapping("/removetype/{id}")
public String removeType(@PathVariable("id") int id){
    this.typeService.removeType(id);
    this.categoryService.removeCategory(id);
 
    return "redirect:/types";
}
 
@RequestMapping("/edittype/{id}")
public String editType(@PathVariable("id") int id, Model model){
    model.addAttribute("type", this.typeService.getTypeById(id));
    model.addAttribute("listType", this.typeService.listType());
    model.addAttribute("category", this.categoryService.getCategoryById(id));
    model.addAttribute("listCategory", this.categoryService.listCategory());
 
    return "types";
}
 
 
@RequestMapping("typedata/{id}")
public String typeData(@PathVariable("id") int id, Model model){
    model.addAttribute("type", this.typeService.getTypeById(id));
 
    return "typedata";
 
  }
}
Часть html кода, где создаю выпадающий список(types.jsp):

HTML5
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
  <tr>
        <td><form:label path="category.id">Category:</form:label></td>
                    <td>
                        <form:select path="category.id" cssStyle="width: 150px;">
                            <form:option value="2">Select a category</form:option>
                            <c:forEach items="${listCategory}" var="category">
                                <form:option value="${category.id}">${category.name_category}</form:option>
                            </c:forEach>
                        </form:select>
                    </td>
                </tr>
 
  /.../
 
      <c:if test="${!empty listType}">
<table class="tg">
    <tr>
        <th width="60">ID</th>
        <th width="150">Sort</th>
        <th width="150">Category</th>
        <th width="50">Edit</th>
        <th width="50">Delete</th>
    </tr>
    <c:forEach items="${listType}" var="type">
        <tr>
            <td>${type.id}</td>
            <td><a href="/typedata/${type.id}" target="_blank">${type.sort}</a></td>
            <td>${category.name_category}</td>
            <td><a href="<c:url value="/edittype/${type.id}"/>">Edit</a></td>
            <td><a href="<c:url value="/removetype/${type.id}"/>">Delete</a></td>
        </tr>
    </c:forEach>
</table>
Миниатюры
Выпадающий список с из базы данных MySQL  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.04.2018, 14:17
Ответы с готовыми решениями:

Чтение файлов из базы данных MySQL на Java
Программа не выводит результат запроса по выборке из таблицы определенного значения (здесь: первая строка, столбец Question), выводит...

Выпадающий список с информацией из базы данных
Здравствуйте! Я пишу форму для обновления данных в таблице врачей. Нужно выбрать в выпадающем списке изменяемую запись таблицы...

Выпадающий список материалов из базы данных (не HTML!)
Есть таблица, в которой отображаются данные аспирантов: имя, научная специальность, научный руководитель, тема работы(Таблица1). Данные...

3
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
25.04.2018, 14:56
убери this,
включи дебаггер, смотри че откуда возвращается
0
0 / 0 / 0
Регистрация: 03.04.2017
Сообщений: 4
25.04.2018, 19:45  [ТС]
Цитата Сообщение от xoraxax Посмотреть сообщение
убери this,
включи дебаггер, смотри че откуда возвращается
Только через дебаггер можно узнать в чем проблема?
Я с ним пока не в очень хороших отношениях :\ (учусь только)
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
25.04.2018, 20:47
ну вот и учись, как раз повод есть
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.04.2018, 20:47
Помогаю со студенческими работами здесь

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

Выпадающий список при выборе из базы данных MSSQL
есть такая форма с DBgrid ами и прочими компонентами для связи с БД Вопрос в том что бы создать так &quot;ИД Клиента&quot;, что бы был...

Выпадающий список из базы
Добрый Всем день. Вот запрос: $query=mysql_query(&quot;SELECT nomer,dom FROM catalog&quot;); Выпадающий список: &lt;div&gt; &lt;a ...

Выпадающий список из базы
В базе имеется таблица menu с полями id_eat, name, eat_time. Необходимо вывести на форму список со значениями из таблицы и после выбора...

выпадающий список - mysql
Привет.Столкнулась с такой проблемои ..(кое кому неверное смешнои ).Беру список с mysql.Как сделать чтобы после филтрации етот выбор...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru