Interview Java Developer

Get Started. It's Free
or sign up with your email address
Interview Java Developer by Mind Map: Interview Java Developer

1. Exception

2. Java Core

2.1. Modifier

2.1.1. default

2.1.2. private

2.1.3. protect

2.1.4. public

2.2. Key word This, static,super()

2.2.1. this

2.2.1.1. To identify parameter in contructor and attribute class

2.2.1.2. Calls the other method

2.2.1.3. Invoke again method has object doing parameter into method by this

2.2.1.4. Return currently object

2.2.1.5. Invoke again contructor

2.2.2. static

2.2.2.1. variable

2.2.2.1.1. Variable static can not inside a method static

2.2.2.2. nested class

2.2.2.3. block

2.2.3. super

2.2.3.1. Invoke the contructor of the super-class

2.3. Try..catch..finally

2.3.1. try

2.3.2. catch

2.3.3. finally

2.4. File I/O

2.4.1. InputStream

2.4.1.1. FileInputStream

2.4.1.2. BufferedInputStream

2.4.2. OutputStream

2.4.2.1. FileOutputStream

2.4.2.2. BufferedOutputStream

2.4.3. Reader

2.4.4. Writer

2.4.5. BufferedReader

2.4.6. BufferedReader

2.5. Number

3. Java Advanced

3.1. Collection

3.1.1. List - Can duplicate element in list

3.1.1.1. ArrayList

3.1.1.1.1. Why declare list<object> = new arraylist<object>.?

3.1.1.2. Linkedlist

3.1.1.2.1. diffirent between linkedlist and arraylist?

3.1.1.3. Vector

3.1.1.3.1. Similar as arraylist

3.1.1.4. Stack

3.1.1.4.1. Subclass of vector

3.1.1.4.2. is last in first out data structure

3.1.2. Queue - order the element by first in first out(FIFO)

3.1.2.1. LinkedList

3.1.2.2. PriorityQueue

3.1.3. Map - key/value(key is unique and most a value)

3.1.3.1. interface map

3.1.3.1.1. new hashmap

3.1.3.2. interface treemap

3.1.4. Set - Can not duplicate element in list (But can add element exist but list understand just has a element).And unordered.

3.1.4.1. HashSet -Dont unordered and dont duplicate

3.1.4.2. TreeSet-order elements by their values

3.2. MultiThread

3.2.1. Map

4. Spring Framework

4.1. Bean

4.1.1. A object be new and manage by spring container container IoC

4.1.2. Define via configuration xml or annotation

4.2. Spring Container IoC

4.3. what happend when run spring boot

4.3.1. @SpringbootApplication included @Component_Scan auto scan all components such as @Controller @Service @Repository and inject dependence them.

5. Hibernate

5.1. Diff hibernate /JPA

5.1.1. JPA - Java Persistence API

5.1.1.1. Mapping java object class with the tables in database

5.1.2. Hibernate -

5.1.2.1. Implement from JPA to perfome action like query sql

5.1.2.2. Diff Spring data jpa

5.1.2.2.1. Spring data jpa

5.2. Mapping Entity

5.2.1. n-n

5.2.1.1. Table1:

5.2.1.1.1. @JoinTable(name=""namethable,schema="")

5.2.1.1.2. list table2

5.2.1.2. Table2:

5.2.1.2.1. @ManyToMany(mappedBy="name variable list 2")

5.2.1.3. Diff lazy and eager

5.2.1.3.1. Lazy

5.2.2. 1-n

5.2.2.1. Table1:

5.2.2.1.1. @JoinColumn(name="")

5.2.2.1.2. List<EntityOfTableN>

5.2.3. n-1

5.2.3.1. Table1:

5.2.3.1.1. @JoinColumn(name="")

5.2.3.1.2. Object object

5.2.4. Casecade

5.2.4.1. All

5.2.4.1.1. Inluded casecadetype below

5.2.4.2. Merge

5.2.4.2.1. If merge futher object , các table liên quan đều bị detach

5.2.4.3. Detach

5.2.4.3.1. If detach futher object , các table liên quan đều bị detach

5.2.4.4. Persist

5.2.4.4.1. If persist futher object , các table liên quan đều bị persist

5.2.4.5. Refresh

5.2.4.5.1. If refresh futher object , các table liên quan đều bị refresh

5.2.4.6. Remove

5.2.4.6.1. If remove futher object , các table liên quan đều bị remove

