如何将JDBC的增删改查操作封装成高效的长尾词方法?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1868个文字,预计阅读时间需要8分钟。
javapackage com.zuipin.until;
import java.sql.Connection;import java.sql.DatabaseMetaData;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.ResultSetMetaData;
jdbc 增删改查封装成方法package com.zuipin.until;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class DbUtil_IDUS {
//分页属性
private int currpage = 1;// 当前页
private int pagesize = 5;// 每页条数
private int recordcount = 0;// 总条数
private int pagecount = 0;// 总页数
private Connection conn = null;//链接数据库对象
private String dbname = "users";//数据库名
private int port = 3306;//端口号
private String username = "root";//数据库名
private String pwd = "root";//数据库名
/**
* 链接数据库
* @param database
* @param port
* @param name
* @param pwd
* @return
*/
public Connection connection(String database, int port, String name, String pwd) {
Connection conn=null;
try {
//1.加载驱动
Class.forName("com.mysql.jdbc.Driver");
//建立连接
String url="jdbc:mysql://192.168.0.183:"+port+"/"+database+"?useUnicode=true&characterEncoding=utf8";
conn=DriverManager.getConnection(url, name, pwd);
//4判断是否连接成功
if(!conn.isClosed()){
System.out.println("数据库连接成功");
}else {
System.out.println("数据库连接失败");
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
/**
* 获取表中主键
* @param tablename
* @return
*/
public String getPk(String tablename) {
String pk = null;
DatabaseMetaData dbmd;
try {
dbmd = this.conn.getMetaData();
ResultSet rs = dbmd.getPrimaryKeys(this.dbname, null, tablename);
if (rs.next()) {
pk = rs.getString(4);
}
} catch (SQLException e) {
e.printStackTrace();
}
return pk;
}
//添加数据
/**
* 以数组形式添加 1、sql语句 2.数组
* @param sql
* @param values
* @return
*/
public int add(String sql, Object[] values) {
int num = 0;
PreparedStatement pst;
try {
pst = this.conn.prepareStatement(sql);
int i = 0;
for (Object o : values) {
pst.setObject(++i, o);
}
num = pst.executeUpdate();
pst.close();
} catch (SQLException e) {
e.printStackTrace();
}
return num;
}
/**
* 以map添加数据 1.表名 2.map
* @param tablename
* @param m
* @return
*/
public int insert(String tablename, Map
本文共计1868个文字,预计阅读时间需要8分钟。
javapackage com.zuipin.until;
import java.sql.Connection;import java.sql.DatabaseMetaData;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.ResultSetMetaData;
jdbc 增删改查封装成方法package com.zuipin.until;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class DbUtil_IDUS {
//分页属性
private int currpage = 1;// 当前页
private int pagesize = 5;// 每页条数
private int recordcount = 0;// 总条数
private int pagecount = 0;// 总页数
private Connection conn = null;//链接数据库对象
private String dbname = "users";//数据库名
private int port = 3306;//端口号
private String username = "root";//数据库名
private String pwd = "root";//数据库名
/**
* 链接数据库
* @param database
* @param port
* @param name
* @param pwd
* @return
*/
public Connection connection(String database, int port, String name, String pwd) {
Connection conn=null;
try {
//1.加载驱动
Class.forName("com.mysql.jdbc.Driver");
//建立连接
String url="jdbc:mysql://192.168.0.183:"+port+"/"+database+"?useUnicode=true&characterEncoding=utf8";
conn=DriverManager.getConnection(url, name, pwd);
//4判断是否连接成功
if(!conn.isClosed()){
System.out.println("数据库连接成功");
}else {
System.out.println("数据库连接失败");
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
/**
* 获取表中主键
* @param tablename
* @return
*/
public String getPk(String tablename) {
String pk = null;
DatabaseMetaData dbmd;
try {
dbmd = this.conn.getMetaData();
ResultSet rs = dbmd.getPrimaryKeys(this.dbname, null, tablename);
if (rs.next()) {
pk = rs.getString(4);
}
} catch (SQLException e) {
e.printStackTrace();
}
return pk;
}
//添加数据
/**
* 以数组形式添加 1、sql语句 2.数组
* @param sql
* @param values
* @return
*/
public int add(String sql, Object[] values) {
int num = 0;
PreparedStatement pst;
try {
pst = this.conn.prepareStatement(sql);
int i = 0;
for (Object o : values) {
pst.setObject(++i, o);
}
num = pst.executeUpdate();
pst.close();
} catch (SQLException e) {
e.printStackTrace();
}
return num;
}
/**
* 以map添加数据 1.表名 2.map
* @param tablename
* @param m
* @return
*/
public int insert(String tablename, Map
"); int start = 1; int end = 10; if (this.currpage >= 7) { start = this.currpage - 5; end = this.currpage + 4; } if (this.currpage != 1) { s.append(String.format("
"); return s.toString(); } /** * 分页样式 * @return */ public String pageinfo(){ StringBuilder s = new StringBuilder(); s.append("
"); int start = 1; int end = 10; if(this.currpage>=7){ start = this.currpage-5; end = this.currpage+4; } if(this.currpage!=1){ s.append(String.format("
上一页",this.currpage-1)); } for(int i=start;i<=end;i++){ if(i>this.pagecount) break; if(this.currpage == i){ s.append(String.format("
%d",i)); continue; } s.append(String.format("
%d",i,i)); } if(this.currpage
"); return s.toString(); } //get,set方法 public int getCurrpage() { return currpage; } public void setCurrpage(int currpage) { this.currpage = currpage; } public int getPagesize() { return pagesize; } public void setPagesize(int pagesize) { this.pagesize = pagesize; } public int getRecordcount() { return recordcount; } public void setRecordcount(int recordcount) { this.recordcount = recordcount; } public int getPagecount() { return pagecount; } public void setPagecount(int pagecount) { this.pagecount = pagecount; } //默认数据库,端口号,用户名,密码 public DbUtil_IDUS() { this.conn = connection(this.dbname, this.port, this.username, this.pwd); } //自定义数据库,端口号,用户名,密码 public DbUtil_IDUS(String dbname, int port, String username, String pwd) { this.dbname = dbname; this.conn = connection(dbname, port, username, pwd); } public String szq(String username) throws ClassNotFoundException, SQLException{ String pwdd=""; Class.forName("com.mysql.jdbc.Driver"); String url="jdbc:mysql://192.168.0.183:3306/zuipin?useUnicode=true&characterEncoding=utf8"; String name="zuipin"; String pwddd="zuipin"; Connection conn=DriverManager.getConnection(url, name, pwddd); String sql="select pwd from user where username='"+username+"'"; PreparedStatement pre=conn.prepareStatement(sql); ResultSet re=pre.executeQuery(sql); if(re.next()){ pwdd=re.getString("pwd"); } return pwdd; } }

