🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Sign inDemoInstall
Socket

mybatisnodejs

Package Overview
Dependencies
Maintainers
1
Versions
65
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

mybatisnodejs

MyBatisNodeJs is a port from the The MyBatis Java data mapper framework for Node.Js.

0.5.1
latest
Source
npm
Version published
Weekly downloads
178
2866.67%
Maintainers
1
Weekly downloads
 
Created
Source
=============

MyBatisNodeJs is a port from the The MyBatis data mapper framework for Node.Js.

MyBatisNodeJs understands the same xml files as input like MyBatis Java.

MyBatisNodeJs assumes that your POJO's (domains objects) exist on the directory domain:

- Project
   domain (put your domain classes here)

* How to use:

1) Write your MyBatis mapping files:

To Know how to write mapping files read: 
http://mybatis.github.io/mybatis-3/

2) Create a connection to your database

```javascript
var mysql = require('mysql');
global.pool = mysql.createPool({
    host     : 'localhost',
    user     : '****',
    password : '****',
    database : 'database',
    typeCast : true,
    multipleStatements: true
});
```

3) To process the xml mapping files and get an sessionFactory instance:

```javascript
var mybatis = require('mybatisnodejs');

app.use(mybatis.Contexto.domainMiddleware);
app.use(mybatis.Contexto.middlewareOnError);

var sessionFactory  = new mybatis.Principal().processe(dir_xml);
global.sessionFactory = sessionFactory;
```

The string variable dir_xml points to the MyBatis mapping files directory.

The variable sessionFactory has methods for selectOne, selectMany, insert, update or delete objects.

4) Select one object:

```javascript
sessionFactory.selecioneUm('user.select', {id: 1}, pool, function(user) {
   //console.log(user);
});
```

The callback function is called with the user or null if not found.

Added support to Promises. The same old methods with Async suffix.

```javascript
var user = await sessionFactory.selecioneUmAsync('user.select', {id: 1}, pool);
```

Release Notes

Version 0.1.0 added support to prefix columns using table alias (from sql) 

Example:
The mapping

'''xml
  <select id="selecione" parameterType="map" resultMap="usuarioResultMap" prefix="true">
    select * from user
  </select>
'''

is same as:

'''xml
  <select id="selecione" parameterType="map" resultMap="userResultMap">
    select 
    u.id user_id,
    u.name user_name,
    u.login user_login
        from user
  </select>
'''

Keywords

mybatis

FAQs

Package last updated on 21 Feb 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts