📄 addrule.jsp
字号:
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>加入</title>
</head>
<body>
<%
int prenum=0;
try{prenum=Integer.parseInt(request.getParameter("num"));}
catch(Exception e){prenum=Integer.parseInt(request.getParameter("hiddenField"));}
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url = "jdbc:mysql://localhost:3306/animal?user=root&password=";
Connection conn = DriverManager.getConnection(url);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql=new String ();
String rulesql="insert into rb values(";
%>
<form id="form2" name="form2" method="post" action="addrule.jsp">
<label>增加新事实</label>
<%
ResultSet rstemp;
String ss="请输入规则";
String s=new String ();
int num=0;
int i=0;
sql="select distinct rid from rb order by rid desc;";
rstemp=stmt.executeQuery(sql);
rstemp.first();
int rulenum=rstemp.getInt(1);
rulenum++;
sql="select *from db;";
rstemp=stmt.executeQuery(sql);
rstemp.last();
num=rstemp.getRow();
int resultnum=num+prenum+1;
while(i<prenum)
{
s=request.getParameter("fact"+i);
if(s!="" && s!=null)
{ sql="select *from db where fact='"+s+"'";
rstemp=stmt.executeQuery(sql);
rstemp.last();
//out.print(rstemp.getRow());
if(rstemp.getRow()==0) ;
else {
resultnum--;
}
}
else {ss="";}
i++;
}
s=request.getParameter("fact");
sql="select *from db where fact= '"+s+"'";
rstemp=stmt.executeQuery(sql);
rstemp.last();
if (rstemp.getRow()!=0)resultnum=rstemp.getInt(1);
i=0;
while(i<prenum)
{
%>
<table width="415" border="0" align="center">
<tr>
<td width="172" height="45"><label>前件 <%=i%></label></td>
<td width="214"><input type="text" name="fact<%=i%>" id="fact<%=i%>" /></td>
</tr>
</table>
<%
s=request.getParameter("fact"+i);
if(s!="" && s!=null)
{
sql="select *from db where fact='"+s+"';";
//out.print(sql);
rstemp=stmt.executeQuery(sql);
rstemp.last();
//out.print(rstemp.getRow());
if(rstemp.getRow()==0) {
num++;
rulesql="insert into rb values(";
rulesql+=rulenum+","+num+","+resultnum+");";
String in="insert into db values("+num+",'";
ss="";
ss+=s;
in+=ss+"',0);";
stmt.execute(in);
sql="";}
else {
num++;
rulesql="insert into rb values(";
int tt=rstemp.getInt(1);
rulesql+=rulenum+","+tt+","+resultnum+");";
sql="select *from rb where preid="+tt+" and resid="+resultnum+";";
}
if(sql==""){sql="select *from rb where preid="+num+" and resid="+resultnum+";";}
else num--;
/*out.print(sql);%><br /><%*/
rstemp=stmt.executeQuery(sql);
rstemp.last();
if(rstemp.getRow()==0) stmt.execute(rulesql);
else {
int rt=rulenum;
rulenum--;
sql="update rb set rid="+rulenum+" where rid= "+rt;
stmt.execute(sql);
}/*out.print(rulesql);%><br /><%*/
}
else {ss="";}
out.print(ss);
%> <%i++;}%>
<table width="415" border="0" align="center">
<tr>
<td width="172" height="45"><label>结论</label></td>
<td width="214"><input type="text" name="fact" id="fact" /></td>
</tr>
<tr>
<td height="42"><br />
是否为目标事实</td>
<td><label>
<input type="checkbox" name="isdes" id="isdes" value="1" />
</label></td>
</tr>
</table>
<%
s=request.getParameter("fact");
num=0;
sql="select *from db;";
rstemp=stmt.executeQuery(sql);
rstemp.last();
num=rstemp.getRow();
int is=0;
try{
is=Integer.parseInt(request.getParameter("isdes"));
}
catch(Exception e){
is=0;
}
//out.print(is==1);
if (is!=1 && is!=0) out.print("error");
else{
if(s!="" && s!=null)
{
sql="select *from db where fact='"+s+"' and isdes="+is;
rstemp=stmt.executeQuery(sql);
rstemp.last();
if(rstemp.getRow()==0){
sql="select *from db where fact='"+s+"'";
rstemp=stmt.executeQuery(sql);
rstemp.last();
if(rstemp.getRow()!=0){sql="update db set isdes=1 where fact='"+s+"'";stmt.execute(sql);}
else{
num++;
String in="insert into db values("+num+",'";
ss="";
ss+=s;
in+=ss+"',"+is+");";
//out.print(in);
stmt.execute(in) ;
}
}
else resultnum--;
}
else {ss="";}
out.print(ss);
}
%>
<p> </p>
<label> </label>
<table width="61" border="0" align="center">
<tr>
<td width="84"><input type="submit" name="button" id="button" value="提交" /></td>
</tr>
</table>
<label><br />
<input type="hidden" name="hiddenField" id="hiddenField" value="<%=prenum%>"/>
<br />
</label>
</form>
<form id="form1" name="form1" method="post" action="">
<a href="/animal/index.jsp">返回</a>
<label></label>
</form>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -