java 后台数据库_关于java后台数据库的连接(增删改查)的方法集合

Connection conn=null;

PreparedStatement pst=null;

ResultSet rs=null;

//连接数据库

public Connection getConnection() {

try {

Class.forName("com.mysql.jdbc.Driver");

conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/monkeye?useUnicode=true&characterEncoding=UTF-8", "root", "123456");

//?后面可以加上编码格式,设置setUnicode=true&characterEncoding=UTF-8

}catch(Exception e){

e.printStackTrace();

}

return conn;

}

//关闭数据库的连接

public void getClose(ResultSet rs,PreparedStatement pst,Connection conn) {

try {

if(rs!=null)rs.close();

if(pst!=null)pst.close();

if(conn!=null)conn.close();

}catch(Exception e) {

e.printStackTrace();

}

}

//数据库的增删改方法集合

public boolean getUpdate(String sql,List list) {

try {

pst=getConnection().prepareStatement(sql);

if(list.size()>0) {

for(int i=0;i

pst.setObject(i+1, list.get(i));//pst从下标1开始,list从下标0开始

}

}

int num=pst.executeUpdate();

if(num>0) {

return true;

}

} catch (SQLException e) {

e.printStackTrace();

}

return false;

}

//数据库的查询方式集合

public List getQuery(String sql,List list,Class clazz){

List li=new ArrayList();

try {

pst=getConnection().prepareStatement(sql);

if(list.size()>0) {

for(int i=0;i

pst.setObject(i+1, list.get(i));

}

}

rs=pst.executeQuery();

ResultSetMetaData rsm=rs.getMetaData();

int column=rsm.getColumnCount();

while(rs.next()) {

Object obj=clazz.newInstance();

for(int i=1;i<=column;i++) {

String name=rsm.getColumnName(i);

Object o=rs.getObject(i);

Field f=clazz.getDeclaredField(name);   //通过名字映射获取属性

f.setAccessible(true);

f.set(obj, o);  //将属性o赋给obj对象

}

li.add((T)obj);

}

} catch (Exception e) {

e.printStackTrace();

}

return li;

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值