Online Application Naming Rules

1. Application

An application unit is divided into units where the management authority differs and where function calls between applications can be minimized. Applications are created through the 'Bxm Application' menu in Studio.

The examples in this chapter are based on Bxm standard sample code, and can be flexibly changed depending on the project situation.

Application naming
Classification Description

Composition

L1 code + L2 code + L3 code

Example of application

BxmDftSmp

Basic principle

  1. Application names follow the notation below.

    Capitalize the first character of the L1, L2, L3 codes

    Use lowercase for the remaining characters

  2. Since application names must not be duplicated, they must be written so that they are unique across all business.

2. Service

Services are created through the 'Service Class' menu in Studio, and the Service class name and Service name are written as follows.

Classification Description

Package - Composition

L1 code + . + L2 code + . + L3 code + . + online + . + service

Package - Example

bxm.dft.smp.online.service

Package - Basic principle

  • Package names are written entirely in lowercase.

  • Classifications are separated by ".".

  • The last segment of the Package is written as service.

Class - Composition

S + L3 code + 4-digit screen number (unique number) + 1-character Service classification (alphabet)

Class - Example

SSMP1001A, SSMP1002S

Class - Basic principle

  • It consists of the symbol 'S' meaning Service, 3-character L3 code, and 4-digit screen number.

  • Service names are written entirely in uppercase.

  • The Service class includes the @BxmService annotation.

  • The @BxmService annotation has a Service name. The Service name is automatically generated when created through the Service wizard, and generally the Service name and class name are identical.

  • Since Service names must not be duplicated within an application, they must have unique names.

  • Service classification refers to the operational classification of the Service.

    A : General Service

    S : Inquiry Service

  • The file extension is java.

Class - Additional information

  • Additional information is entered using the @BxmCategory annotation.

  • @BxmCategory must be written as a required item.

  • Additional information is as follows.

    1. logicalName: Enter the logical name of the Service.

Class - Example

@BxmService("SMP1001A") /* Service name */
@BxmCategory(logicalName = "Customer Management Service")
public class SMP1001A { /* Class name */
    ... ...
}

Operation - Composition

Lowercase Service name + 3-digit serial number

Operation - Example

ssmp1001a001

Operation - Basic principle

  • Methods of the Service class include the @BxmServiceOperation annotation.

  • The @BxmServiceOperation annotation has a Service operation name.

  • Service operation names are written using the lowercase Service name, Service classification, and a 3-digit serial number.

  • Multiple Service operations can exist in a Service.

  • The method name is identical to the Service operation name.

  • Only one IO must be used for input IO.

  • Only one IO must be used for output IO.

Operation - Additional information

  • Additional information is entered using the @BxmCategory annotation.

  • @BxmCategory must be written as a required item.

  • Additional information is as follows.

    1. logicalName: Enter the logical name of the Service operation.

Operation - Example

@BxmServiceOperation("smp1001a001")
@BxmCategory(logicalName="Customer Information Inquiry")
public SMP1001A001OutDto smp1001a001(SMP1001A001InDto input) throws DefaultApplicationException {
    ... ...
}

3. Bean

In the framework, BC (business component) is used as a Bean and is defined with the @BxmBean annotation. BCs are created through the 'Bean Class' menu in Studio, and BC names are written as follows.

Classification Description

Package - Composition

L1 code + . + L2 code + . + L3 code + . + online or batch + . + bean

Package - Example

bxm.dft.smp.online.bean

Package - Basic principle

  • Package names are written entirely in lowercase.

  • Classifications are separated by ".".

  • The last segment of the Package is written as bean.

Class - Composition

M + L3 code + (standard word)* + (2-digit serial number)?

Class - Example

MSmpEmpInfMng, MSmpEmpInfMng01

Class - Basic principle

  • It consists of the symbol 'M' meaning Module, a 3-character L3 code, and a combination of English abbreviations of standard words.

  • When there are many Bean methods and separation is needed, assign a 2-digit serial number.

  • The first letter of the L3 code is written in uppercase and the rest in lowercase.

  • The Bean includes the @BxmBean annotation.

  • The file extension is java.

Class - Additional information

  • Additional information is entered using the @BxmCategory annotation.

  • @BxmCategory must be written as a required item.

  • Additional information is as follows.

    1. logicalName: Enter the logical name of the Bean.

Class - Example

@BxmBean
@BxmCategory(logicalName = "Sample Employee Information Management")
public class MSmpEmpInfMng {
    ... ...
}

Method - Composition

Method prefix + (standard word)*

Method - Example

getEmpInf - Gets sample employee information.

addEmpInf - Adds sample employee information.

Method - Basic principle

  • Method prefixes are written with reference to the Method Prefix chapter. Select the prefix corresponding to the method behavior.

  • Standard words use combinations of English abbreviations of standard words defined in the meta-system.

  • Write no more than 10 Bean methods in a single Bean.

  • Do not write too much code in a single Bean method.

Method - Additional information

  • Additional information is entered using the @BxmCategory annotation.

  • @BxmCategory must be written as a required item.

  • Additional information is as follows.

    1. logicalName: Enter the logical name of the method.

Method - Example

@BxmCategory(logicalName = "Single Registration")
public int addEmpInf(DSmpEmpTst000Dto input) throws DefaultApplicationException {
    ... ...
}

4. DBIO

DBIO is an object that directly accesses the database and can only be called through Beans. DBIOs are created through the 'DBIO' menu in Studio, and DBIO names are written as follows.

Classification Description

Package - Composition

L1 code + . + L2 code + . + L3 code + . + online or batch + . + dbio

Package - Example

bxm.dft.smp.online.dbio

Package - Basic principle

  • Package names are written entirely in lowercase.

  • Classifications are separated by ".".

  • The last segment of the Package is written as dbio.

Class - Composition

  1. PK CRUD : D + table name (in this guide, the SMP_EMP_TST table is used) + 000

  2. Others : D + table name + (001-999)

Class - Example

  1. PK CRUD : DSmpEmpTst000

  2. Others : DSmpEmpTst002

Class - Basic principle

  • DBIO names are composed of the symbol 'D' meaning DBIO in the queries that use them, the table name of the main table used, and a 3-digit serial number.

  • Table names use camel case.

  • Serial number 000 is for DBIOs that perform CRUD using PK, so developers do not write/modify them directly (automatically generated by the Default DBIO function).

  • Developers write DBIOs starting from serial number 001.

  • The file extension is dbio.

Class - Additional information

- Since DBIO is generated in a source code generation manner, users do not enter additional information.

Class - Example

Source code is not generated directly.

SQL ID - Composition

  1. DBIO prefix + (2-digit serial number)

  2. DBIO Prefix + (standard word)* or

  3. DBIO Prefix + (standard word)* + (2-digit serial number)

SQL ID - Example

selectOne01

selectOneEmpNm

selectOneEmpNm01

SQL ID - Basic principle

  • DBIO SQL IDs can be composed of a prefix and a 2-digit serial number, a prefix and a combination of standard words, or a prefix and a combination of standard words plus a 2-digit serial number.

  • Standard words use combinations of English abbreviations of standard words defined in the meta-system.

  • Serial number 00 is reserved for queries that use PK, so leave it empty.

  • Prefixes are written to match the mapped SQL statement.

  • Prefixes refer to the DBIO Method Prefix item.

5. Default DBIO

Default DBIO is one of Studio’s convenience features that automatically generates DBIOs and IOs based on tables, and the standards for Default DBIO are as follows.

(1) Generated DBIO

Classification Description

Package - Composition

L1 code + . + L2 code + . + L3 code + . + online or batch + . + dbio

Package - Example

bxm.dft.smp.online.dbio

Package - Basic principle

  • Package names are written entirely in lowercase.

  • Classifications are separated by ".".

  • The last segment of the Package is written as dbio.

Class - Composition

- D + table name (in this guide, the SMP_EMP_TST table is used) + 000

Class - Example

- PK CRUD : DSmpEmpTst000

Class - Basic principle

  • DBIO names are composed of the symbol 'D' meaning DBIO in the queries that use them, the table name of the main table used, and the serial number 000.

  • Table names use camel case.

  • The file extension is dbio.

Class - Additional information

- Since DBIO is generated in a source code generation manner, users do not enter additional information.

Class - Example

Source code is not generated directly.

SQL ID - Composition

  1. Method prefix + _ + PK name

  2. Method prefix + _ + UK name

  3. Method prefix + _ + index name

