
如果你的处理页面就是指 functionjsp 这个的话 那应该是你没有解码 所以你的数据全是乱码 而你的数据库代码又没有错误只是搜索不到结果 那很显然 什么都没有 很正常 ,你试着在你获取到上个页面参数前 加上这段代码 requestsetCharacterEncoding("gb2312"); 进行解码 我想应该就可以了!
整个过程基本实现是这样的,这个过程跨域任何框架,与底层应用框架无关。1 jsp页码中用户发出一个请求(可以是能够发出请求的任何方式)到一个能够处理请求的组件,我们称之为控制器(servlet 或 action 等)2 控制器调用业务层组件方法,业务层组件方法中调用dao(数据访问层)方法(此方法中实现从数据库中读取目标数据,通常封装为一个javabean对象,我们称之为实体bean)3 控制器获得封装数据库表的数据后,将其存储在作用域中,定位到要显示数据的jsp页面4 目标jsp页码中通常使用自定义标签实现在jsp的特定位置读取数据并显示
建立数据库连接
调用方法,比如list<User> userlist = DBfindAll(), reqsetAttribute("list",userlist)
jsp部分:<c:forEach items="list" var="user">
<td>${userid}</td> //显示User对象的id属性
</c:forEach>
用到forEach,要引入jstljar
debug一下后台代码,
先查看int s = sqlexecuteUpdate(sql2); 看执行这句代码时,sql2生成的具体的sql 语句是什么?看看各数据列值是否为null
如果为null,检查你的requestgetPatameter("bookName")等数据项是否拿到页面数据
如果没有拿到,那就继续检查前台页面提交请求时,传递给后台的数据是否为null或空
一步步检查下,问题应该很快就可以解决了。
从数据库里查询的语句有问题吧,mysql是?代表变量,oracle的查询语句可能不对,建议先查询所有的吧。select from 表名。 and 前面加空格,对,以前碰到过这个问题
<%
//JSP页面直接访问数据库
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try{
ClassforName("JDBC驱动");
conn = DriverManagergetConnection("url", "username", "password");
stmt = conncreateStatement();
rs = stmtexecuteQuery("select factor, ratio from 表名 where id=1");
while(rsnext()){
String factor = rsgetString("factor");
String ratio = rsgetString("ratio");
%>
factor :<%=factor %>
ratio :<%=ratio %>
<%
}
}catch(Exception e){
eprintStackTrace();
}finally{
try{
if(rs != null) rsclose();
if(stmt != null) stmtclose();
if(conn != null) connclose();
}catch(Exception e1){
e1printStackTrace();
}
}
%>
修改 驱动、url、username、password、表名、字段名成你应用的相应数据,然后将这些代码加入到你的jsp页面,就可以在jsp页面直接读取到数据库中的对应表指定字段的数据了,祝你好运!
1、jsp页面写小脚本可以得到
2、可以是使用ajax技术 异步进行访问
3、可以配置webxml 里面配置好servlet
4、使用框架的话,就直接用框架技术来得到
总之,方法很多,看你是要采用哪种方法来做
以上就是关于在jsp页面中,想往数据库里面插入数据,tomcat不显示报错,但是却在数据库中查不到插入的数据全部的内容,包括:在jsp页面中,想往数据库里面插入数据,tomcat不显示报错,但是却在数据库中查不到插入的数据、在jsp中怎么获取显示数据库的信息、如何在jsp页面获取数据库中的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)