批处理

public static Integer addBatch(String[] sqls){

	init();
try {
//设置关闭自动提交
conn.setAutoCommit(false);
Statement stmt = conn.createStatement();
for (int i = 0; i < sqls.length; i++) {
stmt.addBatch(sqls[i]);
}
//批量执行
stmt.executeBatch();
//提交事务
conn.commit();
return 1;
} catch (SQLException e) {
e.printStackTrace();
return 0;
}finally {
close();
}
}

批处理在main方法中调用

   String[] sql3 = new String[3];
sql3[0] = "insert into student(s_name, s_age)values('zs',11);";
sql3[1] = "insert into student(s_name, s_age)values('lis',22);";
sql3[2] = "insert into student(s_name, s_age)values('ww',33);";
int res = addBatch(sql3);
System.out.println(res);

通用泛型查询方法


public static <T> List<T> query1(String sql, Class<T> cls, Object...params){
init();
try {
//编译sql语句,返回PrepareStatement对象
ps = conn.prepareStatement(sql);
//参数替换sql中的占位符
if (params != null) {
for (int i = 0; i < params.length; i++) {
ps.setObject(i+1,params[i]);
}
}
//执行sql语句,结果集封装给ResultSet
rs = ps.executeQuery(); List<T> list = new ArrayList<T>();
//检索resultSet对象中的列数,类型和字段(结果集元数据)
ResultSetMetaData resultSetMetaData = rs.getMetaData(); while(rs.next()){
T t = cls.newInstance();//泛型实例化 //获取结果集的列数
int count = resultSetMetaData.getColumnCount();
for (int i = 0; i < count; i++) {
//获取每一列的别名,如果没有别名就返回resultSetMetaData.getColumnName();
String cName = resultSetMetaData.getColumnLabel(i + 1);
Object cValue = rs.getObject(cName);//通过获取的别名或者列名获取列的值 try {
Field field = cls.getDeclaredField(cName);//通过获取的别名或者列名获取类的属性
field.setAccessible(true);//开启私有访问权限
field.set(t, cValue);//变量赋值
} catch (NoSuchFieldException e) {
} }
list.add(t); }
return list; } catch (Exception e) {
e.printStackTrace();
return null;
}finally{
close();
}
}

下划线转驼峰命名法

 	//下划线转驼峰命名
public static void conversion(String column){
// String[] conName = name.split("");
// String string = "";
// for (int i = 0; i < conName.length; i++) {
// if(conName[i].equals("_")){
// string = string + conName[i+1].toUpperCase();
// i++;
// }else {
// string = string +conName[i];
// }
// }
// System.out.println(string); String[] arr = column.split("_");
StringBuffer sf = new StringBuffer(arr[0]);
for (int i = 1; i < arr.length; i++) {
String string = arr[i];
String firstStr = string.substring(0, 1).toUpperCase();
}
}

最新文章

  1. CentOs6.5中安装和配置vsftp简明教程
  2. Javascript 简单学习
  3. git在本地创建远程仓库
  4. Objc中2维指针作为输出参数时由ARC及@autoreleasepool引发的血案
  5. IE10用video标签播放本地mp4文件失败的解决办法
  6. HDU 5690 All X 暴力循环节
  7. 《Genesis-3D开源游戏引擎完整实例教程-跑酷游戏篇06:移动版优化指南》--本系列完结
  8. C bit 操作
  9. ubuntu自定义服务模板
  10. 分享最近写的一个存储过程 SOLVE_LOCK
  11. 【二分查找+优化O(n)】【续UVA1121】Subsequence
  12. 关于Mac中Clion使用OpenCV
  13. js键盘键值大全
  14. Linux块设备驱动(二) _MTD驱动及其用户空间编程
  15. javascript函数之arguments
  16. UseCase事件流描述规范
  17. axios与ajax区别
  18. 仿照admin的stark自定义组件的功能实现
  19. dubbox 的各种管理和监管[转]
  20. Java虚拟机八 分析Java堆

热门文章

  1. 安装ceph (快速) 步骤一:预检
  2. FastDFS与nginx配置使用的配置信息
  3. 关于Loki中promtail组件收集日志的几点思考
  4. Alertmanager高可用
  5. 21. Fluentd输出插件:rewrite_tag_filter用法详解
  6. ERP 系统的核心是什么?有什么作用?
  7. aws-s3-国际global与国内CN的一些说明
  8. 洛谷P4011 【网络流24题】 孤岛营救问题 (BFS+状压)
  9. SQL 报表制作和整形
  10. XAF新手入门 - 前言