mybatis 1 - cast

12
MyBatis 1.0 On this page: What's new ? Description In what situation should you install this extension? Supported MyBatis versions CAST AIP Compatibility Supported DBMS servers Prerequisites Dependencies with other extensions Download and installation instructions Packaging, delivering and analyzing your source code Packaging and delivery Analyzing What results can you expect? For Java Mapper XML files Support of "Include" tag Support of Dynamic SQL Tags MyBatis for Annotation / MyBatis-Spring Integration Supported Annotations For MyBatis Annotations Supported Annotation code For MyBatis-Spring Supported Spring code For .NET Objects Links For Java For .NET What's new ? Please see for more information. MyBatis - 1.0 - Release Notes Description This extension provides support for: MyBatis for Java using: Mapper XML file containing SQL queries MyBatis Annotations for JAVA MyBatis-Spring integration MyBatis for .NET using: Mapper XML file containing SQL queries only In what situation should you install this extension? This extension should be installed when analyzing a Java/.NET project that uses a MyBatis framework, and wanting to view a transaction consisting of MyBatis objects with their corresponding links. Links to corresponding database tables can also be resolved, provided that the database has been SQL extracted and DDL has been created. Supported MyBatis versions The following table displays the supported versions matrix: Language Supported Version Support Summary: This document provides basic information about the extension providing MyBatis (for Java/.NET) support.

Upload: others

Post on 02-Feb-2022

13 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MyBatis 1 - CAST

MyBatis 1.0On this page:

What's new ?DescriptionIn what situation should you install this extension?Supported MyBatis versionsCAST AIP Compatibility Supported DBMS serversPrerequisitesDependencies with other extensions Download and installation instructionsPackaging, delivering and analyzing your source code 

Packaging and deliveryAnalyzing

What results can you expect?For Java

Mapper XML filesSupport of "Include" tagSupport of Dynamic SQL TagsMyBatis for Annotation / MyBatis-Spring Integration

Supported AnnotationsFor MyBatis Annotations

Supported Annotation codeFor MyBatis-Spring

Supported Spring codeFor .NET

ObjectsLinks

For JavaFor .NET

What's new ?Please see for more information.MyBatis - 1.0 - Release Notes

DescriptionThis extension provides support for:

MyBatis for Java using:Mapper XML file containing SQL queriesMyBatis Annotations for JAVAMyBatis-Spring integration

MyBatis for .NET using:Mapper XML file containing SQL queries only

In what situation should you install this extension?This extension should be installed when analyzing a Java/.NET project that uses a MyBatis framework, and wanting to view a transaction consisting of MyBatis objects with their corresponding links. Links to corresponding database tables can also be resolved, provided that the  database has been SQLextracted and DDL has been created.

Supported MyBatis versionsThe following table displays the supported versions matrix:

Language Supported Version Support

Summary: This document provides basic information about the extension providing MyBatis (for Java/.NET) support.

Page 2: MyBatis 1 - CAST

Java 3.4.0 Mapper XML files

MyBatis Annotation for Java

MyBatis-Spring Integration

.NET 4.5.2 Mapper XML file

CAST AIP Compatibility This extension is compatible with:

CAST AIP release Supported

8.3.x

8.2.x

8.1.x

8.0.x

7.3.4

Supported DBMS serversThis extension is compatible with the following DBMS servers:

DBMS Supported

CSS

Oracle

Microsoft SQL Server

Prerequisites

An installation of any compatible release of CAST AIP (see table above)

SQL database should already be extracted and DDL created.

Dependencies with other extensions Some CAST AIP extensions require the presence of other CAST AIP extensions in order to function correctly. The extension requires that the MyBatis following other CAST extensions are also installed:

CAST AIP Internal extension (internal technical extension)SQL Analyzer extension

Download and installation instructions

When using the CAST Extension Downloader to download the MyBatis extension and the interface in CAST Server Manage ExtensionsManager to install the extension:

the will be automatically downloaded and installed for you. You do not need to do anything.CAST AIP Internal extension the - is not configured as a "dependent" extension and will therefore not be SQL Analyzer extension automatically downloaded and installed for you. However:

When using , the is installed by default, therefore yCAST AIP 8.3.x SQL Analyzer extension ou do not need to do anything.When using , the is not installed by default, therefore you will need to download and CAST AIP 8.2.x SQL Analyzer extensioninstall it manually if you want to handle the SQL source code in your MyBatis application.

Page 3: MyBatis 1 - CAST

Please see:

Download an extensionInstall an extension

Packaging, delivering and analyzing your source code Once the extension is installed, no further configuration changes are required before you can package your source code and run an analysis. The process of packaging, delivering and analyzing your source code is as follows:

Packaging and delivery

Using the CAST Delivery Manager Tool:

Create a new VersionCreate a new  using the option:Package Files on your file system

Click to enlarge

Define a name for the package and the root folder of your Application source code - this root folder should contain the folder for the Java/XML  and the folder for the :files or .NET/XML files SQL DDL

Click to enlarge

The latest release status of this extension can be seen when downloading it from the CAST Extend server.

Note that the MyBatis extension does not contain any CAST Delivery Manager Tool discoverers or extractors, therefore, no "MyBatis" projects will be detected by the DMT. You therefore need to manually create Analysis Units in the CAST Management Studio - this is explained below. You should ensure that your code is organised as follows:

Java

one folder containing all the related code along with .Java MyBatisone folder containing the extractionSQL DDL