SQL ID - Example

selectOneLock_SYS_C0011417

insert_SYS_C0011417

SQL ID - Basic principle

  • DBIO SQL IDs are determined by the prefix, whether the table’s PK or UK is used, and the PK or UK name.

  • Standard words use combinations of English abbreviations of standard words defined in the meta-system.

  • Prefixes are written to match the mapped SQL statement.

  • Prefixes refer to the DBIO Method Prefix item.

(2) IO of the generated DBIO

Classification Description

Package - Composition

L1 code + . + L2 code + . + L3 code + . + online or batch + . + dbio.dto

Package - Example

bxm.dft.smp.online.dbio.dto

Package - Basic principle

  • Package names are written entirely in lowercase.

  • Classifications are separated by ".".

  • The last segment of the Package is written as dbio.dto.

Class - Composition

- Table name (in this guide, the SMP_EMP_TST table is used) + 000 + Io

Class - Example

SmpEmpTst000Io

Class - Basic principle

  • Attach Io to the table name (in this guide, the SMP_EMP_TST table is used) + 000.

  • Table names use camel case.

  • The file extension is omm.

Class - Additional information

- Since IO Java sources are generated in a source code generation manner, users do not enter additional information.

Class - Example

Source code is not generated directly.

6. IO

IO names are written differently depending on the following cases. As much as possible, IOs for Beans should reuse the IOs of Services or DBIOs, and separate IOs should be created only when necessary.

(1) Service Input/Output: IO for input/output of Services

(2) DBIO Input/Output: IO for input/output of DBIOs

(3) Interface Input/Output: IO for interfaces such as EAI/MCI

(4) Bean Input/Output: IO for input/output of Beans

IOs are created through the 'IO' menu, and IO names are written as follows.

6.1. Writing IO for Service Input/Output

Service IO naming rules
Classification Description

Package - Composition

L1 code + . + L2 code + . + L3 code + . + online or batch + . + service.dto

Package - Example

bxm.dft.smp.online.service.dto

Package - Basic principle

  • Package names are written entirely in lowercase.

  • Classifications are separated by ".".

  • The last segment of the Package is written as service.dto.

Class - Composition

  • Input IO: Service operation name (uppercase) + InDto

  • Output IO: Service operation name (uppercase) + OutDto

  • Input repeating IO: Input IO name + Sub + repeating IO name

  • Output repeating IO: Output IO name + Sub + repeating IO name

Class - Example

  • Input IO: SMP1001A001InDto

  • Output IO: SMP1001A001OutDto

  • Input repeating IO: SMP1001A001InDtoSubGrid00

  • Output repeating IO: SMP1001A001OutDtoSubGrid00

Class - Basic principle

  • IO used for Service operation input/output consists of the Service operation name (uppercase) and the input/output suffix.

  • Service In/Out must always be used explicitly.

  • IO used for input uses the suffix 'InDto'.

  • IO used for output uses the suffix 'OutDto'.

  • Repeating IO used for input uses the suffix [Sub + repeating IO name].

  • Repeating IO used for output uses the suffix [Sub + repeating IO name].

  • The file extension is omm.

  • IO used for Service input/output is not used as DBIO IO.

  • DBIO IO is not used as Service repeating IO.

Class - Additional information

- Since IO is generated in a source code generation manner, users do not enter additional information.

Class - Example

Source code is not generated directly.

Method - Composition

Since IO Java source code is automatically generated, developers do not need to compose methods directly.

6.2. Writing IO for DBIO

DBIO IO naming rules
Classification Description

Package - Composition

L1 code + . + L2 code + . + L3 code + . + online or batch + . + dbio.dto

Package - Example

bxm.dft.smp.online.dbio.dto

Package - Basic principle

  • Package names are written entirely in lowercase.

  • Classifications are separated by ".".

  • The last segment of the Package is written as dbio.dto.

Class - Composition

  • NAME: DBIO name

  • PK CRUD: NAME + Dto

  • Others

    1. Input IO: NAME + DBIO method name + InDto

    2. Output IO: NAME + DBIO method name + OutDto

Class - Example

  • PK CRUD : DSmpEmpTst000Dto

  • Others

    1. Input IO: DSmpEmpTst001selectPage01InDto

    2. Output IO: DSmpEmpTst001selectPage01OutDto

