jdbc-mapper

jdbc-mapper util

Лицензия

Лицензия

Группа

Группа

com.github.dingey
Идентификатор

Идентификатор

jdbc-mapper
Последняя версия

Последняя версия

3.0
Дата

Дата

Тип

Тип

jar
Описание

Описание

jdbc-mapper
jdbc-mapper util
Ссылка на сайт

Ссылка на сайт

https://github.com/dingey/jdbc-mapper
Система контроля версий

Система контроля версий

https://github.com/dingey/jdbc-mapper

Скачать jdbc-mapper

Как подключить последнюю версию

<!-- https://jarcasting.com/artifacts/com.github.dingey/jdbc-mapper/ -->
<dependency>
    <groupId>com.github.dingey</groupId>
    <artifactId>jdbc-mapper</artifactId>
    <version>3.0</version>
</dependency>
// https://jarcasting.com/artifacts/com.github.dingey/jdbc-mapper/
implementation 'com.github.dingey:jdbc-mapper:3.0'
// https://jarcasting.com/artifacts/com.github.dingey/jdbc-mapper/
implementation ("com.github.dingey:jdbc-mapper:3.0")
'com.github.dingey:jdbc-mapper:jar:3.0'
<dependency org="com.github.dingey" name="jdbc-mapper" rev="3.0">
  <artifact name="jdbc-mapper" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.github.dingey', module='jdbc-mapper', version='3.0')
)
libraryDependencies += "com.github.dingey" % "jdbc-mapper" % "3.0"
[com.github.dingey/jdbc-mapper "3.0"]

Зависимости

Библиотека не имеет зависимостей. Это самодостаточное приложение, которое не зависит ни от каких других библиотек.

Модули Проекта

Данный проект не имеет модулей.

jdbc-mapper

基于jdbc的封装,支持数据源,配置简单,支持注解sql查询,自带分页查询。

快速开始

引入依赖

<dependency>
<groupId>com.github.dingey</groupId>
<artifactId>jdbc-mapper</artifactId>
<version>3.0</version>
</dependency>

配置bean

DataSource dataSource=DefaultDataSource.build("jdbc:mysql://localhost:3306/sys", "root", "root");
JdbcFactory factory = JdbcFactory.build(dataSource);
JdbcMapper mapper = factory.getMapper();

或者

DataSource dataSource=DefaultDataSource.build("jdbc:mysql://localhost:3306/sys", "root", "root");
JdbcMapper mapper = JdbcMapper.build(dataSource);

方法介绍

执行sql语句,返回成功或失败;

boolean execute(String sql)

执行预编译sql语句,返回成功或失败;

boolean execute(String preSql, Object...args)

执行sql语句,返回一条或一列,具体取决于resultClass类型;

T get(String sql, Class<T> resultClass)

执行预编译sql语句,返回一条或一列,具体取决于resultClass类型;

T get(String sql, Class<T> resultClass)

执行sql语句,结果映射为Map,第一列为key,第二列value;

Map<Object,Object> listToMap(String sql);

执行预编译的sql语句,结果映射为Map,第一列为key,第二列value;

Map<Object, Object> listToMap(String sql, Object... args);

执行sql语句,返回list对象;

List<T> list(String sql, Class<T> resultClass)

执行预编译的sql语句,返回list对象,

List<T> list(String preSql,Class<T> resultClass, Object...args)

插入一条记录,如果需要返回自增主键在主键属性上加@GeneratedValue注解。

void insert(T o)

可选择插入一条记录,忽略null的属性。

void insertSelective(T o)

更新一条记录;

int update(T t)

可选择更新一条记录,忽略null的属性。

int updateSelective(T t)

分页查询

执行分页查询,只支持mysql,oracle。

分页对象

Pager{
	List<T> list;
	int pageNum;
	int pageSize;
	long total;
}

执行sql分页查询

Pager<T> page(String sql, int pageNum, int pageSize, Class<T> resultClass)

执行预编译sql分页查询

Pager<T> page(String preSql, int pageNum, int pageSize, Class<T> resultClass, Object...args)

执行NamedQuery分页查询

Pager<T> pageByNamedQuery(String namedQueryName,Class<T> resultClass,Object... args)

命名查询

执行本地命名查询

@NamedNativeQueries(value = { @NamedNativeQuery(name = "selectAll", query = "select * from person"),
		@NamedNativeQuery(name = "selectOne", query = "select * from person where id<?") })
public class Person {}

可以将sql语句写在类上,方便统一管理。

执行命名语句

boolean executeByNamedQuery(String namedQueryName, Class<T> namedClass, Object... args);

执行命名查询语句

T getByNamedQuery(String namedQueryName, Class<T> namedClass, Object... args);

执行命名语句查询,返回list对象

List<T> listByNamedQuery(String namedQueryName, Class<T> namedClass, Object... args);	

事务

DataSource dataSource=DefaultDataSource.build("jdbc:mysql://localhost:3306/sys", "root", "root");
JdbcFactory factory = JdbcFactory.build(dataSource);
JdbcMapper mapper = factory.getMapper();
try {
	Man m=new Man();
	m.setId(1);
	m.setName("b");
	mapper.begin();
	mapper.insert(m);
	m.setName("a");
	mapper.update(m);
	mapper.commit();
} catch (Exception e) {
	e.printStackTrace();
	mapper.rollback();
}

Версии библиотеки

Версия
3.0
2.0
1.2
1.1
1.0