18
Корпоративные приложения Бабичев А.А.

Proekt raschetnogo tsentra_zh_k_kh

Embed Size (px)

Citation preview

Корпоративные приложения

Бабичев А.А.

Корпоративное приложение

Общая схема

Взаимодействие с другими структурами

Расчетный центр

Поставщик коммунальных

услуг

Потребители услуг ЖКХ

Центр приема платежей

Управляющая организация

Орган исполнительной

власти муниципального

образования

Орган соцзащиты

Диаграмма прецедентов

Расчет и оплата услуг ЖКХ (ARIS)

Расчет и оплата услуг ЖКХ (ARIS)

Рынок ПО

«банковский»

Ставим из коробки или

Сервер приложений

Выбор фраемворков

package ru.marinecollege.erc.entity.objects;import ru.marinecollege.erc.entity.subjects.Owner;import javax.persistence.*;@Entity@Table(name = "ClientAccount")@NamedQueries(value = { @NamedQuery(name = "ClientAccount.getAll", query = "select o from ClientAccount o"),})public class ClientAccount { @Id @GeneratedValue(strategy= GenerationType.IDENTITY) @Column(name = "id_Account") int idAccount; @ManyToOne @JoinColumn(name = "id_Owner") Owner owner; @ManyToOne @JoinColumn(name = "id_Room") Room room;

//getters and setters…}

Пример класса сущности

Пример Stateless beanpackage ru.marinecollege.erc.dao.impl;import ru.marinecollege.erc.dao.ClientAccountService;import ru.marinecollege.erc.entity.objects.ClientAccount;import ru.test.entity.Emp;import javax.ejb.Stateless;import javax.persistence.EntityManager;import javax.persistence.PersistenceContext;import java.util.List;

@Statelesspublic class ClientAccountServiceImpl implements ClientAccountService {

@PersistenceContext(unitName = "ModelXA") private EntityManager emXA;

@Override public List<ClientAccount> getAll(){ return emXA.createNamedQuery("ClientAccount.getAll").getResultList(); }

@Override public ClientAccount get(int idAccount) { return emXA.find(ClientAccount.class, idAccount); }}