⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 addrule.jsp

📁 基于web 动物识别系统 JavaScript
💻 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>&nbsp;</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 + -