Como pegar o valor de uma JSpinner, dentro de um for each?

Fala ae galera, sou novo em Java, e estou montando uma tela onde é exibidos produtos de um banco de dados, titulo do produto, preço, botao e um spinner. Tento dar um getValue do jspinner, porém ele não me retorna o valor que o usuario indica.

class Minimo extends JFrame {

JSpinner spinner = new JSpinner();
JButton botao = new JButton(“adicionar”);

JScrollPane scrollPane = new JScrollPane();
JPanel panel = new JPanel(new GridLayout(0, 2));

public Minimo() throws HeadlessException {
super(“Produtos em Estoque”);

for (int i = 0; i < 10; i++) {
    spinner = new JSpinner();
    botao = new JButton();
    botao.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent arg0) {
            System.out.println(spinner.getValue());

        }
    });

    panel.add(botao);
    panel.add(spinner);

}

add(panel);
setVisible(true);
setSize(1360, 720);

}

public static void main(String[] args) {
new Minimo();
}
}

ATUALIZANDO: Quando clico no respectivo botao do jspinner, não é exibido no console o valor contido no jspineer.