ಪਵ۽ http://tinyurl.com/koreaspring ۽ زೞ࣊ࢲ 5 ޙ೦ী ߸ ࠗఌ ٘݀פ. (࢚ ࣗਃदр 1࠙) Please go to http://tinyurl.com/koreaspring on your mobile phone. Please answer those 5 questions (it takes one minute)
~ 2014.05.23 (400시간, 14명) ü 커리큘럼 : Java, Spring Framework, DBMS, Mini Project • Java Application 전문가 양성 과정 ü 일정 : (1차) 2014.06.30 ~ 2014.09.24 (400시간, 30명) (2차) 2014.08.07 ~ 2014.10.31 (400시간, 30명) ü 커리큘럼 : Java, Spring Framework, DBMS, Mini Project Hadoop, Big Data Java Programming 3 weeks Spring Framework 4 weeks Spring Project Big Data 3 weeks - Java Programming - JSP - Core Spring - Spring Web - Hibernate w/ Spring - Hadoop - Data Science
Java EE specification Technically JSF is not exactly a web framework but rather a specification and an implementation – We’ve used the word “framework” here to keep things simple P
" public void doGet(HttpServletRequest req, HttpServletResponse resp) {" …" } public void doPost(HttpServletRequest req, HttpServletResponse resp) {" … } " } Not a POJO Request params parsed manually Form validation done manually No I18N support … Verbose XML config M
some major limitations – Form validation very limited – Couldn’t disable JavaScript – No support for “GET” methods… Specification versus framework – For it to succeed, JSF should have been a framework, not a specification ▪ Frameworks can be updated every month ▪ Java EE Specs are updated once every 2 years M
similar to Struts – But more modern ▪ Easier to extend ▪ Well integrated for Dependency Injection public class UserController extends SimpleFormController { private UserService service; public ModelAndView onSubmit(Object command) { //... } } P Not a POJO Request params parsed manually Form validation done manually Simpler XML config … No Internationalization support
go for Spring @MVC! public class UserController extends SimpleFormController { private UserService service; public ModelAndView onSubmit(Object command) { //... } } @Controller public class UserController { @Autowired private UserService service; @RequestMapping(value="/users/", method=RequestMethod.POST) public ModelAndView createUser(User user) { //... } } P Now POJO based!! No XML needed for controllers anymore!!
is neat and elegant on the controller side – Form submission, Validation, File upload, testing… Spring @MVC is view-agnostic – No much tooling for integration with CSS/JavaScript frameworks – It’s your job to create the custom tags you need ▪ But that’s not hard! P
contains custom tags <html xmlns:custom="urn:jsptagdir:/WEB-INF/tags/html" …> … <custom:inputField name="firstName" label="Enter your first name" /> <custom:inputField name=”lastName" label="Enter your last name" /> </html> JSP file 1 line of code instead of 9!! P
with Spring Petclinic application Pom.xml Spring Configuration Properties Total Spring without Boot 377 lines 350 lines 17 lines 744 lines Spring Boot 117 lines 130 lines 10 lines 257 lines 65% less configuration code!!! Spring Petclinic without Boot: https://github.com/spring-projects/spring-petclinic/ With Boot: https://github.com/FabienLauf/spring-petclinic P
approach to application decisions – Example Opinion: Web applications should use Tomcat – Example Opinion: JPA applications should use Hibernate What if you have different opinions? – Run on Jetty, use EclipseLink No Problem! – Simply override the default configuration P
unified around Struts! JavaScript and CSS: you now have good frameworks! Spring @MVC now is the most popular Web framework for Java Create your own custom tags for the View layer Start learning Spring Boot and Cloud Foundry! N