6. Microservice

6.1. Why we have to use microservice

7. Design Parttern

7.1. Singleton

7.1.1. How implement

7.1.1.1. Modifier contructor is private

7.1.1.2. Define private final staic new object

7.1.1.3. Define method public static return variable as below

7.1.2. Ensure that the class just a 1 instance

7.1.3. Why have to using singleton parttern

7.1.3.1. Avoid situated object instance multiple time =>take effort

7.1.4. Where

7.1.4.1. Avoid situated object instance multiple time =>take effort

7.1.5. Pros and cons

7.1.5.1. Pros

7.1.5.2. Cons

7.1.5.2.1. Difficult write unit test

7.1.5.2.2. Vi phạm quy tắc 1 parttern chỉ giải quyết 1 vấn đề

7.1.5.2.3. Computer in program know to much each other

7.2. Factory

8. Restfull

8.1. Produces

8.1.1. Format type response for user.(Đinh dạng trả về cho người dùng)

8.1.1.1. APPLICATION_JSON_VALUE

8.2. Consumes

8.2.1. Format media type from user.(Đinh dạng loại dữ liệu người dùng request).

8.3. Method

8.3.1. Post

8.3.2. Get

8.3.3. Put

8.3.4. Delete

8.4. Diffient path variable and request parameter

9. Experience project

9.1. Dependence Injection

9.1.1. Dependence- Class B be new into class A and class A using method of class B

9.1.2. Dependence Inject - Someone responsible create all dependence

9.1.2.1. Contructor Injection

9.1.2.2. Setter injection

9.1.2.3. Interface Injection

9.1.3. Why using DI

9.1.3.1. Unit-test can not test class A without new class B ==> unwieldy and cumbersome.

9.1.3.2. Hard to extend ==>if class B change also change.

9.2. Autowire

9.3. IoC

10. JWT

10.1. Header

10.1.1. type

10.1.2. algorithm

10.2. J

10.3. payload

10.3.1. Jwt.build() will new DefauldJwtBuilder

10.3.1.1. set some information will put token

10.3.1.1.1. claims-NAME OF USER ACCESS

10.3.1.1.2. header

10.3.1.1.3. id

10.3.1.1.4. issuer

10.3.1.1.5. issuerAt

10.3.1.1.6. Expriration

10.3.1.1.7. Signwith

10.3.1.2. compact()

10.3.1.2.1. Using algorithm base64UrlEncode encode header and payload .And connect them by ".". and assign it with variable

10.3.1.2.2. Băm sữ dụng thuật toán ở header cho biết vừa gán và kèm theo privary key.Tiếp theo nó tiếp tục encode base64url

10.4. signature

10.4.1. PrivateKey - Create

10.4.1.1. FactoryKey genorate private key - factoryKey.generateKey( keySpec)

10.4.2. PublicKey - Verify signature

10.4.2.1. FactoryKey genorate private key - factoryKey.generateKey( byte[])

11. sql

11.1. Index

11.1.1. Syntax

11.1.1.1. create index name_index on table(column1.column2).

11.1.2. when

11.1.2.1. speed up sql query

11.1.2.1.1. cutting down the number of record/rows in the table that need to examined

11.1.3. kind

11.1.3.1. Unique Index.

11.1.3.1.1. not allow filed have index duplicate value . Auto apply when table have primary key

11.1.3.2. Clustered Index.

11.1.3.2.1. only one per table

11.1.3.3. NonClustered Index.

11.1.3.3.1. multi time in table

11.2. Having

11.2.1. syntax

11.2.1.1. having <column>

11.2.2. what

11.2.2.1. generate to change for Where to filter aggregate functions

11.2.2.1.1. cutting down the number of record/rows in the table that need to examined

11.2.3. rule

11.2.3.1. after group by

11.3. join

11.3.1. inner join

11.3.1.1. return records that same value between 2 table

11.3.2. left joint

11.3.2.1. generate to change for Where to filter aggregate functions

11.3.2.1.1. cutting down the number of record/rows in the table that need to examined

11.3.3. right join

11.3.3.1. after group by

11.3.4. jull join

11.3.4.1. generate to change for Where to filter aggregate functions

11.3.4.1.1. cutting down the number of record/rows in the table that need to examined

12. Aglie/Scrum

13. method

13.1. Static method can use without new object

13.1.1. Static method can controll static member