我在运行jsp文件时,servlet中的输出语句能正常运行,显示结果为:注册成功!但是数据库中没我提交的数据,为什么,请各位帮帮忙。
我的JSP文件如下://此文件正常运行,在此省去部分代码
<%@page import="MyPackeg.zhucejava"%>
<%@page import="MyPackeg.ZhuceInsert" %>
<form id="form1" name="form1" method="post" action="servlet/ZhuceInsert">
<input type="text" name="zhucexuenian" id="zhucexuenian" />
<select name="xueqi" id="xueqi" size="1">
<option value="上学期">上学期</option>
<option value="下学期">下学期</option>
</select>
<select name="suozaibanji" id="suozaibanji">
<% Conn_DbTest zhclink=new Conn_DbTest();
ResultSet rs=zhclink.executeQuery("select ClassName from Class");
while(rs.next()){%>
<option><%=rs.getString("ClassName") %></option>
<%} %>
</select>
<input type="text" name="xuehao" id="xuehao" />我在servlet中的post方法中的代码如下://此文件编译无错,在此省去部分代码
String zhucexuenian=request.getParameter("zhucexuenian");
String xueqi=request.getParameter("xueqi");
String suozaibanji=request.getParameter("suozaibanji");
String xuehao=request.getParameter("xuehao");
String sql="insert into cheakon(Zyear,Zterm,zclass,Znum)values (zhucexuenian,xueqi,suozaibanji,xuehao)";try{
zhucejava zhuce=new zhucejava();//zhucejava为连接数据库的java类
out.print("注册成功!");
zhuce.executeUpdate(sql);
}catch(Exception e){}而我在zhucejava中的代码如下://此文件运行正常,在这里省去部分代码
public void executeUpdate(String sql){//此行省去代码
PreparedStatement pstmt=null;
try{
pstmt=conn.PrepareStatement(sql);
pstmt.addBatch();
pstmt.executeBatch();
}catch(}
}
我的JSP文件如下://此文件正常运行,在此省去部分代码
<%@page import="MyPackeg.zhucejava"%>
<%@page import="MyPackeg.ZhuceInsert" %>
<form id="form1" name="form1" method="post" action="servlet/ZhuceInsert">
<input type="text" name="zhucexuenian" id="zhucexuenian" />
<select name="xueqi" id="xueqi" size="1">
<option value="上学期">上学期</option>
<option value="下学期">下学期</option>
</select>
<select name="suozaibanji" id="suozaibanji">
<% Conn_DbTest zhclink=new Conn_DbTest();
ResultSet rs=zhclink.executeQuery("select ClassName from Class");
while(rs.next()){%>
<option><%=rs.getString("ClassName") %></option>
<%} %>
</select>
<input type="text" name="xuehao" id="xuehao" />我在servlet中的post方法中的代码如下://此文件编译无错,在此省去部分代码
String zhucexuenian=request.getParameter("zhucexuenian");
String xueqi=request.getParameter("xueqi");
String suozaibanji=request.getParameter("suozaibanji");
String xuehao=request.getParameter("xuehao");
String sql="insert into cheakon(Zyear,Zterm,zclass,Znum)values (zhucexuenian,xueqi,suozaibanji,xuehao)";try{
zhucejava zhuce=new zhucejava();//zhucejava为连接数据库的java类
out.print("注册成功!");
zhuce.executeUpdate(sql);
}catch(Exception e){}而我在zhucejava中的代码如下://此文件运行正常,在这里省去部分代码
public void executeUpdate(String sql){//此行省去代码
PreparedStatement pstmt=null;
try{
pstmt=conn.PrepareStatement(sql);
pstmt.addBatch();
pstmt.executeBatch();
}catch(}
}
//打印下日志}另外 你的注册成功在执行sql之前输出 就是报错也会输出成功
第二个select中option没有value属性
String sql="insert into cheakon(Zyear,Zterm,zclass,Znum)values ('"+zhucexuenian+"','"+xueqi+"','"+suozaibanji+"','"+xuehao+"')";
就可以了。
如果,你要插入的都是字符串类型的话应写为:
String sql="insert into cheakon(Zyear,Zterm,zclass,Znum)values ('"+zhucexuenian+"','"+xueqi+"','"+suozaibanji+"','"+xuehao+"')";
或用
String sql="insert into cheakon(Zyear,Zterm,zclass,Znum)values (?,?,?,?)"
--------------------------------------->>
String sql="insert into cheakon(Zyear,Zterm,zclass,Znum)values ('"+zhucexuenian+"','"+xueqi+"','"+suozaibanji+"','"+xuehao+"')"; 变量需要这么写
一对单引号中间一对双引号中间一对加号
如果是字段是整型则单引号可以不要
String sql="insert into cheakon(Zyear,Zterm,zclass,Znum)values (zhucexuenian,xueqi,suozaibanji,xuehao)";
改为:String sql="insert into cheakon(Zyear,Zterm,zclass,Znum)values ('"+zhucexuenian+"','"+xueqi+"','"+suozaibanji+"','"+xuehao+"')";
为什么还是插不进呀,急呀,再过几天就交东西了,求各位了
String zhucexuenian=request.getParameter("zhucexuenian");
String xueqi=request.getParameter("xueqi");
String suozaibanji=request.getParameter("suozaibanji");
String xuehao=request.getParameter("xuehao");
String sql="insert into cheakon(Zyear,Zterm,zclass,Znum)values (zhucexuenian,xueqi,suozaibanji,xuehao)";
改为:
String zhucexuenian=request.getParameter("form1.zhucexuenian");
String xueqi=request.getParameter("form1.xueqi");
String suozaibanji=request.getParameter("form1.suozaibanji");
String xuehao=request.getParameter("form1.xuehao");
String sql="insert into cheakon(Zyear,BTerm,ClassName,Sno)values('"+zhucexuenian+"','"+xueqi+"','"+suozaibanji+"','"+xuehao+"')";
但插进数据库的值是null
为什么会这样,求求各位帮帮忙。
,我想问哈是不是我的servlet调用java类时出错了,你们帮我看看嘛