前面写过一篇生成insert语句的博客,今天把CRUD的都完善了一下,需要的上次写的获取实体信息的类,这里就不贴出来了【点击打开查看】
下面是完整的代码:
package tan.code.utils;
import java.util.List;
import java.util.Map;
/**
* 简单的SQL语句拼装类 ;要求数据库表名及列命和实体保持一致;
*
* @author Mr_Tank_
*
* @param
*/
public class SQLStringHelper {
private EntityHelper entityHelper = new EntityHelper();
/**
* 根据传入的实体生成Insert SQL 句
*
* @param entity
* @return 拼接好的sql语句
*/
@SuppressWarnings("unchecked")
public String createInsert(T entity) {
String sql = "Insert into ";
String column = ""; // 列
String c_values = ""; // 列值
List
测试【其中可以使用任意实体类替代测试代码里面的的Tutor类】:
@Test
public void test() {
// fail("Not yet implemented");
Tutor tutor = new Tutor();
tutor.setId(3);
//tutor.setTitle("寻找一 初三物理 期家教");
tutor.setProvince("广西壮族自治区");
tutor.setCity("桂林");
tutor.setRegion("朝阳区");
//tutor.setPatriarch("王先生");
tutor.setPhone("139772109981");
tutor.setGrade("初三");
tutor.setSubject("物理");
tutor.setPay(50);
SQLStringHelper sqlStringHelper = new SQLStringHelper();
System.out.println(sqlStringHelper.createInsert(tutor));
System.out.println(sqlStringHelper.createDelete(tutor, 1));
System.out.println(sqlStringHelper.createSelect(tutor));
System.out.println(sqlStringHelper.createUpdate(tutor, 2));
}
测试结果:
Insert into Tutor (subject,grade,pay,phone,browse,province,city,region,wb_num) values ('物理','初三','50.0','139772109981','0','广西壮族自治区','桂林','朝阳区','0');
delete from Tutor where id=1;
select * from Tutor where id=3
update Tutor set subject='物理',grade='初三',pay='50.0',phone='139772109981',browse='0',province='广西壮族自治区',city='桂林',region='朝阳区',wb_num='0' where id='2'
以上只是本人的一些尝试,如有不足之处,请指出。