哪有你这样写程序的,所有的处理代码都写在jsp里,所有人都想着尽量让jsp里没java代码呢!
处理代码写到servlet文件中,jsp用jstl标签显示就行了!
500错误是服务器响应错误,你把错误贴出来看看
JSP连接SQL数据库实现查找(支持模糊查找,查找年龄段),插入信息<实例>
<h2>学生信息查询</h2>
<form method="POST" action="Namejsp">
<h4>按姓名查找(支持模糊查询)</h4>
<table bgcolor="#CCCCCC">
<tr>
<td>查找姓名</td>
<td><input type="text" name="name" size="15" /></td>
<td><input type="submit" value="查找"></td>
</tr>
</table>
</form>
<br/>
<form method="POST" action="Agejsp">
<h4>按年龄查找</h4>
<table border="1" bgcolor="#CCCCCC">
<tr>
<td>查找年龄</td>
<td><input type="text" name="agemin" size="5" /></td>
<td>到</td>
<td><input type="text" name="agemax" size="5" /></td>
<td><input type="submit" value="查找"></td>
</tr>
</table>
</form>
<form action="Insertjsp" method="POST">
<h4>插入信息到表中</h4>
<table border="1" bgcolor="#cccccc">
<tr>
<td>姓名</td>
<td><input type="text" name="name" /></td>
</tr>
<tr>
<td>性别</td>
<td><input type="text" name="sex" /></td>
</tr>
<tr>
<td>年龄</td>
<td><input type="text" name="age" /></td>
</tr>
<tr>
<td>系别</td>
<td><input type="text" name="dept" /></td>
</tr>
<tr>
<td><input type="submit" value="插入" /></td>
<td><input type="reset" value="重置" /></td>
</tr>
</table>
</form>
</center>
</body>
</html>
sql="INSERT into typetable(id,type,num,level) values(tid,ttype,tnum,tlevel)";
我晕这样你能插进去啊
sql="INSERT into typetable(id,type,num,level) values('"+tid+"','"+ttype+"','"+tnum+"','"+tlevel+"')";
再看一下数据类型要是是整型的话就把上面单引号删的了
你的SQL语名怎么这样写的,
String sql="insert into tb-new(title,date,family,author,content)values(,,,,)";
如果你的处理页面就是指 functionjsp 这个的话 那应该是你没有解码 所以你的数据全是乱码 而你的数据库代码又没有错误只是搜索不到结果 那很显然 什么都没有 很正常 ,你试着在你获取到上个页面参数前 加上这段代码 requestsetCharacterEncoding("gb2312"); 进行解码 我想应该就可以了!
首先是数据库连接代码类:
然后在你的jsp页面写上调用数据连接类的增删改查就可以了。
不懂hi我
jsp页面中
<%
String sqlgetServiceId="select eid from eip_service e where eservice_name_en='"+serviceNamesubstring(serviceNamelastIndexOf("_")+1)+"' and eservice_version=10";
int sid=BaseDBqueryId(sqlgetServiceId, null);
%>
BaseDBjava
import javasqlConnection;
import javasqlDriverManager;
import javasqlPreparedStatement;
import javasqlResultSet;
import javasqlSQLException;
import javautilregexMatcher;
import javautilregexPattern;
public class BaseDB {
public static String URL = "jdbc:oracle:thin:@192168174189:1521:soadb"; //版本管理ERP数据库配置
public static String NAME = "SVMDEV";//用户名
public static String PWD = "SVMPWD";//密码
public static PreparedStatement ps =null;
public static ResultSet rs =null;
public static Connection connection=null;
//获取数据库连接信息
public static Connection getConnection() {
try {
ClassforName("oraclejdbcOracleDriver");
if (connection==null) {
connection=DriverManagergetConnection(URL, NAME, PWD);
}
} catch (ClassNotFoundException e) {
eprintStackTrace();
} catch (SQLException e) {
eprintStackTrace();
}
return connection;
}
//查询数据,根据相关信息查询得到当前服务的某个需要的id
public static int queryId(String sql,String parameter[] ) {
int getId=0;
try {
connection=getConnection();
ps=connectionprepareStatement(sql);
if (parameter!=null) {
for (int i = 1; i <=parameterlength; i++) {
pssetString(i,parameter[i-1]);
}
}
rs=psexecuteQuery();
if(rsnext()&&rs!=null){
getId=rsgetInt(1);
}
} catch (SQLException e) {
eprintStackTrace();
}finally{
closeAll(ps, rs, connection);
}
return getId;
}
//修改数据
public static int updateData(String sql,String parameter[] ) {
int count=0;
try {
connection=getConnection();
ps=connectionprepareStatement(sql);
if (parameter!=null) {
for (int i = 1; i <=parameterlength; i++) {
pssetString(i,parameter[i-1]);
}
}
count=psexecuteUpdate();
} catch (SQLException e) {
eprintStackTrace();
}finally{
closeAll(ps, rs, connection);
}
return count;
}
//插入数据
public static int insertData(String sql,String parameter[]) {
int num=0;
try {
connection=getConnection();
ps=connectionprepareStatement(sql);
if (parameter!=null) {
for (int i = 0; i <parameterlength; i++) {
pssetString(i+1,parameter[i]);
}
}
num=psexecuteUpdate();
} catch (Exception e) {
eprintStackTrace();
}finally{
closeAll(ps,null,connection);
}
return num;
}
//关闭所有
public static void closeAll(PreparedStatement ps,ResultSet rs,Connection connection) {
try {
if (ps!=null) {
psclose();
}
} catch (Exception e2) {
try {
if (rs!=null) {
rsclose();
rs=null;
}
} catch (Exception e3) {
try {
if (connection!=null) {
//connectionclose();
//connection=null;
}
} catch (Exception e4) {
e4printStackTrace();
}
}
}
}
}
原因有如下可能:
1、你后台接收表单field的参数设置成了数值型;
2、你的数据库连接映射表把保存的参数设置成了数值类型的;
3、你数据库的字段定义,定义成了数值型的;
4、你的表单传数据语法有错,什么叫“如果不是从表单获取的数据”,用JSP如果不是用表单传数据,那只有可能用的是request、session或者application这些传,这些接收到的值可转换成任何你想要的类型,所以当然没问题,表单传值要考虑到对应的field名命名和类型是否正确;
5、更有可能是你的数据库插入语句有问题;
逐个、逐个原因排除吧。
以上就是关于JSP表单向MYSQL插入数据失败全部的内容,包括:JSP表单向MYSQL插入数据失败、jsp连接sql数据库,并用jsp把数据导入数据库中、JSP 向数据库表插入数据出错等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)