BaseDao.util(虎大将军)

BaseDao.util(虎大将军)

 1 package logistics.util;  2  3 import java.sql.Connection;  4 import java.sql.PreparedStatement;  5 import java.sql.ResultSet;  6 import java.sql.ResultSetMetaData;  7 import java.sql.SQLException;  8 import java.sql.Statement;  9 import java.util.ArrayList;  10 import java.util.HashMap;  11 import java.util.List;  12 import java.util.Map;  13  14 import javax.sql.DataSource;  15  16 import org.slf4j.Logger;  17 import org.slf4j.LoggerFactory;  18 import org.springframework.beans.factory.annotation.Autowired;  19 import org.springframework.stereotype.Repository;  20  21 /**  22  * @author �½�  23  * @������dao������  24  * 2018-10-25����2:54:57  25 */  26 @Repository  27 public class BaseDao {  28 private final static Logger logger = LoggerFactory.getLogger(BaseDao.class);  29  @Autowired  30 private DataSource dataSource;  31 //��ȡ���ݿ�����  32 public Connection getConnection() {  33 try {  34 return dataSource.getConnection();  35 } catch (SQLException e) {  36 // TODO Auto-generated catch block  37  e.printStackTrace();  38  }  39 return null;  40  }  41 //��ѯͨ�÷���  42 public List<Map<String,Object>> executeQuery(String sql,Object...params) {  43 List<Map<String,Object>> objList= new ArrayList<Map<String,Object>>();  44 Connection conn = getConnection();  45 PreparedStatement ps=null;  46 ResultSet rs=null;  47 try {  48 ps = conn.prepareStatement(sql);  49 ps = setParams(ps, params);  50 //ִ��sql  51 rs = ps.executeQuery();  52 //��ȡ��Ԫ������Ϣ  53 ResultSetMetaData metaData = rs.getMetaData();  54 //���������  55 while(rs.next()){  56 Map<String,Object> row= new HashMap<String, Object>();  57 //metaData.getColumnCount()��ȡ����  58 for (int i = 0; i < metaData.getColumnCount(); i++) {  59 row.put(metaData.getColumnLabel(i+1), rs.getObject(i+1));  60  }  61  objList.add(row);  62  }  63 } catch (SQLException e) {  64  e.printStackTrace();  65 }finally {  66 try {  67  conn.close();  68 } catch (SQLException e) {  69 // TODO Auto-generated catch block  70  e.printStackTrace();  71  }  72  }  73 return objList;  74  }  75 //��ɾ��ͨ�÷���  76 public boolean executeUpdate(String sql,Object...params) {  77 Connection conn = getConnection();  78 PreparedStatement ps=null;  79 try {  80 ps = conn.prepareStatement(sql);  81 ps = setParams(ps, params);  82 //ִ��sql  83 int ret = ps.executeUpdate();  84 if(ret>0){  85 logger.info("�����ɹ�");  86 return true;  87 }else  88  {  89 logger.info("����ʧ��");  90 return false;  91  }  92 } catch (SQLException e) {  93  e.printStackTrace();  94 }finally {  95 try {  96  conn.close();  97 } catch (SQLException e) {  98 // TODO Auto-generated catch block  99  e.printStackTrace(); 100  } 101  } 102 return false; 103  } 104 105 //订单返回 106 public Integer executeUpdateGetPK(String sql,Object...params) { 107 Connection conn = getConnection(); 108 PreparedStatement ps=null; 109 try { 110 ps = conn.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS); 111 ps = setParams(ps, params); 112 //ִ��sql 113 int ret = ps.executeUpdate(); 114 ResultSet set1 = ps.getGeneratedKeys(); 115 while(set1.next()){ 116 return set1.getInt(1); 117  } 118 119 } catch (SQLException e) { 120  e.printStackTrace(); 121 }finally { 122 try { 123  conn.close(); 124 } catch (SQLException e) { 125 // TODO Auto-generated catch block 126  e.printStackTrace(); 127  } 128  } 129 return null; 130  } 131 //��ֵͨ�÷��� 132 public PreparedStatement setParams(PreparedStatement ps,Object...params) { 133 if(params!=null){ 134 for (int i = 0; i < params.length; i++) { 135 try { 136 ps.setObject(i+1, params[i]); 137 } catch (SQLException e) { 138  e.printStackTrace(); 139  } 140  } 141  } 142 return ps; 143  } 144 }

 

转载于:https://www.cnblogs.com/Fisherman13/p/10770388.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/100955.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • webservices协议_webservice框架有哪些

    webservices协议_webservice框架有哪些Webservice三种规范•1、JAX-WSJAX-WS是JAX-RPC的演进版本,但JAX-WS并不完全向后兼容JAX-RPC,二者最大的区别就是RPC/encoded样式的WSDL,JAX-WS已经不提供这种支持。•2、JAXM&SAAJJAXM(JAVAAPIForXMLMessage)主

  • ipad写python代码用什么软件_iPad 能用来写代码吗?有哪些必备软件推荐?[通俗易懂]

    ipad写python代码用什么软件_iPad 能用来写代码吗?有哪些必备软件推荐?[通俗易懂]如果写Python我推荐pythonista,68软。pythonista还是比较基本的,文件夹,管理文件都有了。基础的代码提示也有,但是不能自动补全,要手点一下。建议买个蓝牙外设键盘,iPadpro官配的好使,这样就是一个准笔记本了。为啥说是准笔记本呢,因为iOS的应用协同太差了。git用workingcopy,编辑调试用pythonista,然后把新的从pythonista考到workin…

  • 创建eureka注册中心_微服务注册中心和网关

    创建eureka注册中心_微服务注册中心和网关目录关于SpringCloud版本单机模式Eureka注册中心搭建引入Eureka-Server依赖创建启动类添加配置高可用Eureka注册中心搭建双节点注册中心修改配置文件修改hosts文件启动测试多节点注册中心修改配置文件启动测试常见问题参考文章SpringCloud是一系列框架的集合,它利用SpringBoot的开发便利性巧…

  • 电信光纤友华PT921G,烽火HG220光猫激活成功教程关闭自带路由改桥接拨号教程[通俗易懂]

    电信光纤友华PT921G,烽火HG220光猫激活成功教程关闭自带路由改桥接拨号教程[通俗易懂]电信光纤友华PT921G光猫激活成功教程关闭自带路由改桥接拨号教程电信光猫质量烂就算了,最受不了它自带的路由还做了手脚,导致VPN用不了。不让看AV就算了,打个外服游戏总可以吧?不知道为啥,网上关于光猫改桥接的教程基本没有,搜出来的也说得很不清楚,是和谐了还是什么原因不得而知。本人也是自己自己试出来的,其实修改难度并不大,只不过那个界面搞的特奇葩特不友好罢了。废话不多说,步骤如下:

  • linux空文件夹删不掉_linux可以遍历删除空目录吗

    linux空文件夹删不掉_linux可以遍历删除空目录吗请关注本头条号,每天坚持更新原创干货技术文章。如需学习视频,请在微信搜索公众号“智传网优”直接开始自助视频学习。1.rmdir命令简介本文主要介绍rmdir命令,该命令用于删除Linux上的空目录。对于非空目录,请使用rm命令。2.rmdir命令选项-p或–parents:删除指定目录后,若该目录的上层目录已变成空目录,则将其一并删除;–ignore-fail-on-non-empty:此…

  • javascript下载文件

    javascript下载文件function DownURL(strRemoteURL,strLocalURL){ try {  var xmlHTTP=new ActiveXObject(“Microsoft.XMLHTTP”);  xmlHTTP.open(“Get”,strRemoteURL,false);  xmlHTTP.send();  var adodbStream=new ActiveXObject(“ADO

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号