āĻāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§, āĻāĻĒāĻ¨āĻŋ āĻāĻžāĻāĻžāĻ° āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻ¨āĻĒā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ¨ā§āĻāĻžāĻ°āĻĒā§āĻ°āĻžāĻāĻ āĻĢā§āĻ°ā§āĻŽāĻāĻ¯āĻŧāĻžāĻ°ā§āĻāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤ āĻšāĻŦā§āĻ¨ āĻāĻŦāĻ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻšāĻžāĻāĻŦāĻžāĻ°āĻ¨ā§āĻ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦā§āĻ¨āĨ¤ āĻšāĻžāĻāĻŦāĻžāĻ°āĻ¨ā§āĻā§āĻ° āĻāĻĨāĻž āĻļā§āĻ¨ā§āĻ¨āĻ¨āĻŋ? āĻ
āĻĨāĻŦāĻž āĻšāĻ¯āĻŧāĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ āĻļā§āĻ¨ā§āĻā§āĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĻ¨āĻŋ? āĻ
āĻĨāĻŦāĻž āĻšāĻ¯āĻŧāĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĻā§āĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦā§āĻ¯āĻ°ā§āĻĨ? āĻ¤āĻŋāĻ¨āĻāĻŋ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĻ - āĻāĻžāĻ āĻ¨ā§āĻā§ āĻ¸ā§āĻŦāĻžāĻāĻ¤āĻŽ :) āĻšā§āĻ¯āĻžāĻ˛ā§, āĻ¸āĻŦāĻžāĻ! āĻāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§, āĻāĻŽāĻŋ āĻšāĻžāĻāĻŦāĻžāĻ°āĻ¨ā§āĻ āĻĢā§āĻ°ā§āĻŽāĻāĻ¯āĻŧāĻžāĻ°ā§āĻā§āĻ° āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻĨāĻž āĻŦāĻ˛āĻŦ āĻāĻŦāĻ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻŽāĻŋāĻ¨āĻŋ-āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ˛āĻŋāĻāĻ¤ā§ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻāĻ°āĻŦāĨ¤ āĻāĻ āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻžāĻĻā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨:
- IntelliJ IDEA āĻāĻ˛āĻāĻŋāĻŽā§āĻ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ
āĻāĻāĻŋ āĻ āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ āĻāĻ¯āĻŧā§āĻŦāĻ¸āĻžāĻāĻ āĻĨā§āĻā§ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ 30-āĻĻāĻŋāĻ¨ā§āĻ° āĻā§āĻ°āĻžāĻ¯āĻŧāĻžāĻ˛ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°ā§āĻ¨ā§ˇ - PostgreSQL - āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻ¨āĻĒā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ§ā§āĻ¨āĻŋāĻ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻāĻŽā§āĻ¨ā§āĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ (DBMS)
- āĻŽāĻžāĻā§āĻ¨ (āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ IDEA āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤)
- āĻāĻāĻā§ āĻ§ā§āĻ°ā§āĻ¯āĨ¤
āĻšāĻžāĻāĻŦāĻžāĻ°āĻ¨ā§āĻ āĻāĻŋ?
āĻāĻāĻŋ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻ¨āĻĒā§āĻ°āĻŋāĻ¯āĻŧ āĻ āĻŦāĻā§āĻā§āĻ-āĻ°āĻŋāĻ˛ā§āĻļāĻ¨āĻžāĻ˛ āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻ (ORM) āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻāĻāĻāĻŋāĨ¤ āĻāĻāĻāĻŋ āĻ āĻŦāĻā§āĻā§āĻ-āĻ°āĻŋāĻ˛ā§āĻļāĻ¨āĻžāĻ˛ āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻ āĻ¸āĻĢā§āĻāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻ āĻŦāĻā§āĻā§āĻ āĻāĻŦāĻ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻ°ā§āĻāĻ°ā§āĻĄā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻā§ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°ā§āĨ¤ āĻ āĻŦāĻļā§āĻ¯āĻ, āĻšāĻžāĻāĻŦāĻžāĻ°āĻ¨ā§āĻā§āĻ° āĻā§āĻŦ āĻŦāĻŋāĻ¸ā§āĻ¤ā§āĻ¤ āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻ°āĻ¯āĻŧā§āĻā§, āĻ¤āĻŦā§ āĻāĻŽāĻ°āĻž āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻ¸āĻšāĻ āĻĢāĻžāĻāĻļāĻ¨āĻā§āĻ˛āĻŋāĻ¤ā§ āĻĢā§āĻāĻžāĻ¸ āĻāĻ°āĻŦāĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻ˛āĻā§āĻˇā§āĻ¯ āĻšāĻ˛ āĻāĻāĻāĻŋ CRUD (āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨, āĻĒāĻĄāĻŧā§āĻ¨, āĻāĻĒāĻĄā§āĻ āĻāĻ°ā§āĻ¨, āĻŽā§āĻā§āĻ¨) āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻ¯āĻž āĻāĻ°āĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻŦā§:- āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ (āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§) āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨, āĻāĻāĻĄāĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§ āĻ¤āĻžāĻĻā§āĻ° āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°ā§āĻ¨, āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§ āĻ¤āĻžāĻĻā§āĻ° āĻĄā§āĻāĻž āĻāĻĒāĻĄā§āĻ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻĨā§āĻā§ āĻŽā§āĻā§ āĻĻāĻŋāĻ¨āĨ¤
- āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻāĻžāĻĄāĻŧāĻŋāĻ° āĻŦāĻ¸ā§āĻ¤ā§ (āĻ āĻā§) āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°ā§āĻ¨āĨ¤ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻĨā§āĻā§ āĻāĻžāĻĄāĻŧāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨, āĻāĻĒāĻĄā§āĻ āĻāĻ°ā§āĻ¨, āĻā§āĻāĻā§āĻ¨ āĻāĻŦāĻ āĻŽā§āĻā§āĻ¨āĨ¤
- āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤āĻāĻžāĻŦā§, āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋāĻā§ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻĨā§āĻā§ "āĻŽāĻžāĻ˛āĻŋāĻāĻšā§āĻ¨" āĻāĻžāĻĄāĻŧāĻŋāĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĢā§āĻ˛āĻž āĻāĻāĻŋāĻ¤ā§ˇ āĻ āĻ¨ā§āĻ¯ āĻāĻĨāĻžāĻ¯āĻŧ, āĻ¯āĻāĻ¨ āĻāĻāĻāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻāĻ¨ āĻ¸ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻžāĻĄāĻŧāĻŋāĻ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻĨā§āĻā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻ¤ā§ āĻšāĻŦā§āĨ¤
com.yourNickname.codegym
āĨ¤ āĻāĻāĻŋ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻāĻĒāĻ° āĻā§āĻ¨ āĻĒā§āĻ°āĻāĻžāĻŦ āĻĢā§āĻ˛āĻŦā§ āĻ¨āĻžāĨ¤ artifactId-āĻāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻžāĻ° āĻĒāĻāĻ¨ā§āĻĻā§āĻ° āĻ¯ā§āĻā§āĻ¨ā§ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§āĻ° āĻ¨āĻžāĻŽ āĻŦā§āĻā§ āĻ¨āĻŋāĻ¨āĨ¤ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻ°āĻžāĻāĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§. āĻļā§āĻˇ āĻ¸ā§āĻā§āĻ°āĻŋāĻ¨ā§, āĻā§āĻŦāĻ˛ āĻĒā§āĻ°ā§āĻŦā§ āĻĒā§āĻ°āĻŦā§āĻļ āĻāĻ°āĻž āĻĄā§āĻāĻž āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°ā§āĻ¨āĨ¤āĻ¸ā§āĻ¤āĻ°āĻžāĻ, āĻāĻŽāĻ°āĻž āĻĒā§āĻ°āĻāĻ˛ā§āĻĒ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻāĻ¨ āĻ¯āĻž āĻāĻ°āĻž āĻŦāĻžāĻāĻŋ āĻāĻā§ āĻ¤āĻž āĻšāĻ˛ āĻāĻŋāĻā§ āĻā§āĻĄ āĻ˛ā§āĻāĻž āĻāĻŦāĻ āĻāĻāĻŋāĻā§ āĻāĻžāĻ āĻāĻ°āĻž :) āĻĒā§āĻ°āĻĨāĻŽ āĻāĻŋāĻ¨āĻŋāĻ¸āĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻĨāĻŽā§: āĻāĻŽāĻ°āĻž āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ āĻ¯āĻž āĻāĻāĻāĻŋ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°ā§, āĻāĻŽāĻ°āĻž āĻ
āĻŦāĻļā§āĻ¯āĻ āĻāĻāĻāĻŋ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻāĻžāĻĄāĻŧāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻ¨āĻž! āĻāĻāĻžāĻ¨ āĻĨā§āĻā§ PostgreSQL āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°ā§āĻ¨ (āĻāĻŽāĻŋ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ 9 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻāĻŋ)āĨ¤ PostgreSQL āĻāĻ° āĻāĻāĻāĻŋ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ 'postgres' āĻ°āĻ¯āĻŧā§āĻā§ â āĻāĻĒāĻ¨āĻŋ āĻ¯āĻāĻ¨ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻŦā§āĻ¨ āĻ¤āĻāĻ¨ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻāĻžāĻŦāĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻā§āĻ˛ā§ āĻ¯āĻžāĻŦā§āĻ¨ āĻ¨āĻžāĨ¤ āĻāĻŽāĻ°āĻž āĻĒāĻ°ā§ āĻāĻāĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻŦā§! (āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§, āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ¤ā§ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻžāĻ°āĻžāĻĒ āĻ
āĻā§āĻ¯āĻžāĻ¸, āĻ¤āĻŦā§ āĻāĻŽāĻ°āĻž āĻāĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§ āĻāĻ˛āĻ¸āĻžāĻ°ā§āĻ° āĻāĻžāĻ°āĻŖā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻāĻŽāĻžāĻ¤ā§ āĻāĻāĻŋ āĻāĻ°āĻŦ)āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ˛āĻžāĻāĻ¨ āĻāĻŦāĻ SQL āĻā§āĻ¯āĻŧā§āĻ°āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻŦāĻ¨ā§āĻ§ā§ āĻ¨āĻž āĻšāĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻžāĻ˛ā§ āĻāĻŦāĻ° āĻāĻā§āĨ¤ IntelliJ IDEA āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻāĻāĻāĻžāĻ° āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ (IDEA āĻāĻ° āĻĄāĻžāĻ¨ āĻĢāĻ˛āĻā§, āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻā§āĻ¯āĻžāĻŦā§ āĻ
āĻŦāĻ¸ā§āĻĨāĻŋāĻ¤)āĨ¤ āĻāĻāĻāĻŋ āĻ¸āĻāĻ¯ā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§, "+" āĻā§āĻ˛āĻŋāĻ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻĄā§āĻāĻž āĻāĻ¤ā§āĻ¸ (PostgeSQL) āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨ā§ˇ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻāĻŦāĻ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻˇā§āĻ¤ā§āĻ°āĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻŖ āĻāĻ°ā§āĻ¨ (āĻ¤āĻžāĻĻā§āĻ° āĻāĻāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯ "āĻĒā§āĻ¸ā§āĻāĻā§āĻ°ā§āĻ¸") āĻāĻŦāĻ āĻĒā§āĻ¸ā§āĻāĻā§āĻ°ā§āĻāĻ¸āĻāĻŋāĻāĻāĻ˛ āĻāĻ¨āĻ¸ā§āĻāĻ˛ā§āĻļāĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¸ā§āĻ āĻāĻ°āĻž āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ˛āĻŋāĻā§āĻ¨āĨ¤ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ āĻĒā§āĻ¸ā§āĻāĻā§āĻ°ā§āĻ¸ āĻĄā§āĻ°āĻžāĻāĻāĻžāĻ° āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻ āĻĒā§āĻˇā§āĻ āĻžāĻ¯āĻŧ āĻāĻāĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨. āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻ¸āĻāĻ¯ā§āĻ āĻĒā§āĻ°āĻ¤āĻŋāĻˇā§āĻ āĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻā§ āĻ¤āĻž āĻ¯āĻžāĻāĻžāĻ āĻāĻ°āĻ¤ā§ "āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻ¸āĻāĻ¯ā§āĻ" āĻ āĻā§āĻ˛āĻŋāĻ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ "āĻ¸āĻĢāĻ˛" āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ¨ āĻ¤āĻŦā§ āĻāĻāĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨āĨ¤ āĻāĻāĻ¨ āĻāĻŽāĻ°āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻā§āĻŦāĻŋāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦāĨ¤ āĻŽā§āĻ āĻĻā§āĻāĻŋ āĻĨāĻžāĻāĻŦā§: āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻāĻŦāĻ āĻ
āĻā§āĨ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻā§āĻŦāĻŋāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ: āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯ā§ id āĻšāĻ˛ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ āĻā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻ¸āĻāĻŋāĻāĻāĻ˛-āĻ āĻĒā§āĻ°āĻžāĻāĻŽāĻžāĻ°āĻŋ āĻā§ āĻā§ āĻ¤āĻž āĻ¨āĻž āĻāĻžāĻ¨ā§āĻ¨, āĻā§āĻāĻ˛ āĻāĻ°ā§ āĻĻā§āĻā§āĻ¨āĨ¤ āĻāĻāĻž āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ. āĻ
āĻā§ āĻā§āĻŦāĻŋāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻāĻŋāĻāĻ¸: āĻ
āĻā§āĻ¸ āĻā§āĻŦāĻŋāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻāĻŋ āĻŦāĻŋāĻĻā§āĻļā§ āĻā§ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻāĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻŦāĻŋāĻ˛ āĻ˛āĻŋāĻā§āĻ āĻĒāĻ°āĻŋāĻŦā§āĻļāĻ¨ āĻāĻ°āĻž āĻšāĻŦā§. āĻāĻŽāĻŋ āĻ¸ā§āĻĒāĻžāĻ°āĻŋāĻļ āĻāĻ°āĻāĻŋ āĻ¯ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ āĻĒāĻĄāĻŧā§āĻ¨āĨ¤ āĻ¸āĻšāĻ āĻāĻ°ā§ āĻŦāĻ˛āĻ˛ā§, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻŦāĻžāĻšā§āĻ¯āĻŋāĻ āĻā§āĻŦāĻŋāĻ˛ā§āĻ° āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°ā§, āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ°āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻāĻžāĻĄāĻŧāĻŋ āĻāĻāĻĄāĻŋ = 1 āĻ¸āĻš āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻ
āĻā§āĻā§āĻ˛āĻŋāĻ° user_id āĻā§āĻˇā§āĻ¤ā§āĻ°āĻāĻŋ 1 āĻāĻ° āĻ¸āĻŽāĻžāĻ¨ āĻšāĻŦā§āĨ¤ āĻāĻāĻāĻžāĻŦā§ āĻāĻŽāĻ°āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻ¤āĻžāĻĻā§āĻ° āĻāĻžāĻĄāĻŧāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻŋāĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° autos āĻā§āĻŦāĻŋāĻ˛ā§, user_id āĻā§āĻˇā§āĻ¤ā§āĻ°āĻāĻŋ āĻŦāĻŋāĻĻā§āĻļā§ āĻā§ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°āĻŦā§āĨ¤ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻā§āĻŦāĻŋāĻ˛ā§āĻ° āĻāĻāĻĄāĻŋ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻŦā§āĨ¤ āĻ¸ā§āĻ¤āĻ°āĻžāĻ, āĻāĻŽāĻ°āĻž āĻĻā§āĻāĻŋ āĻā§āĻŦāĻŋāĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻžāĻāĻž āĻā§āĻĄ āĻĨā§āĻā§ āĻā§āĻāĻžāĻŦā§ āĻāĻāĻŋ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¤āĻž āĻŦā§āĻāĻžāĻ° āĻŦāĻžāĻāĻŋ āĻāĻā§āĨ¤ āĻāĻŽāĻ°āĻž pom.xml āĻĢāĻžāĻāĻ˛ āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°āĻŦ, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻā§āĻ˛āĻŋ āĻ
āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ (āĻŽāĻžāĻā§āĻ¨ā§ āĻ¤āĻžāĻĻā§āĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¤āĻž āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ)āĨ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻ°āĻ¨ā§āĻĨāĻžāĻāĻžāĻ° āĻā§āĻ¨ā§āĻĻā§āĻ°ā§āĻ¯āĻŧ āĻŽāĻžāĻā§āĻ¨ āĻ¸āĻāĻā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻāĻĒāĻ¨āĻŋ pom.xml-āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻā§āĻ˛āĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ˛āĻŦā§āĻ§āĨ¤ āĻāĻĒāĻ¨āĻžāĻ° pom.xml āĻāĻ° āĻŽāĻ¤ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤: āĻāĻŋāĻā§āĻ āĻāĻāĻŋāĻ˛ āĻ¨āĻ¯āĻŧ, āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻā§āĻ¨āĨ¤ PostgreSQL āĻāĻŦāĻ āĻšāĻžāĻāĻŦāĻžāĻ°āĻ¨ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻ°āĻž āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° 2āĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¤āĻž āĻ¯ā§āĻ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻāĻ¨ āĻāĻžāĻāĻž āĻā§āĻĄā§ āĻ¯āĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻāĨ¤ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻāĻŦāĻ āĻā§āĻ˛āĻžāĻ¸ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨āĨ¤ āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻāĻŋ āĻĄā§āĻāĻž āĻŽāĻĄā§āĻ˛ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨: User
āĻāĻŦāĻ Auto
āĻā§āĻ˛āĻžāĻ¸āĨ¤
package models;
import javax.persistence.*;
import java.util.ArrayList;
import java.util.List;
@Entity
@Table (name = "users")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
@Column(name = "name")
private String name;
// You can omit the Column attribute if the name property matches the column name in the table
private int age;
@OneToMany(mappedBy = "user", cascade = CascadeType.ALL, orphanRemoval = true)
private List<Auto> autos;
public User() {
}
public User(String name, int age) {
this.name = name;
this.age = age;
autos = new ArrayList<>();
}
public void addAuto(Auto auto) {
auto.setUser(this);
autos.add(auto);
}
public void removeAuto(Auto auto) {
autos.remove(auto);
}
public int getId() {
return id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public List<Auto> getAutos() {
return autos;
}
public void setAutos(List<Auto> autos) {
this.autos = autos;
}
@Override
public String toString() {
return "models.User{" +
"id=" + id +
", name='" + name + '\'' +
", age=" + age +
'}';
}
}
package models;
import javax.persistence.*;
@Entity
@Table(name = "autos")
public class Auto {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
@Column (name = "model")
private String model;
// You can omit the Column attribute if the name property matches the column name in the table
private String color;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "user_id")
private User user;
public Auto() {
}
public Auto(String model, String color) {
this.model = model;
this.color = color;
}
public int getId() {
return id;
}
public String getModel() {
return model;
}
public void setModel(String model) {
this.model = model;
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
@Override
public String toString() {
return color + " " + model;
}
}
āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻā§āĻ¨, āĻā§āĻ˛āĻžāĻ¸ā§ āĻāĻāĻā§āĻā§āĻ āĻ
āĻ¸ā§āĻĒāĻˇā§āĻ āĻā§āĻāĻž āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻ¤āĻžāĻĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻ¨āĻ¨ āĻļā§āĻ°ā§ āĻāĻ°āĻž āĻ¯āĻžāĻ. āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯, āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻā§āĻāĻž āĻšāĻ˛ @Entity. āĻāĻāĻāĻŋāĻĒāĻŋāĻĄāĻŋāĻ¯āĻŧāĻžāĻ¤ā§ āĻāĻāĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻĒāĻĄāĻŧā§āĻ¨ āĻāĻŦāĻ āĻšā§āĻĻāĻ¯āĻŧ āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻāĻŋ āĻļāĻŋāĻā§āĻ¨āĨ¤ āĻāĻāĻŋ āĻāĻŋāĻ¤ā§āĻ¤āĻŋāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋāĨ¤ āĻāĻ āĻā§āĻāĻžāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻāĻž āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻŦāĻ¸ā§āĻ¤ā§āĻā§ āĻāĻāĻāĻŋ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§ āĻŽā§āĻ¯āĻžāĻĒ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻāĻāĻŋ āĻļā§āĻ°ā§āĻŖā§ āĻāĻāĻāĻŋ āĻ¸āĻ¤ā§āĻ¤āĻž āĻšāĻ¤ā§, āĻāĻāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧāĻ¤āĻž āĻĒā§āĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§:
- āĻāĻāĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻāĻ¨āĻ¸ā§āĻā§āĻ°āĻžāĻā§āĻāĻ° āĻĨāĻžāĻāĻ¤ā§ āĻšāĻŦā§ (
public
āĻŦāĻžprotected
) - āĻāĻāĻŋ āĻ¨ā§āĻ¸ā§āĻ āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻž, āĻāĻāĻāĻŋ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻŦāĻž āĻāĻāĻāĻŋ
enum
- āĻāĻāĻŋ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž
final
āĻāĻŦāĻfinal
āĻā§āĻˇā§āĻ¤ā§āĻ°/āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž - āĻāĻāĻŋāĻ¤ā§ āĻāĻŽāĻĒāĻā§āĻˇā§ āĻāĻāĻāĻŋ @Id āĻā§āĻˇā§āĻ¤ā§āĻ° āĻĨāĻžāĻāĻ¤ā§ āĻšāĻŦā§āĨ¤
- āĻāĻāĻŋāĻ¤ā§ āĻ -āĻāĻžāĻ˛āĻŋ āĻāĻ¨āĻ¸ā§āĻā§āĻ°āĻžāĻā§āĻāĻ° āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§
- āĻāĻāĻŋ āĻāĻ¤ā§āĻ¤āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻ¸ā§āĻ¤ā§āĻ°ā§ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻāĻŦāĻ āĻāĻ¤ā§āĻ¤āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ°ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
- āĻāĻāĻŋāĻ¤ā§ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŦāĻ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
User
āĻā§āĻ˛āĻžāĻ¸āĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻā§āĻŦāĻŋāĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻā§āĻŦ āĻŽāĻŋāĻ˛āĨ¤ āĻāĻāĻž āĻāĻā§ id
, name
, āĻāĻŦāĻage
āĻā§āĻˇā§āĻ¤ā§āĻ° āĻ¤āĻžāĻĻā§āĻ° āĻāĻĒāĻ°ā§ āĻ
āĻŦāĻ¸ā§āĻĨāĻŋāĻ¤ āĻā§āĻāĻžāĻā§āĻ˛āĻŋāĻ° āĻā§āĻ¨ āĻŦāĻŋāĻļā§āĻˇ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ¨ā§āĻ: āĻāĻāĻž āĻ¸ā§āĻĒāĻˇā§āĻ āĻ¯ā§ @Id āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻ¯ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°āĻāĻŋ āĻāĻ āĻļā§āĻ°ā§āĻŖā§āĻ° āĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻļāĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§āĨ¤ āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻāĻĒāĻ°ā§ @āĻā§āĻŦāĻŋāĻ˛ āĻā§āĻāĻžāĻāĻŋ āĻā§āĻŦāĻŋāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻŦāĻ¸ā§āĻ¤ā§āĻā§āĻ˛āĻŋ āĻ˛ā§āĻāĻž āĻāĻā§āĨ¤ āĻŦāĻ¯āĻŧāĻ¸ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĻ° āĻāĻĒāĻ°ā§ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯āĻāĻŋ āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨: āĻ¯āĻĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĻ° āĻ¨āĻžāĻŽ āĻā§āĻŦāĻŋāĻ˛ā§āĻ° āĻ¨āĻžāĻŽā§āĻ° āĻŽāĻ¤ā§ āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻĒāĻ¨āĻŋ @āĻāĻ˛āĻžāĻŽ āĻā§āĻāĻžāĻāĻŋ āĻŦāĻžāĻĻ āĻĻāĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻžāĻ āĻāĻ°āĻŦā§āĨ¤ āĻ§āĻ¨ā§āĻ°ā§āĻŦāĻ¨ā§āĻ§āĻ¨ā§āĻ¤ā§ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ āĻ
āĻāĻļā§āĻ° āĻāĻ¨ā§āĻ¯ ("āĻā§āĻļāĻ˛ = GenerationType.IDENTITY"): āĻāĻāĻĄāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻā§āĻļāĻ˛ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¤āĻžāĻĻā§āĻ° Google āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻŦāĻŋāĻ°āĻā§āĻ¤ āĻāĻ°āĻžāĻ° āĻĻāĻ°āĻāĻžāĻ° āĻ¨ā§āĻāĨ¤ āĻŽā§āĻ˛ āĻŦāĻŋāĻˇāĻ¯āĻŧ āĻšāĻ˛ āĻāĻŽāĻžāĻĻā§āĻ° āĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻĄāĻŋāĻ° āĻŽāĻžāĻ¨ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻ¤ā§āĻ°āĻŋ āĻšāĻŦā§āĨ¤ āĻ¤āĻĻāĻ¨ā§āĻ¸āĻžāĻ°ā§, āĻāĻāĻĄāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ¨āĻ āĻ¸ā§āĻāĻžāĻ° āĻ¨ā§āĻ āĻāĻŦāĻ āĻāĻŽāĻ°āĻž āĻāĻāĻŋ āĻāĻ¨āĻ¸ā§āĻā§āĻ°āĻžāĻā§āĻāĻ°ā§āĻ āĻ¸ā§āĻ āĻāĻ°āĻŋ āĻ¨āĻžāĨ¤ āĻ¯āĻžāĻšā§āĻ,User
āĻā§āĻ˛āĻžāĻ¸ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄ āĻāĻāĻ āĻ¨āĻž. āĻāĻāĻž āĻāĻžāĻĄāĻŧāĻŋāĻ° āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻā§! @OneToMany āĻā§āĻāĻžāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻāĻĒāĻ°ā§ āĻā§āĻ˛ā§ āĻāĻā§āĨ¤ āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛ āĻ¯ā§ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻāĻžāĻĄāĻŧāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻļā§āĻ°ā§āĻŖā§āĻ° āĻāĻāĻ āĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽāĻŋāĻ˛āĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ "mappedBy" āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°āĻā§ āĻŦā§āĻāĻžāĻ¯āĻŧ Auto
āĨ¤ āĻ¸ā§āĻ¤āĻ°āĻžāĻ, āĻāĻžāĻĄāĻŧāĻŋ āĻāĻŦāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ°āĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤āĨ¤ āĻ
āĻ°āĻĢāĻžāĻ¨ āĻ°āĻŋāĻŽā§āĻāĻžāĻ˛ āĻāĻ˛āĻŋāĻŽā§āĻ¨ā§āĻ āĻāĻā§āĻāĻŋāĻ¤ āĻāĻ°ā§ āĻ¯ā§ āĻ°āĻŋāĻŽā§āĻ āĻ
āĻĒāĻžāĻ°ā§āĻļāĻ¨āĻāĻŋ āĻāĻŽāĻ¨ āĻ¸āĻ¤ā§āĻ¤āĻžāĻā§āĻ˛āĻŋāĻ¤ā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻŦā§ āĻ¯ā§āĻā§āĻ˛āĻŋāĻ° āĻāĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ āĻ¨ā§āĻā§ˇ āĻāĻŽāĻ°āĻž āĻ¯āĻĻāĻŋ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻĨā§āĻā§ āĻā§āĻ¨āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻŋ, āĻ¤āĻŦā§ āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻā§āĻ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻžāĻĄāĻŧāĻŋāĻ āĻŽā§āĻā§ āĻ¯āĻžāĻŦā§āĨ¤ āĻā§āĻ°ā§, āĻŽāĻ§ā§āĻ¯ā§Auto
āĻā§āĻ˛āĻžāĻ¸, āĻāĻĒāĻ¨āĻŋ @ManyToOne āĻā§āĻāĻž (āĻāĻāĻāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻ
āĻ¨ā§āĻ āĻ
āĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻā§āĻāĻ¤āĻŋāĻĒā§āĻ°ā§āĻŖ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§) āĻāĻŦāĻ @JoinColumn āĻā§āĻāĻž āĻ¸āĻš āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°āĻāĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻŦā§āĻ¨āĨ¤ āĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻ¯ā§ āĻ
āĻā§āĻ¸ āĻā§āĻŦāĻŋāĻ˛ā§āĻ° āĻā§āĻ¨ āĻāĻ˛āĻžāĻŽāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻā§āĻŦāĻŋāĻ˛ā§āĻ° āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ (āĻ
āĻ°ā§āĻĨāĻžā§ āĻŦāĻŋāĻĻā§āĻļā§ āĻā§ āĻ¯āĻž āĻāĻŽāĻ°āĻž āĻāĻā§ āĻŦāĻ˛ā§āĻāĻŋ)āĨ¤ āĻĄā§āĻāĻž āĻŽāĻĄā§āĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻĒāĻ°, āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻĄā§āĻāĻž āĻĻāĻŋāĻ¯āĻŧā§ āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ˛āĻžāĻĒ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻā§ āĻļā§āĻāĻžāĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻ¸ā§āĻā§āĨ¤ āĻāĻ¸ā§āĻ¨ āĻšāĻžāĻāĻŦāĻžāĻ°āĻ¨ā§āĻ āĻ¸ā§āĻļāĻ¨āĻĢā§āĻ¯āĻžāĻā§āĻāĻ°āĻŋ āĻāĻāĻāĻŋāĻ˛ āĻāĻāĻāĻŋāĻ˛āĻŋāĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°āĻŋāĨ¤ āĻāĻāĻŋāĻ° āĻāĻāĻāĻŋ āĻŽāĻžāĻ¤ā§āĻ° āĻāĻžāĻ āĻāĻā§ - āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻžāĻĻā§āĻ° āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ¸ā§āĻļāĻ¨ āĻĢā§āĻ¯āĻžāĻā§āĻāĻ°āĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž (āĻĢā§āĻ¯āĻžāĻā§āĻāĻ°āĻŋ āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨āĻā§ āĻšā§āĻ¯āĻžāĻ˛ā§ āĻŦāĻ˛ā§āĻ¨!) āĻāĻāĻž āĻāĻŋāĻāĻžāĻŦā§ āĻ
āĻ¨ā§āĻ¯ āĻāĻŋāĻā§ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ā§ āĻ¨āĻž.
package utils;
import models.Auto;
import models.User;
import org.hibernate.SessionFactory;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
public class HibernateSessionFactoryUtil {
private static SessionFactory sessionFactory;
private HibernateSessionFactoryUtil() {}
public static SessionFactory getSessionFactory() {
if (sessionFactory == null) {
try {
Configuration configuration = new Configuration().configure();
configuration.addAnnotatedClass(User.class);
configuration.addAnnotatedClass(Auto.class);
StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties());
sessionFactory = configuration.buildSessionFactory(builder.build());
} catch (Exception e) {
System.out.println("ĐŅĐēĐģŅŅĐĩĐŊиĐĩ!" + e);
}
}
return sessionFactory;
}
}
āĻāĻ āĻā§āĻ˛āĻžāĻ¸ā§, āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻ
āĻŦāĻā§āĻā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋ, āĻāĻŦāĻ āĻāĻāĻŋāĻā§ āĻ¸ā§āĻ āĻā§āĻ˛āĻžāĻ¸āĻā§āĻ˛āĻŋ āĻĒāĻžāĻ¸ āĻāĻ°āĻŋ āĻ¯āĻž āĻāĻāĻŋāĻā§ āĻ¸āĻ¤ā§āĻ¤āĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻž āĻāĻāĻŋāĻ¤: User
āĻāĻŦāĻ Auto
āĨ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻŽāĻ¨ā§āĻ¯ā§āĻ āĻĻāĻŋāĻ¨ configuration.getProperties()
āĨ¤ āĻ
āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻāĻŋ āĻāĻā§? āĻāĻ°āĻž āĻā§āĻĨāĻž āĻĨā§āĻā§ āĻāĻ¸ā§? āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻšāĻ˛ āĻŦāĻŋāĻļā§āĻˇ hibernate.cfg.xml āĻĢāĻžāĻāĻ˛ā§ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ āĻšāĻžāĻāĻŦāĻžāĻ°āĻ¨ā§āĻ āĻ¸ā§āĻāĻŋāĻāĻ¸āĨ¤ Hibernate.cfg.xml āĻāĻāĻžāĻ¨ā§ āĻĒāĻĄāĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§: new Configuration().configure();
āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻā§āĻ¨, āĻāĻ¤ā§ āĻŦāĻŋāĻļā§āĻˇ āĻāĻŋāĻā§ āĻ¨ā§āĻ: āĻāĻ¤ā§ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ āĻ°āĻ¯āĻŧā§āĻā§, āĻ¸ā§āĻāĻ¸āĻžāĻĨā§ show_sql āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ¯āĻžāĻ¤ā§ āĻšāĻžāĻāĻŦāĻžāĻ°āĻ¨ā§āĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻŋāĻ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ sql āĻĒā§āĻ°āĻļā§āĻ¨ āĻāĻ¨āĻ¸ā§āĻ˛ā§ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻāĻāĻāĻžāĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻŦā§āĻ¨ āĻ¯ā§ āĻā§āĻ¨ āĻŽā§āĻšā§āĻ°ā§āĻ¤ā§ āĻšāĻžāĻāĻŦāĻžāĻ°āĻ¨ā§āĻ āĻ āĻŋāĻ āĻāĻŋ āĻāĻ°āĻā§, "āĻāĻžāĻĻā§" āĻāĻ° āĻā§āĻ¨ā§ āĻ
āĻ¨ā§āĻā§āĻ¤āĻŋ āĻĻā§āĻ° āĻāĻ°ā§āĨ¤ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻŽāĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨UserDAO
āĻā§āĻ˛āĻžāĻ¸ āĻ¸āĻ°ā§āĻŦā§āĻ¤ā§āĻ¤āĻŽ āĻ
āĻ¨ā§āĻļā§āĻ˛āĻ¨ āĻšāĻ˛ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻāĻ°āĻž - āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ UserDAO
āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻāĻŦāĻ UserDAOImpl
āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨, āĻ¤āĻŦā§ āĻā§āĻĄā§āĻ° āĻĒāĻ°āĻŋāĻŽāĻžāĻŖ āĻāĻŽāĻžāĻ¤ā§ āĻāĻŽāĻŋ āĻāĻāĻŋ āĻāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻŦāĨ¤ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§ āĻāĻāĻŋ āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻž! DAO (āĻĄā§āĻāĻž āĻ
ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻ
āĻŦāĻā§āĻā§āĻ) āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻāĻāĨ¤ āĻ§āĻžāĻ°āĻŖāĻžāĻāĻŋ āĻ¸āĻšāĻ - āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĄā§āĻāĻž āĻ
ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĻāĻžāĻ¯āĻŧā§ āĻāĻāĻāĻŋ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¸ā§āĻ¤āĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨, āĻāĻ° āĻŦā§āĻļāĻŋ āĻāĻŋāĻā§ āĻ¨āĻ¯āĻŧāĨ¤ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻĨā§āĻā§ āĻĄā§āĻāĻž āĻāĻ¨ā§āĻ¨, āĻĄā§āĻāĻž āĻāĻĒāĻĄā§āĻ āĻāĻ°ā§āĻ¨, āĻĄā§āĻāĻž āĻŽā§āĻā§āĻ¨ â āĻāĻāĻžāĻāĨ¤ DAO āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ āĻ
āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻā§ āĻā§āĻ°āĻŽāĻžāĻāĻ¤ āĻĄā§āĻāĻž āĻ
ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻ
āĻŦāĻā§āĻā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§āĻ¨āĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° UserDao
āĻā§āĻ˛āĻžāĻ¸ āĻāĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§? āĻ āĻŋāĻ āĻāĻā§, āĻ¸āĻŽāĻ¸ā§āĻ¤ DAO-āĻāĻ° āĻŽāĻ¤ā§, āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĄā§āĻāĻž āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻžāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻāĻĄāĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻāĻāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻā§āĻāĻā§āĻ¨, āĻ¤āĻžāĻ° āĻĄā§āĻāĻž āĻāĻĒāĻĄā§āĻ āĻāĻ°ā§āĻ¨, āĻāĻāĻŋ āĻŽā§āĻā§āĻ¨, āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻĨā§āĻā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒāĻžāĻ¨, āĻŦāĻž āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§ āĻāĻāĻāĻ¨ āĻ¨āĻ¤ā§āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§āĻ¨ - āĻāĻāĻŋ āĻ¤āĻžāĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻžāĻ° āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ¤āĻžāĨ¤
package dao;
import models.Auto;
import models.User;
import org.hibernate.Session;
import org.hibernate.Transaction;
import utils.HibernateSessionFactoryUtil;
import java.util.List;
public class UserDao {
public User findById(int id) {
return HibernateSessionFactoryUtil.getSessionFactory().openSession().get(User.class, id);
}
public void save(User user) {
Session session = HibernateSessionFactoryUtil.getSessionFactory().openSession();
Transaction tx1 = session.beginTransaction();
session.save(user);
tx1.commit();
session.close();
}
public void update(User user) {
Session session = HibernateSessionFactoryUtil.getSessionFactory().openSession();
Transaction tx1 = session.beginTransaction();
session.update(user);
tx1.commit();
session.close();
}
public void delete(User user) {
Session session = HibernateSessionFactoryUtil.getSessionFactory().openSession();
Transaction tx1 = session.beginTransaction();
session.delete(user);
tx1.commit();
session.close();
}
public Auto findAutoById(int id) {
return HibernateSessionFactoryUtil.getSessionFactory().openSession().get(Auto.class, id);
}
public List<User> findAll() {
List<User> users = (List<User>) HibernateSessionFactoryUtil.getSessionFactory().openSession().createQuery("From User").list();
return users;
}
}
UserDao
āĻāĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻā§āĻ˛āĻŋ āĻāĻā§ āĻ
āĻĒāĻ°ā§āĻ° āĻ
āĻ¨ā§āĻ°ā§āĻĒāĨ¤ āĻ¤āĻžāĻĻā§āĻ° āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§, āĻāĻŽāĻ°āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸ā§āĻļāĻ¨ āĻĢā§āĻ¯āĻžāĻā§āĻāĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻļāĻ¨ āĻ
āĻŦāĻā§āĻā§āĻ (āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻ¸āĻāĻ¯ā§āĻ āĻ¸ā§āĻļāĻ¨) āĻĒāĻžāĻ, āĻāĻ āĻ¸ā§āĻļāĻ¨ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻāĻāĻ āĻ˛ā§āĻ¨āĻĻā§āĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋ, āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻĄā§āĻāĻž āĻŽā§āĻ¯āĻžāĻ¨āĻŋāĻĒā§āĻ˛ā§āĻļāĻ¨ āĻ¸āĻā§āĻāĻžāĻ˛āĻ¨ āĻāĻ°āĻŋ, āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§ āĻ˛ā§āĻ¨āĻĻā§āĻ¨ā§āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻ¸ā§āĻļāĻ¨āĻāĻŋ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻŋāĨ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻā§āĻ°āĻžāĻ, āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻā§āĻ¨, āĻŦā§āĻļ āĻ¸āĻšāĻāĨ¤ DAO āĻšāĻ˛ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻŦā§āĻĻāĻ¨ā§āĻ° "āĻšā§āĻĻāĻ¯āĻŧ"āĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻŽāĻ°āĻž āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻāĻāĻāĻŋ DAO āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦ āĻ¨āĻž āĻāĻŦāĻ āĻāĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻā§āĻ˛āĻŋāĻā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻāĻ˛ āĻāĻ°āĻŦ āĻ¨āĻž main()
āĨ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻā§āĻ˛āĻžāĻ¸ā§ āĻ¸āĻ°āĻžāĻ¨ā§ āĻšāĻŦā§ UserService
āĨ¤
package services;
import dao.UserDao;
import models.Auto;
import models.User;
import java.util.List;
public class UserService {
private UserDao usersDao = new UserDao();
public UserService() {
}
public User findUser(int id) {
return usersDao.findById(id);
}
public void saveUser(User user) {
usersDao.save(user);
}
public void deleteUser(User user) {
usersDao.delete(user);
}
public void updateUser(User user) {
usersDao.update(user);
}
public List<User> findAllUsers() {
return usersDao.findAll();
}
public Auto findAutoById(int id) {
return usersDao.findAutoById(id);
}
}
āĻāĻāĻāĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻšāĻ˛ āĻāĻāĻāĻŋ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻĄā§āĻāĻž āĻ¸ā§āĻ¤āĻ° āĻ¯āĻž āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ¯āĻŧāĻŋāĻ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĻāĻžāĻ¯āĻŧā§āĨ¤ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻ¯āĻĻāĻŋ āĻāĻŋāĻā§ āĻ§āĻ°āĻŖā§āĻ° āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ¯āĻŧāĻŋāĻ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ¯āĻŧ āĻ¤āĻŦā§ āĻāĻāĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻžāĻā§āĻ˛āĻŋāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¤āĻž āĻāĻ°ā§āĨ¤ āĻāĻāĻāĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻāĻāĻāĻŋ āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§ UserDao
āĻāĻŦāĻ āĻ¤āĻžāĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ DAO āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻā§ āĻāĻ˛ āĻāĻ°ā§āĨ¤ āĻāĻāĻž āĻŽāĻ¨ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯ā§ āĻāĻŽāĻ°āĻž āĻāĻāĻžāĻ¨ā§ āĻĢāĻžāĻāĻļāĻ¨ āĻĄā§āĻĒā§āĻ˛āĻŋāĻā§āĻ āĻāĻ°āĻāĻŋ (āĻā§āĻ¨ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ DAO āĻ
āĻŦāĻā§āĻā§āĻ āĻĨā§āĻā§ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻā§āĻ˛āĻŋāĻā§ āĻāĻ˛ āĻāĻ°āĻŦ āĻ¨āĻž?), āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĒā§āĻ°āĻā§āĻ° āĻ
āĻŦāĻā§āĻā§āĻ āĻāĻŦāĻ āĻāĻāĻŋāĻ˛ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ¸āĻš, āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋāĻā§ āĻ˛ā§āĻ¯āĻŧāĻžāĻ° āĻāĻ°āĻž āĻŦāĻŋāĻļāĻžāĻ˛ āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ (āĻāĻāĻŋ āĻāĻ°āĻž āĻāĻžāĻ˛ āĻ
āĻā§āĻ¯āĻžāĻ¸ - āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§ āĻāĻāĻŋ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻāĻŦāĻ "āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¸ā§āĻ¤āĻ°" āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻĒāĻĄāĻŧā§āĻ¨)āĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻžāĻ° āĻ¸āĻšāĻ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻāĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ-āĻŦāĻŋāĻļā§āĻŦā§āĻ° āĻĒā§āĻ°āĻāĻ˛ā§āĻĒāĻā§āĻ˛āĻŋāĻ¤ā§ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻāĻāĻžāĻ§āĻŋāĻ āĻ˛āĻžāĻāĻ¨ā§āĻ° āĻā§āĻĄ āĻĨāĻžāĻā§ :) āĻāĻāĻ¨ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻā§ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¯āĻž āĻ¯āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ¤āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻā§ āĻ°āĻ¯āĻŧā§āĻā§! āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ main()
, āĻāĻ¸ā§āĻ¨ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻāĻŦāĻ āĻ¤āĻžāĻ° āĻāĻžāĻĄāĻŧāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋ, āĻāĻāĻāĻŋāĻā§ āĻ
āĻ¨ā§āĻ¯āĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻ¸ā§āĻā§āĻ˛āĻŋāĻā§ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻŋāĨ¤
import models.Auto;
import models.User;
import services.UserService;
import java.sql.SQLException;
public class Main {
public static void main(String[] args) throws SQLException {
UserService userService = new UserService();
User user = new User ("Jenny", 26);
userService.saveUser(user);
Auto ferrari = new Auto("Ferrari", "red");
ferrari.setUser(user);
user.addAuto(ferrari);
Auto ford = new Auto("Ford", "black");
ford.setUser(user);
user.addAuto(ford);
userService.updateUser(user);
}
}
āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻā§āĻ¨, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻā§āĻŦāĻŋāĻ˛ā§āĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻ°ā§āĻāĻ°ā§āĻĄ āĻ°āĻ¯āĻŧā§āĻā§ āĻāĻŦāĻ āĻ
āĻā§ āĻā§āĻŦāĻŋāĻ˛ā§āĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻ°ā§āĻāĻ°ā§āĻĄ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻ¸ā§āĻ¨ āĻāĻŽāĻžāĻĻā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻ¨āĻžāĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻŋāĨ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻā§āĻŦāĻŋāĻ˛ āĻ¸āĻžāĻĢ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻā§āĻĄāĻāĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°ā§āĻ¨
import models.Auto;
import models.User;
import services.UserService;
import java.sql.SQLException;
public class Main {
public static void main(String[] args) throws SQLException {
UserService userService = new UserService();
User user = new User ("Jenny", 26);
userService.saveUser(user);
Auto ferrari = new Auto("Ferrari", "red");
user.addAuto(ferrari);
Auto ford = new Auto("Ford", "black");
ford.setUser(user);
user.addAuto(ford);
userService.updateUser(user);
user.setName ("Benny");
userService.updateUser(user);
}
}
āĻāĻāĻž āĻāĻžāĻ āĻāĻ°ā§! āĻāĻĒāĻ¨āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻ˛ā§ āĻāĻŋ āĻšāĻŦā§? āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻā§āĻŦāĻŋāĻ˛ āĻ¸āĻžāĻĢ āĻāĻ°ā§āĻ¨ (āĻ
āĻā§āĻ¸ āĻ¨āĻŋāĻā§āĻ āĻ¸āĻžāĻĢ āĻāĻ°āĻŦā§) āĻāĻŦāĻ āĻā§āĻĄāĻāĻŋ āĻāĻžāĻ˛āĻžāĻ¨
import models.Auto;
import models.User;
import services.UserService;
import java.sql.SQLException;
public class Main {
public static void main(String[] args) throws SQLException {
UserService userService = new UserService();
User user = new User ("Jenny", 26);
userService.saveUser(user);
Auto ferrari = new Auto("Ferrari", "red");
user.addAuto(ferrari);
Auto ford = new Auto("Ford", "black");
ford.setUser(user);
user.addAuto(ford);
userService.updateUser(user);
user.setName ("Benny");
userService.updateUser(user);
userService.deleteUser(user);
}
}
āĻāĻŦāĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻŦāĻŋāĻ˛āĻā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻžāĻ˛āĻŋ (āĻāĻ¨āĻ¸ā§āĻ˛ā§ āĻŽāĻ¨ā§āĻ¯ā§āĻ āĻĻāĻŋāĻ¨ â āĻšāĻžāĻāĻŦāĻžāĻ°āĻ¨ā§āĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻŋāĻ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ
āĻ¨ā§āĻ°ā§āĻ§ āĻ¸ā§āĻāĻžāĻ¨ā§ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻŦā§)āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĢāĻžāĻāĻļāĻ¨ āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻžāĻĄāĻŧāĻŋ āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻāĻāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨, āĻāĻāĻŋ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§āĻ¨, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻāĻāĻĄāĻŋāĻāĻŋ āĻĻā§āĻā§āĻ¨ āĻāĻŦāĻ āĻāĻ āĻāĻāĻĄāĻŋāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĻ¨main()
āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻĨā§āĻā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻā§ āĻāĻ¨āĻžāĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻāĻŦāĻ āĻāĻ¨āĻ¸ā§āĻ˛ā§ āĻ¤āĻžāĻ° āĻāĻžāĻĄāĻŧāĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻāĻ°āĻžāĨ¤ āĻ
āĻŦāĻļā§āĻ¯āĻ, āĻāĻŽāĻ°āĻž āĻšāĻžāĻāĻŦāĻžāĻ°āĻ¨ā§āĻā§āĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻžāĻ° āĻāĻāĻāĻŋ āĻā§āĻ āĻ
āĻāĻļ āĻĻā§āĻā§āĻāĻŋāĨ¤ āĻāĻ° āĻā§āĻˇāĻŽāĻ¤āĻžāĻā§āĻ˛āĻŋ āĻā§āĻŦ āĻŦāĻŋāĻ¸ā§āĻ¤ā§āĻ¤, āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻžāĻāĻž āĻĄā§āĻā§āĻ˛āĻĒāĻŽā§āĻ¨ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĻā§āĻ°ā§āĻāĻĻāĻŋāĻ¨ āĻ§āĻ°ā§ āĻāĻāĻāĻŋ āĻāĻĻāĻ°ā§āĻļ āĻļāĻŋāĻ˛ā§āĻĒ āĻ¸āĻ°āĻā§āĻāĻžāĻŽāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤āĻāĻžāĻŦā§ āĻ
āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻŦā§ āĻāĻŽāĻŋ "āĻāĻžāĻāĻž āĻĒāĻžāĻ°āĻ¸āĻŋāĻ¸ā§āĻā§āĻ¨ā§āĻ¸ API āĻāĻŦāĻ āĻšāĻžāĻāĻŦāĻžāĻ°āĻ¨ā§āĻ" āĻŦāĻāĻāĻŋ āĻ¸ā§āĻĒāĻžāĻ°āĻŋāĻļ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĨ¤ āĻāĻŽāĻŋ āĻāĻā§āĻ° āĻāĻāĻāĻŋ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§ āĻĒāĻ°ā§āĻ¯āĻžāĻ˛ā§āĻāĻ¨āĻž. āĻāĻŽāĻŋ āĻāĻļāĻž āĻāĻ°āĻŋ āĻāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻāĻŋ āĻĒāĻžāĻ āĻāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻĒāĻ¨āĻžāĻ° āĻ¯āĻĻāĻŋ āĻĒā§āĻ°āĻļā§āĻ¨ āĻĨāĻžāĻā§, āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ā§ āĻ¤āĻžāĻĻā§āĻ° āĻāĻŋāĻā§āĻāĻžāĻ¸āĻž āĻāĻ°ā§āĻ¨. āĻāĻŽāĻŋ āĻāĻ¤ā§āĻ¤āĻ° āĻĻāĻŋāĻ¤ā§ āĻā§āĻļāĻŋ āĻšāĻŦ :) āĻāĻāĻžāĻĄāĻŧāĻžāĻ, "āĻ˛āĻžāĻāĻ" āĻĒā§āĻ¸ā§āĻ āĻāĻ°ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻ¯ā§āĻāĻŋāĻ¤āĻžāĻ¯āĻŧ āĻ˛ā§āĻāĻāĻā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°āĻ¤ā§ āĻā§āĻ˛āĻŦā§āĻ¨ āĻ¨āĻžāĨ¤ āĻ
āĻĨāĻŦāĻž āĻāĻ°āĻ āĻāĻžāĻ˛ - "āĻāĻāĻŋ āĻāĻžāĻ˛ā§āĻŦāĻžāĻ¸āĻŋ" :) āĻāĻĒāĻ¨āĻžāĻ° āĻĒāĻĄāĻŧāĻžāĻļā§āĻ¨āĻžāĻ¯āĻŧ āĻ¸ā§āĻāĻžāĻā§āĻ¯ āĻāĻžāĻŽāĻ¨āĻž āĻāĻ°āĻāĻŋ!