Преобразовать char[]
в String
.В этом отношении вы можете просто использовать String
конструктор String(char[] value)
:
pst.setString(2, new String(txtPass.getPassword()));
В качестве альтернативы, вы можете просто использовать @SuppressWarnings("deprecation")
в качестве основной точки устаревания, избегая создания immutable String
полностью потерпел поражение, создав впоследствии String
из массива char[]
.
Однако это не очень хорошая идея, getText()
не рекомендуется по причине:
После того, как вы создали строку, если другой процесс может создать дамп памяти, вы не сможете (кроме отражением ) избавиться от данных до мусораколлекция запускается.
С массивом вы можете явно стереть данные после того, как с ним покончено.Вы можете перезаписать массив чем угодно, и пароль не будет присутствовать нигде в системе, даже перед сборкой мусора.
Источник