Objective
Going to school next semester, that is, September, to find an internship, now there are three months time. (but still playing Python every day.) )
Set a review plan.
1. Basic
- Concurrency: Java concurrency programming combat
- Sql:mysql, look at the book, Leetcode brush the question.
- Design Patterns: Learn a common eight or nine of the line.
Tools that must be mastered:
- Maven: Project builder, although I'd prefer to use gradle directly, it's unavoidable to find a job.
- Junit: Remember to write tests, people can't be too lazy.
- Logs: Logback, slf4j
2. Web Framework
This is about to do something.
- Spring: Dependency injection, face tangent, and a little refresher.
- Spring MVC
- Mybatis: Database Framework. Small projects can also be used directly with Spring JPA, which is simpler and lighter.
- Mockito: It must be a simulation test to do the Web.
Front end: Html JS Css.
While using the above framework, there is little need to understand the underlying, but the bottom is to review:
- JDBC: Native jdbc is really verbose and can be compared to Spring jdbctemplate.
- Servlet:java the core of the Web. Equivalent to an implementation specification on the HTTP server side.
- Tomcat: It's an implementation of the servlet specification, and a jetty is also famous.
Do one or two small sites, you can review the Spring Boot, experience the convention is better than the ease of configuration.
3. Review the Basics
If you look for a job, you seem to like to ask basic questions.
- Generics: Type erase, wildcard, extends/super, and so on.
- Set the framework source code, while reviewing the algorithm and data structure. looks like the interview was all a polygon algorithm concurrency?
4. Brush questions
This is the last stage, on the cattle, Leetcode brush problems to find an internship.
5. Other side-by-side learning content
Official library:
- Io/nio Library
- Network programming: Socket/http
- Functional Type: Java8 functional Programming (lambda, runnable, stream ...)
Third party libraries:
- Json:gson, Fastjson. The API for two libraries is simple and can be selected on demand.
- Xml:dom4j. Advanced can look at XStream.
- Http:httpclient, OkHttp
- Google Guava: It seems that the most usage of non-mutable collections is highest.
- Apache Commons: It provides a lot of useful tools.
Language advanced
This is a review plan is not covered by the basic content, there will be time to fill
- Reflection mechanism
- annotation mechanism
- Class Loader
- RPC Calls: There is a well-known third-party framework: Netty
Web Advanced
- Cache: Redis
- Message: RabbitMQ
- Other: Spring family barrels.
Java Review Program