Class - Basic principle

  • DBIO IO with serial number 000 that performs CRUD using PK is not written directly by developers.

  • IO used for input/output of DBIO methods with serial numbers from 001 onward, which are written by developers, consists of the DBIO name, DBIO method name, and the input/output suffix.

  • IO used for input uses the suffix 'InDto'.

  • IO used for output uses the suffix 'OutDto'.

  • The file extension is omm.

Class - Additional information

- Since IO is generated in a source code generation manner, users do not enter additional information.

Class - Example

Source code is not generated directly.

Method - Composition

Since IO Java source code is automatically generated, developers do not need to compose methods directly.

6.3. Writing IO for Interfaces

Interface IO naming rules
Classification Description

Package - Composition

L1 code + . + L2 code + . + L3 code + . + online or batch + . + inf.dto

Package - Example

bxm.dft.smp.online.inf.dto

Package - Basic principle

  • Package names are written entirely in lowercase.

  • Classifications are separated by ".".

  • The last segment of the Package is written as inf.dto.

Class - Composition

  • Input IO: System classification + 2-digit serial number + target transaction code + InDto

  • Output IO: System classification + 2-digit serial number + target transaction code + OutDto

  • Input repeating IO: Input IO name + Sub + repeating DTO name

  • Output repeating IO: Output IO name + Sub + repeating DTO name

Class - Example

  • Input IO: EAI01SYER3101A400InDto

  • Output IO: EAI01SYER3101A400OutDto

  • Input repeating IO: EAI01SYER3101A400InDtoSubGrid00

  • Output repeating IO: EAI01SYER3101A400OutDtoSubGrid00

Class - Basic principle

  • They consist of the system classification, 2-digit serial number, target transaction code, and suffix.

  • IO used for input uses the suffix 'InDto'.

  • IO used for output uses the suffix 'OutDto'.

  • Sub IOs of input/output IOs use the suffix [Sub + repeating IO name].

  • The file extension is omm.

Class - Additional information

- Since IO is generated in a source code generation manner, users do not enter additional information.

Class - Example

Source code is not generated directly.

Method - Composition

Since IO Java source code is automatically generated, developers do not need to compose methods directly.

6.4. Writing IO for Beans

For Bean methods, basic types and general objects can be used freely for input. When IO is needed for Bean methods, reuse IOs of Services and DBIOs. If reuse is difficult, create and use IOs with reference to the following.

Bean IO naming rules
Classification Description

Package - Composition

L1 code + . + L2 code + . + L3 code + . + online or batch + . + bean.dto

Package - Example

bxm.dft.smp.online.bean.dto

Package - Basic principle

  • Package names are written entirely in lowercase.

  • Classifications are separated by ".".

  • The last segment of the Package is written as bean.dto.

Class - Composition

  • Input IO: Bean name + 2-digit serial number + InDto

  • Output IO: Bean name + 2-digit serial number + OutDto

  • Input repeating IO: Input IO name + Sub + repeating IO name

  • Output repeating IO: Output IO name + Sub + repeating IO name

Class - Example

  • Input IO: MSmpEmpInfMng01InDto

  • Output IO: MSmpEmpInfMng01OutDto

  • Input repeating IO: MSmpEmpInfMng01InDtoSubGrid00

  • Output repeating IO: MSmpEmpInfMng01OutDtoSubGrid00

Class - Basic principle

  • IO used for input/output of Beans consists of the Bean name, serial number, and input/output suffix.

  • IO used for input uses the suffix 'InDto'.

  • IO used for output uses the suffix 'OutDto'.

  • Sub IOs of input/output IOs use the suffix [Sub + repeating IO name].

  • The file extension is omm.

Class - Additional information

- Since IO is generated in a source code generation manner, users do not enter additional information.

Class - Example

Source code is not generated directly.

Method - Composition

Since IO Java source code is automatically generated, developers do not need to compose methods directly.

7. Variables / Constants

This section describes naming rules for variables used as member variables of Service and Bean classes. The following items apply to variable and constant name restrictions.

(1) Member variable declaration

Classification Description

Member variable declaration - Composition

First letter of the class name in lowercase

Member variable declaration - Example

mSmpEmpInfMng

