is it better practice to create GUI components and then create the
functionality or better to have the program working before adding
buttons and windows?
In this case it's just you developing, but if there were multiple people this could easily happen simultaneously. It's not right or wrong to do one before the other.
Re: Specific questions
Should I design all the GUI components first and then build the
functionality around this? or have my app working from the console and
then create the GUI ?
If by "working from the console" you mean writing a CLI, then no I don't think that's a good approach in this case. IMO that would be some unnecessary work and writing of code that you don't ultimately need.
That aside, there is no correct answer to the question of writing UI first or not. If you follow a good design pattern you could easily write a UI that doesn't do anything yet (or mock the database interaction). On the same token you could write all of your data access code first without a UI and - with some unit tests - verify that the database code works before writing the UI.
Should I try implement some sort of framework ? I haven't used
Frameworks before so the learning curve i imagine will be steep
Maybe? It depends on what you're trying to accomplish. If you want to learn a specific framework, then by all means use it. If you do decide to use a specific framework, be sure that it suits your needs and that you're not using it simply because someone said you should.
Should I implement an architecture type? I know the theory behind MVC
as i used in the JSP Restful project. But as this project inst overly
complicated, maybe I don't need to.
MVC (or MVP, etc.) is certainly a good pattern that you could follow. You say the project isn't overly complicated, but you may be surprised how much code you end up writing and how the complexity grows quickly! Following a good pattern can help you here to keep things modular, readable, maintainable and easy to spot bugs.
Re: "thoughts and any other design aspects"
If you're looking to learn a UI framework that would be useful going forward, then I would stay away from Swing and use JavaFX instead.
I would recommend taking this project one piece at a time: create a non-function UI and write the data access code separately before wiring everything together. This will help you focus on one aspect and ensure that you're making good design decisions (and perhaps following a pattern like MVC, MVP, etc) on that layer. Naturally you may need to make changes later, but not nearly as many as if you try to do it all at once - that gets messy in a hurry!
When starting each stage, consider creating your interfaces first. For example when writing the data access code, ask yourself "What interactions do I need, and what do I expect in return?" Then create some interfaces with methods like
removeStock(), etc. depending on what you need. Then you can create specific implementations of your interface depending on the technology used (eg. a SQL database, MySQL, etc. etc.). The same is true for the UI (implementations for the specific framework used) and making the API calls to retrieve stock prices (implementation for the specific API used). This provides flexibility for swapping out a UI framework, database technology, or stock API.
Lastly, consider posting to Code Review once you have something that is working! It sounds like your goal here is to learn, and having other people critique your code is a great way to learn!