Java может получить доступ к MySQL через TCP ... никакой API-интерфейс браузера для JavaScript не позволяет TCP, поэтому JavaScript не подходит, кроме серверного JavaScript ... если вы действительно хотите иметь прямое соединение, Java, вероятно, будет вашим выбором. ... вы можете создать Java-апплет, который будет подключаться к удаленному демону MySQL, используя ... вам, возможно, придется подписать его , хотя, если песочница по умолчанию не разрешает этот тип связи .. .
В качестве альтернативы, вы можете использовать FlashPlayer 9+, теоретически, но вам придется реализовать весь протокол в ActionScript 3 или Haxe, так что это не так уж много вариантов, я думаю ...
Тем не менее, 3-уровневый дизайн, который вам не нужен, - действительно лучший путь, по нескольким причинам:
- гибкость: если вы добавите дополнительный слой между клиентом и базой данных, это даст вам больше возможностей для последующих модификаций и разъединит клиента и БД ...
- контроль: гораздо проще контролировать / ограничивать доступ к базе данных
- безопасность: обычно вы настраиваете свою БД MySQL, чтобы она принимала соединения только с очень небольшим количеством хостов, обычно только с локального хоста, и, возможно, с одного внешнего сервера ... таким образом, безопасность вашей БД практически безопасность внешнего сервера, поскольку, вероятно, никто другой даже не знает о БД ... Я бы не сказал, что легко защитить сервер ... но он более безопасен, чем если бы у вас было много общих учетных записей, которые могут получить доступ к БД из любого хост, по незащищенным соединениям ...