JSP页面无法显示数据库信息???求助啊!有图有代码,求大神雪中送炭

问题描述

JSP页面无法显示数据库信息???求助啊!有图有代码,求大神雪中送炭
JSP页面显示这样:
JSP代码:

 <%@ page language=""java"" contentType=""text/html; charset=UTF-8""    pageEncoding=""UTF-8""%><%@ include file=""../base.jsp""%><!DOCTYPE html PUBLIC ""-//W3C//DTD HTML 4.01 Transitional//EN"" ""http://www.w3.org/TR/html4/loose.dtd""><html><head><meta http-equiv=""Content-Type"" content=""text/html; charset=UTF-8""><title>新闻类型列表</title>    <style type=""text/css"">    body{        background-image: url(""images/bg_newsDetailList1.jpg"");        background-position:-100px -300px;    }    .enableStyle{        background-color: ;        color:black;    }    .disableStyle{        background-color: red;        color: white;    }</style><script type=""text/javascript"">    function checkSelected(){        var flag=false;        var ids=document.getElementsByName(""ids"");        for(var i=0;i<ids.length;i++){            if(ids[i].checked){                flag=true;                break;            }        }        if(!flag){            alert(""请选择需要删除的数据!"");        }else{            if(confirm(""确定要删除选中的数据吗?"")){                document.myform.submit();            }        }    }</script></head><body>    <form name=""myform"" method=""post"" action=""newstypeservlet?op=batchDelete"">        <table border=""1"">            <tr>                <th>编号</th>                <th>类型名</th>                <th>编辑</th>                <th>删除</th>            </tr>            <c:forEach items=""${requestScope.newsTypeList }""  var=""newsType"" varStatus=""status"">            <tr style=""background-color: ${status.index%2==0?'red':'green' } "">                <td>                    <input type=""checkbox"" name=""ids"" value=""${newsType.id }""/>                    ${newsType.id }                </td>                <td>${newsType.typeName }</td>                <td><a href=""newstypeservlet?op=toEdit&id=${newsType.id }"">编辑</a></td>                <td><a href=""newstypeservlet?op=delete&id=${newsType.id }"">删除</a></td>            </tr>        </c:forEach>        <tr>            <td colspan=""4"" >                <input type=""button"" value=""批量删除"" onclick=""checkSelected()""/>            </td>        </tr>        </table>    </form></body></html>

其中base.jsp代码如下:

 <%@ page language=""java"" contentType=""text/html; charset=UTF-8""    pageEncoding=""UTF-8""%><%@ taglib prefix=""c"" uri=""http://java.sun.com/jsp/jstl/core"" %><%String path = request.getContextPath();String basePath = request.getScheme()+""://""+request.getServerName()+"":""+request.getServerPort()+path+""/"";%><base href=""<%=basePath %>"" />

Servlet代码:

 protected void doPost(HttpServletRequest request            HttpServletResponse response) throws ServletException IOException {        // System.out.println(""进入sevlet"");        request.setCharacterEncoding(""UTF-8"");// 解决Post提交时的乱码问题        String op = request.getParameter(""op"");// 注意:此处的JSP页面不放在根目录下,Servlet就无法接收到页面传来的数据,因为web.xml配置信息无法覆盖        if (""add"".equals(op)) {            addNewsType(request response);        } else if (""list"".equals(op)) {            listNewsType(request response);        } else if (""batchDelete"".equals(op)) {            batchDelete(request response);        } else if (""delete"".equals(op)) {            deleteById(request response);        }    }    // 新闻列表    private void listNewsType(HttpServletRequest request            HttpServletResponse response) throws ServletException IOException {        NewsTypeService newsTypeService = new NewsTypeService();        List<NewsType> newsTypeList = newsTypeService.findAll();        request.setAttribute(""newsTypeList"" newsTypeList);        request.getRequestDispatcher(""../listNewsType.jsp"").forward(request                response);    }    private void deleteById(HttpServletRequest request            HttpServletResponse response) throws IOException ServletException {        PrintWriter out = response.getWriter();        String idStr = request.getParameter(""id"");        if (idStr == null || """".equals(idStr)) {            out.write(""<script>alert('密码不能为空');history.back();</script>"");            return;        }        int id = Integer.parseInt(idStr);        NewsTypeService newsTypeService = new NewsTypeService();        newsTypeService.delete(id);        // 删除数据后,返回列表        listNewsType(request response);    }    private void batchDelete(HttpServletRequest request            HttpServletResponse response) throws ServletException IOException {        String[] ids = request.getParameterValues(""ids"");        NewsTypeService newsTypeService = new NewsTypeService();        newsTypeService.batchDelete(ids); // 删除数据后,返回列表        listNewsType(request response);    }

service代码:

 package com.syf.service;import java.util.List;import com.syf.dao.NewsTypeDao;import com.syf.entity.NewsType;public class NewsTypeService {    public int save(NewsType newsType) {        return new NewsTypeDao().save(newsType);    }    public int batchDelete(String[] ids) {        return new NewsTypeDao().batchDelete(ids);    }    public List<NewsType> findAll() {        return new NewsTypeDao().findAll();    }    public int delete(int id) {        return new NewsTypeDao().delete(id);    }}

DAO层代码:

package com.syf.dao;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;import com.syf.entity.NewsType;import com.syf.util.ArrayUtil;import com.syf.util.DBUtil;public class NewsTypeDao {    DBUtil dbUtil = new DBUtil();    // 保存新闻类型    public int save(NewsType newsType) {        String sql = ""insert into newstype(typeName) values (?)"";        Object[] params = { newsType.getTypeName() };        return dbUtil.executeUpdate(sql params);        // executeUpdate的返回值是一个整数,指示受影响的行数(即更新计数)    }    public List<NewsType> findAll() {        List<NewsType> newsTypeList = new ArrayList<NewsType>();        String sql = ""select * from newstype"";        ResultSet rs = dbUtil.executeQuery(sql null);        try {            while (rs.next()) {                NewsType newsType = new NewsType(rs.getInt(""id"")                        rs.getString(""typeName""));                newsTypeList.add(newsType);// 将对象放入到集合            }        } catch (SQLException e) {            e.printStackTrace();            return newsTypeList;        } finally {            dbUtil.closeAll();        }        return newsTypeList;    }    /**     * 批量删除     *      * @param ids     *            指定的ID集合     * @return     */    public int batchDelete(String[] ids) {        // TODO Auto-generated method stub        String sql = ""delete from newstype where id in(?)"";        Object[] params = { ArrayUtil.array2String(ids) };        return dbUtil.executeUpdate(sql params);    }    /**     * 根据Id进行删除     *      * @param id     * @return     */    public int delete(int id) {        String sql = ""delete from newsType where id=?"";        Object[] params = { id };        return dbUtil.executeUpdate(sql params);    }}

entity实体类代码:

 package com.syf.entity;public class NewsType {    private int id;    private String typeName;    public NewsType() {        super();    }    public NewsType(String typeName) {        super();        this.typeName = typeName;    }    public NewsType(int id String typeName) {        super();        this.id = id;        this.typeName = typeName;    }    public int getId() {        return id;    }    public void setId(int id) {        this.id = id;    }    public String getTypeName() {        return typeName;    }    public void setTypeName(String typeName) {        this.typeName = typeName;    }}

解决方案

找了好久,没找到问题出在哪,求救各位老师,谢谢

解决方案二:
首先排查是页面问题还是后台java代码问题,先把界限弄清了。
1、确定${requestScope.newsTypeList }有没有值,写法有没有问题,最后的空格去掉,都写规范了。
2、如果没有,直接request.getAttribute的方式能不能获取到。
3、如果都不行,后台list放到session中试试,看前端能不能取到
最终再看哪个环节出问题,再来针对性的解决。

解决方案三:
后台查询一下有没有得到数据库的数据,

解决方案四:
后台查询一下有没有得到数据库的数据,

解决方案五:
楼主,你的问题解决了吗,我也遇到了这个问题

时间: 2024-10-06 14:06:03

JSP页面无法显示数据库信息???求助啊!有图有代码,求大神雪中送炭的相关文章

struts2+uploadify 下获得上传的附件名乱码jsp页面和java类都是GBK格式。。。求大神解决。

问题描述 获得的附件名乱码.如果用newString(name.getByte("GBK"),"UTF-8");是可以转码,但是好像会因为奇数汉字转码导致字符遗失最后一个汉字乱码的问题...已配置过滤器为GBK.求解决啊..这个问题已经弄了好久了. 解决方案

asp.net中登录页面用户名和密码与数据库中数据进行比对出错,求大神指导!!!!

问题描述 asp.net中登录页面用户名和密码与数据库中数据进行比对出错,求大神指导!!!! dr['AID']=112100011TextBox1.Text=1121000177 dr['apassword']=245fghTextBox2.Text=123456 dr['AID']=1121000177TextBox1.Text=1121000177 dr['apassword']= 123456TextBox2.Text=123456 用户名或密码不正确,请重新输入! 这是运行时页面打印出

mysql数据库,表格中出现乱码问题。求大神指点!!

问题描述 mysql数据库,表格中出现乱码问题.求大神指点!! 我通过jdbc操作把输入的信息保存到mysql数据库的表格中,但是表格中出现了乱码,本来是要显示中文的!表和库的编码都是utf8啊!还是哪里还要设置什么吗?求大神指点 万分感谢!! 解决方案 http://www.cnblogs.com/stansonwilliam/archive/2012/10/28/2743203.html 解决方案二: 表的字段也要设utf-8 解决方案三: 看下jdbc程序往里边存的时候是不是已经乱码了 解

怎么调用 ace++接口-android怎么上传图片到FACE++ 接口返回年龄信息,我已经有账号,求大神指点 小弟感激不尽

问题描述 android怎么上传图片到FACE++ 接口返回年龄信息,我已经有账号,求大神指点 小弟感激不尽 android怎么上传图片到FACE++ 返回年龄信息,我已经有账号,求大神指点 小弟感激不尽 解决方案 http://www.cnblogs.com/mainroadlee/archive/2013/10/26/android_sdk_face_detection.html 解决方案二: FACE++的作用就是把图片上的人物识别出来,然后返回给你一个json字符串,里面包括一些列的信息

MFC下socket的收到的数据是如何区别显示在不同的窗口中的呢,求大神们指导!

问题描述 MFC下socket的收到的数据是如何区别显示在不同的窗口中的呢,求大神们指导! MFC下socket的收到的数据是如何区别显示在不同的窗口中的呢,本人是MFC,小菜鸟!求大神们指导! 解决方案 收到数据了,自己按格式得到不同字段数据,然后就是操作窗口各个控件,把数据显示上去.

c++ 写一个查询系统 ,不用数据库,从txt中读取数据,求大神指点啊 ...

问题描述 c++ 写一个查询系统 ,不用数据库,从txt中读取数据,求大神指点啊 ... 解决方案 你首先的规范text 文档的数据格式 ,然后通过文件流从文件中读取数据 解决方案二: 直接用ifstream读入,然后getline一行行读取,然后可以用sscanf格式化提取(因为你是用,分隔的) 可以把数据都存储下来(存在结构体数组或者vector都行) 之后再实现查找的功能

设计一个android引导页面的动画,最好是透明渐变动画效果,求大神帮忙!

问题描述 设计一个android引导页面的动画,最好是透明渐变动画效果,求大神帮忙! 设计一个android引导页面的动画,最好是透明渐变动画效果,大概样式就像APP微信精选那个引导页面那种样式,求大神帮忙给个Demo! 解决方案 之前回复的都回复不了,现在重新再给你回复一遍吧,首先创建三个Fragment,我现在给你举一个例子: public class WelcomeFragment1 extends Fragment { @Override public void onCreate(Bun

我的妈呀!安装VS 2013自带的那个数据库连接字串符到底怎么写?求大神

问题描述 我的妈呀!安装VS 2013自带的那个数据库连接字串符到底怎么写?求大神 我的妈呀!安装VS 2013自带的那个数据库连接字串符到底怎么写?求大神 解决方案 就是那个 LOCALDB 轻型数据库 string constr = @"Provider=SQLOLEDB;Data Source=np:.pipeLOCALDB#9C467282tsqlquery;Initial Catalog=newsqlstu;Integrated Security=SSPI"; 连接方式用的O

JSP刷新时加载VB控件,浏览器报崩溃,求大神指点.....

问题描述 有个JSP页面,每次刷新时加载vb写的硬盘录像机控件,有时会报浏览器崩溃,求大神指点...