Yes, That is the main difference and to elaborate on that it is quite cumbersome to have html code in java with all the out.println and escape sequences. So to overcome this JSPs were brough where Tags are embedded (including Java code directly is not the best practice) inside html for dynamic content.
The another difference is that: JSPs have a translation phase where the JSPs are eventually converted to a servlet by the JSPEngine within the Web Container.
in JSP, java code is embedded within html. in servlet, html is embedded within java code
Mmmh, that could be one way to see it. But in fact, JSP's purpose is not to embed java code, neither is servlets's purpose to output html. I think you didn't make your way up to the Design Patterns yet (there are some at the exam). One of them is the MVC pattern. Check this FAQ.