关于使用Hutool数据库
如果你要使用Hutool操作数据库,首先要引入Jar包
import cn.hutool.db.Entity;
然后你就可以使用数据库了,使用数据库的方法是Hdb.use().query()
,这里的use()不带参数,默认操作的是OA平台数据库,对应的是数据库ec20210511
使用query()方法执行sql语句后,返回的数据是List集合,元素类型为Entity。
其他数据库的操作可以在下面的网址找到对应用法:
https://www.hutool.cn/docs/#/db/数据库简单操作-Db
如果你执行的是查询操作,那么你可以使用一个加强for循环遍历List,然后得到某个字段的值,比如这样:
public static void main(String args[]) throws SQLException {
List<Entity> list = HDb.use().query("select * from dbo.formtable_main_58");
//在sql语句中查询条件中带了中文使用'',这里就算使用了''可能由于idea对中文的编码方式和sqlserver不一样还是没有结果
for(Entity A : list){
//得到requestId这个字段的值,所以你想得到哪个字段的值就使用getStr()方法就好了
System.out.println(A.getStr("requestId"));
}
}
这里引出一个疑问,比如执行了查询操作,返回值类型是List,如何把这些List中所有的字段都答应出来呢?而且还要以JSON格式
在Hutool中,作者封装了JSON的类,由于我们需要将List集合中的Entity对象转换成JSON对象,所以我们需要使用到JSON工具类--JSONUtil,你需要引入对应JAR包import cn.hutool.json.JSONUtil;
相关的JSON信息查看
https://www.hutool.cn/docs/#/json/JSONUtil
public static void main(String args[]) throws SQLException {
List<Entity> list = HDb.use().query("select * from dbo.formtable_main_58");
for(Entity A : list){
// System.out.println(A.getStr("requestId"));
//toJsonStr()返回的String对象
System.out.println(JSONUtil.toJsonStr(A));
}
}
使用JSONArray可以达到相同的效果,在使用JSONArray之前需要先引入JAR包import cn.hutool.json.JSONArray;
List<Entity> list = HDb.use().query("select khmc,xsyxm from dbo.formtable_main_58");
// JSONArray array = JSONUtil.createArray();
JSONArray array = new JSONArray(list);
for(int i = 0; i < array.size(); i++){
System.out.println(array.get(i).toString());
}
// for(Entity A : list){
// System.out.println(A.getStr("requestId"));
// System.out.println(JSONUtil.toJsonStr(A));
// }
}
下面试试往数据库中写数据