- 分析person表哪些键不可以重复,我的是mobile,telephone,email这三个不能重复,且mobile为11位,tel为前3后7,email中间要有@号,都是String类型存储,直接实现自增不现实,数据早就超出了int类型的范围。
- 既然不能直接转为int类型,那就间接。分割,前面的不动,String数据的后两位进行自增,然后再拼接到一起。
以自动增长telephone为例子
public class Autotelephone {
public static void main(String[] args) {
String tel = "313-4444200";
for (int i = 0; i < 100; i++) {
tel = changeString(tel);
System.out.println(tel);
}
}
public static String changeString(String a) {
String b = a.substring(0,8);
//截取字符串后2个字符
String c = a.substring(8,a.length());
//转换为数字类型
int d = Integer.parseInt(c);
//对字符增加1,并拼接字符。
String z = b+(d+1);
return z;
}
}
其实到这应该结束了,但是在实际运行时它报错了!。。。。报的错也很有意思,我设置的是添加100条,但是实际上添加了35条左右就报错了
//自动添加账户!
@Override
protected void service(HttpServletRequest arg0, HttpServletResponse arg1)
throws ServletException, IOException {
ArrayList<Person> list = new ArrayList<Person>();
//自动添加mobile
String orignmobile = "17398901100";
ArrayList<String> mobile = new ArrayList<String>();
for(int i=40;i<100;i++){
orignmobile = ttttt.changeString(orignmobile);
mobile.add(orignmobile);
}
//自动添加tel
String origntel = "313-4444200";
ArrayList<String> telphone = new ArrayList<String>();
for(int i=40;i<100;i++){
origntel = Autotelephone.changeString(origntel);
telphone.add(origntel);
}
//自动添加email
String oriemail = "test@tt00";
ArrayList<String> email = new ArrayList<String>();
for (int i = 40; i < 100; i++) {
oriemail = AutoEmail.changeString(oriemail);
email.add(oriemail);
}
//自动添加联系人
TelbookServiceImpl serviceImpl = new TelbookServiceImpl();
for (int i = 40; i < 100; i++) {
serviceImpl.insertPerson("test", mobile.get(i), telphone.get(i), email.get(i), "洛阳", "2000-01-01");
}
}
}
Listener refused the connection with the following error: ORA-12519, TNS:no appropriate service handler found
这就是报的错误。去找了万能的度娘,在这篇CSDN中好像明白了,但实际上我并不会改,哈哈哈,因为看不懂他的语句代表什么,在哪执行。
Listener refused the connection with the following error 错误解决
暂时先放这了,回头有空解决一下,先把分页搞了!