nutz使用

一:POM依赖

<dependency>
  <groupId>org.nutz</groupId>
  <artifactId>nutz</artifactId>
  <version>1.r.56</version>
</dependency>

<dependency>
  <groupId>com.alibaba</groupId>
  <artifactId>druid</artifactId>
  <version>1.0.16</version>
</dependency>

二:yml 文件

spring:
datasource:

    url: jdbc:mysql://ip:port/dbname?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true
    username: root
    password: gozapdev
    driver-class-name: com.mysql.jdbc.Driver
    initial-size: 3
    max-active: 20
    min-idle: 2
    validation-query: SELECT 1
三: DbConfiguration

    

@Data
@Component
@ConfigurationProperties(prefix = "spring.datasource")
public class DBConfiguration {

    public static ConcurrentHashMap<String, Dao> concurrentHashMap;

    private String url;

    private String username;

    private String password;

    private String driverClassName;

    private Integer initialSize;

    private Integer maxActive;

    private Integer minIdle;

    private String validationQuery;



    @PostConstruct
    public void init(){
        Dao dao = getSysBaseDao();
        concurrentHashMap = new ConcurrentHashMap();
        concurrentHashMap.put("dbname",dao);
    }

    public Dao getSysBaseDao() {
        DruidDataSource dataSource = new DruidDataSource();
        dataSource.setInitialSize(initialSize);
        dataSource.setMaxActive(maxActive);
        dataSource.setMinIdle(minIdle);
        dataSource.setPoolPreparedStatements(true);
        dataSource.setUrl(url);
        dataSource.setUsername(username);
        dataSource.setPassword(password);
        dataSource.setDriverClassName(driverClassName);
        dataSource.setPoolPreparedStatements(true);
        dataSource.setValidationQuery("SELECT 1");
        dataSource.setTestOnBorrow(true);
        Dao dao = new NutDao(dataSource);
        return dao;
    }

}

四:使用

1:

public static Timestamp getMaxActionStamp(Long groupID) throws Exception{
        Dao dao = DBSysBaseConfiguration.concurrentHashMap.get("dbname");
        String sqlStr = "SELECT max(actionStamp) as actionStamp FROM 表 WHERE groupID = @groupID AND action IN (0,1)";
        Sql sql = Sqls.create(sqlStr);
        sql.setParam("groupID", groupID);
        sql.setCallback(new SqlCallback(){

            @Override
            public Object invoke(Connection connection, ResultSet rs, Sql sql) throws SQLException {
                Timestamp result = null;
                while (rs.next()){
                    result = rs.getTimestamp("actionStamp");
                }
                return result;
            }
        });
        dao.execute(sql);
        return sql.getObject(Timestamp.class);
    }

2:

public static List<AAA> getAAAList(Long groupID) throws Exception{
        Dao dao = DBSysBaseConfiguration.concurrentHashMap.get("dbname");
        String sqlStr = "SELECT aa from biao where groupID = @groupID ";
        StringBuilder sqlApp = new StringBuilder(sqlStr);

        Sql sql = Sqls.create(sqlApp.toString());
        sql.setParam("groupID", groupID);
        sql.setCallback(new SqlCallback(){
            @Override
            public List<AAA> invoke(Connection conn, ResultSet rs, Sql sql) throws SQLException {
                List<AAA> list = new ArrayList<>();
                while (rs.next()){
                    AAA model = new AAA();
                    model.setCreateBy(createByContent);
                    list.add(model);
                }
                return list;
            }
        });
        dao.execute(sql);
        return   sql.getList(AAA.class);
    }

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值