关于java后台数据库的连接(增删改查)的方法集…
2018-06-18 00:40:41来源:未知 阅读 ()
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<Object> list) {
try {
pst=getConnection().prepareStatement(sql);
if(list.size()>0) {
for(int i=0;i<list.size();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 <T>List<T> getQuery(String sql,List<Object> list,Class clazz){
List<T> li=new ArrayList<T>();
try {
pst=getConnection().prepareStatement(sql);
if(list.size()>0) {
for(int i=0;i<list.size();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;
}
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 国外程序员整理的Java资源大全(全部是干货) 2020-06-12
- 2020年深圳中国平安各部门Java中级面试真题合集(附答案) 2020-06-11
- 2020年java就业前景 2020-06-11
- 04.Java基础语法 2020-06-11
- Java--反射(框架设计的灵魂)案例 2020-06-11
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash