编写jdbc数据库时留下的工具方法分享
public class ListPage {
/**
* 自制分页小插件
* @param list//传过来你需要分页的数据
* @param one//从第多少开始分页
* @param two//取多少
* @param <E>//泛型你传给我什么类型我就返回什么类型
* @return
*/
public static <E> List<E> Lists(List<E> list, int one, int two){
ArrayList<E> lists = new ArrayList<>();
for (int i = one; i < list.size() ; i++) {
if(i == (two+one)){
break;
}
lists.add(list.get(i));
}
return lists;
}
}
/**
*
* sql:为数据库语句
* @param sql:数据库语句
* @param obj:字段
* @return String=>返回字符串
* @author 阿喜!
*/
public static String setString(String sql,Object obj,Class clazz) {
Class bookbean = clazz;
String[] stri = new String[1000];
int a = 0;
try {
Field[] fs = bookbean.getDeclaredFields();//获取所有属性
for (int i = 0; i < fs.length; i++) {
Field f = fs[i];
f.setAccessible(true);//设置属性是可以访问的
Object val = null;// 得到此属性的值
val = f.get(obj);
if (val != null) {
Object s = fs[i].getType().getTypeName();
if (s == "boolean") {
System.out.println(val);
if (val == "true")
stri[a] = String.valueOf(1);
else
stri[a] = String.valueOf(0);
} else {
stri[a] = String.valueOf(val);
}
a++;
}
}
} catch (IllegalAccessException e) {
e.printStackTrace();
}
return setString(sql,stri);
}
/**
*
* @param sql:数据库语句
* @param obj:bean数据
* @param clazz:bean类型
* @param str:条件
* @return String=>返回字符串
* @author 阿喜!
*/
public static String setString(String sql,Object obj,Class clazz,Object str) {
/*String sql ="delete from book where bid = ?";*/
Class bookbean = clazz;
String[] stri = new String[1000];
int a = 0;
try {
Field[] fs = bookbean.getDeclaredFields();//获取所有属性
int i;
for (i = 0; i < fs.length; i++) {
Field f = fs[i];
f.setAccessible(true);//设置属性是可以访问的
Object val = null;// 得到此属性的值
val = f.get(obj);
if (val != null) {
System.out.println(val);
stri[a] = String.valueOf(val);
a++;
}
}
stri[i] = String.valueOf(str);
} catch (IllegalAccessException e) {
e.printStackTrace();
}
return setString(sql,stri);
}
/**
*
* @param sql:数据库语句
* @param str:条件数据
* @return String=>返回字符串
* @author 阿喜!
*/
public static String setString(String sql,Object ... str){
StringBuffer chars = new StringBuffer(sql);
StringBuffer sqls = new StringBuffer();
int a = 0;
for (int i = 0; i <chars.length() ; i++) {
if(str[a] == null)
break;
if(chars.charAt(i) =='?'){
chars.deleteCharAt(i);
String str1 = chars.length() > i? String.valueOf(chars.charAt(i)) :" ";
String st =str[a].toString().trim();
Pattern pattern =Pattern.compile("^-?\\d+(\\.\\d+)?$");
if(pattern.matcher(st).matches()){
sqls.append( str[a] + str1);
}else if (st == ""){
System.out.println("wwww");
}else {
sqls.append("'" + str[a] + "'" + str1);
}
a++;
}
else
sqls.append(chars.charAt(i));
}
return sqls.toString();
}
public static String[] setString(String sql,Object[][] str) {
String[] strss = new String[str.length];
int i = 0;
for (Object[] s : str) {
System.out.println(s);
String sqls = setString(sql, s);
strss[i] = sqls;
i++;
}
return strss;
}
本站主要用于,日常笔记的记录,和生活日志。本站不保证所有内容信息可靠!(大多数文章属于搬运!)如有版权问题!请联系我立即删除“abcdsjx@126.com”