Компилятор хочет, чтобы вы это записывали:
private static List<String> list = new ArrayList<String>();
, потому что в противном случае вы могли бы добавить любой тип, который вам нравится, в list
, делая создание как new ArrayList<String>()
бессмысленным. Java generics - это только функция времени компиляции, поэтому объект, созданный с помощью new ArrayList<String>()
, с радостью примет Integer
или JFrame
элементы, если они назначены ссылке «raw type» List
- сам объект ничего не знает о какие типы он должен содержать, только компилятор делает.
Если это сработало до этого, я бы предположил, что у вас уже есть копия вашего скрипта node.js, работающего в фоновом режиме, который поддерживает соединение.
Я считаю, что соединение было отказано сообщение об ошибке tcp / ip, а не что-то из MySQL, которое предполагает, что он либо не работает, либо работает на другом порту или с сокетами.
Не могли бы вы попытаться подключиться к порту 3308? Чтобы узнать, работает ли сервер на этом порту?
telnet localhost 3308
Можете ли вы также попробовать:
mysql -hlocalhost -uroot -pxxx
У меня также есть эта проблема, когда я пытаюсь подключиться и отключить много времени, я решил эту проблему путем конечного соединения и запуска сервера после закрытия соединения, теперь я могу подключиться без проблем
Как показано ниже :
mysql.createConnection()
connection.end();
после успешного запуска сервера, удалите функцию connection.end () из вашего кода и запустите сервер
По какой-то очень странной причине мой компьютер разрешил мне иметь порт 3306 как порт по умолчанию для моего подключения, чтобы он работал.
[/g0]
Я знаю, что на этот вопрос был дан ответ, но для меня проблема заключалась в том, что сервер mysql прослушивается в Unix-сокете, а не на tcp-сокете. Таким образом, решение было добавить:
port: '/var/run/mysqld/mysqld.sock'
к параметрам соединения.
/tmp/mysql.sock
– rlemon
4 June 2015 в 19:41
Обзор
Для всех, кто имеет эту проблему и работает MAMP
. Я подозревал, что проблема связана с сетью, а не с MySQL
или Node.js
.
Решение
Если вы откроете MAMP
и щелкните MySQL
на левой панели навигации, он потянет страницу параметров MySQL. В центре страницы вы увидите флажок, который говорит:
«Разрешить доступ к сети
blockquote>MySQL
».Установите этот флажок, а затем перезагрузите
MAMP
. На этом этапе вы можете проверить свое подключение к MySQL с помощью скриптаtelnet
илиnode.js
.Подсказка
Помните, что вы можете проверить, какой
port
вашMySQL
запущен, открывMAMP
и щелкнув ссылку на порты слева навигационная панель.Визуальная помощь
mysql -hlocalhost -uroot -pxxx
.. Как я могу убить все скрипты node.js ?! – clarkk 18 January 2014 в 19:16mysql -hlocalhost -P 3308 -uroot -pxxx
забыли порт .. но он работает – clarkk 18 January 2014 в 19:25ps ax | grep mysqld
– clarkk 18 January 2014 в 19:27'root'@'%'
со всеми предоставленными привилегиями .. такая же ошибка .. хм .. – clarkk 18 January 2014 в 20:24