Member variable declaration - Basic principle

  • The first letter of the class name is written in lowercase, and the rest is the same as the class name.

  • Declare it in the class body (do not declare it in the method body).

  • Do not declare it in a nested class.

  • Do not write get/set methods.

  • Declare the access modifier as private.

  • Do not declare it as final or static.

  • Do not create objects directly with new.

Member variable declaration - Example

    private MSmpEmpInfMng msmpEmpInfMng;

(2) Service operation parameters

Classification Description

Service operation parameters - Composition

The input parameter name of a Service operation is input + (1-digit serial number)?.

Service operation parameters - Example

ssmp1001a001(SSMP1001A001InDto input)

Service operation parameters - Basic principle

  • Since the parameters of a Service operation are input parameters, they are written as input.

  • Do not use the final keyword on parameters.

Service operation parameters - Example

/* The input parameter name of operation ssmp1001a001 is input */
public SSMP1001A001OutDto ssmp1001a001(SSMP1001A001InDto input) throws DefaultApplicationException {
    ... ...
}

(3) Constants

Classification Description

Constants - Composition

Standard word + (_ + standard word)*

Constants - Example

  • MAX_NUM

  • SYSTEM_CODE_NAME

Constants - Basic principle

  • Constants are declared as static final, and their names are written entirely in uppercase (use the public keyword together for constants that need to be exposed externally).

  • Each word is separated by an underscore (_).

  • Constant names are written within 50 characters.

  • Initialization is performed in a static block.

Constants - Example

public static final int MAX_NUM;
public static final String SYSTEM_CODE_NAME;
static {
    MAX_NUM= 100;
    SYSTEM_CODE_NAME= "BXM";
}

8. Service Test Cases

Service test case rules
Classification Description

Folder name - Composition

testcases/serviceTest

File name - Composition

Test + Service name + 3-digit serial number

File name - Example

TestSSMP1001A003.case

TestSSMP1001A001.case

File name - Basic principle

It consists of the Test prefix, Service name, and a 3-digit serial number.

Service names in test cases are written entirely in uppercase.

They are created in the project’s testcases/serviceTest folder.

The file extension is case.

File name - Example

Appearance of test case creation
Figure 1. Appearance of test case creation

9. Module Test Cases

Module test case rules
Classification Description

Folder name - Composition

testcases/moduleTest

File name - Composition

Test + Bean class name + 3-digit serial number

File name - Example

TestMSmpEmpInfMng001.mtest

TestMSmpIntrLinkCall001.mtest

File name - Basic principle

It consists of the Test prefix, Bean class name, and a 3-digit serial number.

They are created in the project’s testcases/moduleTest folder.

The file extension is mtest.

File name - Example

Appearance of test case creation
Figure 2. Appearance of test case creation

10. Local variables

No specific standard is provided for the names of local variables used inside methods. They can be declared and used freely, but names that make it easy to understand their meaning should be used as much as possible.

11. Naming Rules Example

If the naming rules guided in this chapter are followed, resources with the names shown in the following table should be generated.

Classification Description

Project

  • Online project : BxmDftSmp

  • Batch project : BxmDftSmpBatch

Service class name and Package

  • Package : bxm.dft.smp.online.service

  • Class : SSMP1001A

Service IO name and Package

  • Package : bxm.dft.smp.online.service.dto

  • Input IO : SSMP1001AInDto

  • Output IO : SSMP1001AOutDto

Bean name and Package

  • Package : bxm.dft.smp.online.bean

  • Class : MSmpEmpInfMng01

Bean IO name and Package

  • Package : bxm.dft.smp.online.bean.dto

  • Input IO : MSmpEmpInfMng01InDto

  • Output IO : MSmpEmpInfMng01OutDto

DBIO name and Package

  • Package : bxm.dft.smp.online.dbio

  • Class : DSmpEmpTst001

DBIO IO name and Package

  • Package : bxm.dft.smp.online.dbio.dto

  • Input IO : DSmpEmpTst001selectPage01InDto

  • Output IO : DSmpEmpTst001selectPage01OutDto

SWLab Bankware Global
  • 전체
  • BXM
  • BXCM
  • BXCP
  • BXI
제품 선택 시 더 정확한 매뉴얼 가이드를 제공해드립니다.

Copyright© Bankwareglobal All Rights Reserved.