.NET

one folder containing all the related code and the related files.NET XMLone folder containing the extractionSQL DDL

Page 4: MyBatis 1 - CAST

Run the Package action: the CAST Delivery Manager Tool will find Eclipse/Maven Java or .NET related "projects" associated with the MyBatis application source code - this is the expected behavior. However, if your Java/.NET related source code is part of a larger application, then other projects may also be found during the package action:

Finally,  the version.Deliver

Analyzing

Using the CAST Management Studio:

Accept and deploy the in the CAST Management Studio. will be created automatically - this is theVersion JEE / .NET Analysis Units expected . However, if your MyBatis related source code is part of a larger application, then other Analysis Units may be created automatically:behavior

Example for JEE

Note that:

When working with .NET, the package described above is equivalent to Package no. 1 described in .NET - Packaging, delivering and .analyzing your source code

you may need to create additional packages. For example, for an additional package will be required to package the .NET .NET . Please refer to the or for more information.Assemblies .NET Analyzer extension JEE Analyzer extension

Page 5: MyBatis 1 - CAST

In the Current Version tab, you now need to add manually : one Analysis Units for the  SQL source codeAdd a   for your , selecting the Universal Analyzer Analysis Unit SQL source code Add new Universal Analysis Unit option and then:

ticking the optionSQLincluding the folder containing the SQL DDL:

 

Now move into the  tab within the , and create a dependency between the  orDependencies  Application editor JEE Analysis Unit .NET as and the  as :Analysis Unit  Source Universal Analysis Unit Target

Example for JEE

Finally run a test analysis on the Analysis Unit before you generate a new snapshot.

What results can you expect?

Page 6: MyBatis 1 - CAST

Once the analysis/snapshot generation has completed, you can view the results in the normal manner. Below are the transactions obtained after analysis as shown in CAST Enlighten:

For Java

Mapper XML files

For - this extension will detect SQL queries and create objects and links. Mapper XML files Below is a Mapper XML file with its result in Enlighten:

 

Support of "Include" tag

This extension provide support of "Include" tag used in Mapper XML file. Below is a sample of "Include" tag with its result in Enlighten:

Page 7: MyBatis 1 - CAST

Support of Dynamic SQL Tags

This extension provide support of following Dynamic SQL tag used in Mapper XML file. Below is list of tags support with sample source code and result in Enlighten:

Element Description

isEmpty Checks to see if the value of a Collection, String property is null or empty.

isNotEmpty Checks to see if the value of a Collection, String property is not null and not empty.

isNotNull Checks if a property is not null.

isNull Checks if a property is null.

isPropertyAvailable Checks if a property is available.

isNotPropertyAvailable Checks if a property is unavailable.

isParameterPresent Checks to see if the parameter object is present (not null).

isNotParameterPresent Checks to see if the parameter object is not present (null).

isEqual Checks the equality of a property and a value, or another property.

isNotEqual Checks the inequality of a property and a value, or another property.

isGreaterThan Checks if a property is greater than a value or another property.

isGreaterEqual Checks if a property is greater than or equal to a value or another property.

isLessEqual Checks if a property is less than or equal to a value or another property.

Page 8: MyBatis 1 - CAST
Page 9: MyBatis 1 - CAST

MyBatis for Annotation / MyBatis-Spring Integration

Supported Annotations

This extension supports the following Annotations used in    and   applications:MyBatis Annotations for Java MyBatis-Spring integration

@Select - org.apache.ibatis.annotations.Select@Insert - org.apache.ibatis.annotations.Insert@Update - org.apache.ibatis.annotations.Update@Delete - org.apache.ibatis.annotations.Delete

For MyBatis Annotations

Supported Annotation code

In Java mapper File, when we pass the SQL Queries with annotation parameter directly. Below is a MyBatis-Annotation sample source code with its result in Enlighten

Click to enlarge

Page 10: MyBatis 1 - CAST

  

In the Java Mapper file, when the annotation parameter contains variables which are initialized with a query instead of a query statement itself. 

Below is a sample source code with its result in Enlighten

For MyBatis-Spring

Supported Spring code

Below a Mybatis Spring Integration sample source code with its result in Enlighten:

Click to enlarge

Page 11: MyBatis 1 - CAST

For .NET

For Mapper XML files, below is a mapper XML file with its result in Enlighten: 

MYBATIS DOTNET SQLNAMEDQUERY are created to link between C# method and tables

ObjectsThe following specific objects are displayed in CAST Enlighten:

Page 12: MyBatis 1 - CAST

Mapper xml file - this object is created by the JEE Analyzer/.NET Analyzer.SQL_Named query - this object(s) is created by the MyBatis extension for Java Projects.MYBATIS DOTNET SQLNAMEDQUERY - this object(s) is created by the MyBatis extension for .NET Projects.

LinksVarious links are created but the following are the links specific to the :MyBatis extension

For Java

between a object and an object.Call link Java Method SQL_Named query (typed with Select, Delete, Insert, Update) link between an Use object and a object.SQL_Named query Table  

For .NET

Call link between a object and an  object..NET Method MYBATIS DOTNET SQLNAMEDQUERYUse (typed with Select, Delete, Insert, Update) link between an object and a object.MYBATIS DOTNET SQLNAMEDQUERY TableRefer link between a object and an object..NET Constructor MYBATIS DOTNET SQLNAMEDQUERY