免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1253 | 回复: 2
打印 上一主题 下一主题

jsp学习中的四个问题,请指点。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-11-29 12:05 |只看该作者 |倒序浏览
<%String sql2="Select * from product where pro_name='news' order by id desc";
        int i;
        ResultSet rs2 = stmt.executeQuery(sql2);
        i=0;
        while((i<3) && (rs2.next())){
                String id=rs2.getString("id");
                String title=rs2.getString("title");
                String time=rs2.getString("pub_date");
%>
<tr>
   <td width="5%"><div align="center"><img src="image/20.jpg" width="6" height="9"></div></td>
   <td width="70%"><a href="news_more.jsp?id=<%=id%>" class="2"><%=title%></a></td>
   <td width="25%" style="font-size=12px">[<%=time%>]</td>
</tr>
<%  i++;
     }
     rs2.close();
  %>
我的一段代码,有几个问题,请教大家。
1、用这句String time=rs2.getString("pub_date");获得的日期是这种样子:2005-04-13 00:00:00.0但是,我想让他2005-04-13这样显示,我用的是 sql server的数据库,数据库中的日期字段是small datetime型的。四位的长度。
2、还一个问题就是如何释放rs   
3、还有jsp中的字符串替换函数和字符串替换函数是什么,以及他的用法。
下面是news_more.jsp的内容:
<%
String id1=request.getParameter("id");
if(id1==""){id1="0";}
int id2=Integer.parseInt(id1);
%>
<%
  String sql1="select * from product where id="+id2;
  ResultSet rs1 = stmt.executeQuery(sql1);
  String title=rs1.getString("title");
  String img=rs1.getString("img");
  String pub_date=rs1.getString("pub_date");
  String content=rs1.getString("content");
%>
4、看看上面两段代码,为什么会有错误,好象是rs1的指针的错误,用int row = rs5.getRow();返回的row为0。把变量id2换成已存在的记录,下面的获取字段的值 String title=rs1.getString("title");也不给执行,好象是rs1指针已经指到了末尾。为什么会出现这样的情况。
下面帖出错误:
500 Servlet Exception
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Invalid
operation for the current cursor position.
        at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
        at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
        at com.microsoft.jdbc.base.BaseResultSet.validateCursorPosition(Unknown Source)
        at com.microsoft.jdbc.base.BaseResultSet.getString(Unknown Source)
        at com.microsoft.jdbc.base.BaseResultSet.getString(Unknown Source)
        at _qiye._news_0more__jsp._jspService(/qiye/news_more.jsp:48)
        at com.caucho.jsp.JavaPage.service(JavaPage.java:75)
        at com.caucho.jsp.Page.pageservice(Page.java:549)
        at com.caucho.server.dispatch.PageFilterChain.doFilter(PageFilterChain.java:184)
        at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:149)
        at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:221)
        at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:257)
        at com.caucho.server.port.WorkerThread.run(WorkerThread.java:123)
        at java.lang.Thread.run(Thread.java:534)


--------------------------------------------------------------------------------
Resin 3.0.0-beta (built Thu Feb 13 18:21:13 PST 2003)

[ 本帖最后由 tingsking 于 2005-11-29 13:22 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2005-11-29 15:02 |只看该作者
  1. <%
  2.   String sql1="select * from product where id="+id2;
  3.   ResultSet rs1 = stmt.executeQuery(sql1);
  4. rs1.next();
  5.   String title=rs1.getString("title");
  6.   String img=rs1.getString("img");
  7.   String pub_date=rs1.getString("pub_date");
  8.   String content=rs1.getString("content");
  9. %>
复制代码

论坛徽章:
0
3 [报告]
发表于 2005-11-29 22:14 |只看该作者
1.字符串操作,把后面的时间去掉既可

2.rs.close()释放

3.好好看一下String类。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP