● Install & configuration to devleop
https://openjdk.java.net/install/
https://services.gradle.org/distributions/gradle-3.3-all.zip
https://www.eclipse.org/
● Download Abilists source code
abilists_client
by Git$ git clone https://github.com/abilists/abilists_client.gitWe provide
the Client Controller
for free so that companies can develop its own business functions.abilists_client
) opened after downloading the source code by Git.
new Plugins
that can be used on Abilites base.https://github.com/abilists/plugin_sampleClone
abilists_plugins
by Git$ git clone https://github.com/abilists/plugin_sample.gitThe following source code of the sample is opened with Eclipse after cloning the sample plugin source.
● It describes the source configuration and each role.
Controller
. The screen output of all data is shown through the abilistsModel.extends
AbilistsModel and express it.AbilistsModel abilistsModel = new AbilistsModel();The login user's information is retrieved from the session.
this.handleSessionInfo(request.getSession(), sltSamplePara);After checking the input data, check if there are any errors. When there is an error, the screen is switched to the error screen.
MapCheck One Time Talk (OPT). If you have a lot of users, we recommend moving the token store tomapErrorMessage = new HashMap (); if (bindingResult.hasErrors()) { response.setStatus(400); mapErrorMessage = this.handleErrorMessages(bindingResult.getAllErrors(), locale); model.addAttribute("mapErrorMessage", mapErrorMessage); return "apps/errors/parameterErrors"; }
memcached
.String key = this.makeKey(istSamplePara.getUserId(), AbstractBaseController.PREFIX_IST_KEY); if (!istSamplePara.getToken().equals(commonBean.getTokenExpireMap(key))) { mapErrorMessage.put("errorMessage", message.getMessage("parameter.error.token.message", null, locale)); model.addAttribute("errorMessage", mapErrorMessage); return "apps/errors/parameterErrors"; }This section is for displaying messages on the screen when data processing is normal.
redirectAttributes.addFlashAttribute("save", "completed");
ClientServiceImpl
class.@Override public ListThis is a data input method. (ist = insert)sltCleintList(CommonPara commonPara) throws Exception { return null; }
@Override @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED) public boolean istCleint(CommonPara commonPara) throws Exception { return true; }This is a data update method. (udt = update)
@Override @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED) public boolean udtUCleint(CommonPara commonPara) throws Exception { return true; }This is a data delete method. (dlt = delete)
@Override @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED) public boolean dltCleint(CommonPara commonPara) throws Exception { return true; }
● Run in a development environment.
abilists_client
in local through Jetty. gradle clean
command once and start Jetty.$ cd ~/git/abilists_client $ gradle clean $ gradle jettyRun