目录

  • 1、通过数据库连接池,获得查询结果集,但是无法取出数据
  • 2、过滤器放行出错
  • 3、德鲁伊连接池获取不到连接
  • 4、过程中遇到其他问题,值得一提的是一定要注意文件所处的文件夹


1、通过数据库连接池,获得查询结果集,但是无法取出数据

控制台报错:java.sql.SQLException: Before start of result set
出错代码

//获取一个连接
        Connection conn = getConnection();
        System.out.println("从连接池获取一个连接成功!");
        PreparedStatement state = null;
        ResultSet rs = null;
        try {
            //预编译处理
            state = conn.prepareStatement("select * from user where username =? and password =?");
            //填充SQL语句
            state.setString(1,username);
            state.setString(2,password);
            rs = state.executeQuery();
            //生成对象
            User user = new User(rs.getString("username"), rs.getString("password")
                    , rs.getInt("count"));
            return user;
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        } finally {
            //释放资源
            close(conn,state,rs);
        }

原因:指针处于第一个结果集之前,取结果得先调用next()方法。

java碰到的bug java遇到的问题_mysql

2、过滤器放行出错

出错代码:

//放行资源
        if (requestURI.endsWith("/")||requestURI.endsWith("/index.jsp")||requestURI.endsWith("/product.jsp")||
                requestURI.endsWith("/login.jsp")|| requestURI.endsWith("/error.jsp")||
                requestURI.endsWith("/comment")||requestURI.endsWith("/comment.jsp")||
                requestURI.endsWith("/success.jsp")||
                requestURI.endsWith("/sign.jsp")||requestURI.endsWith("/notlogin.jsp")||
                loginName!=null){
            //调取下一个servlet或filter
            filterChain.doFilter(servletRequest,servletResponse);

原因:**requestURI.endsWith("/sign.jsp")requestURI.endsWith("/sign")**不一样,
.jsp和servlet弄混了,这种情况一般就是自己忘掉了加某个放行的条件,记得加上。

3、德鲁伊连接池获取不到连接

控制台报错:NullPointerException:The url cannot be null
网页报错:
HTTP Status 500 – Internal Server Error
Type Exception Report
Description The server encountered an unexpected condition that prevented it from fulfilling the request.
Exception
java.lang.NullPointerException

我遇到的是配置文件出错,一旦是获取连接不成功多半都是配置文件问题,我这个就可能是手残不小心按到了一个空格。。。。。。
错误示范:
druid.properties文件

url=jdbc:mysql://localhost:3306/mytest?useUnicode=true&characterEncoding=utf-8
username=root
password=123456
driverClassName=com.mysql.jdbc.Driver
initialSize=5
maxActive=10
minIdle=5
maxWait=3000

你什么都看不出来

请看截图:

java碰到的bug java遇到的问题_mysql_02


删除之后天空都变晴朗了

4、过程中遇到其他问题,值得一提的是一定要注意文件所处的文件夹

我遇到了如下问题

web.xml移出WEB-INF文件夹

java碰到的bug java遇到的问题_java_03


lib文件夹目录错误,创建多留个心眼,如果还是有一直导包错误问题的可以参考如下修改过程

java碰到的bug java遇到的问题_java碰到的bug_04


1、选择这个模式,就是将本地文件推送到tomcat下进行部署,

2、这个是推送到tomcat下文件的路径形式,web项目必须有WEB-INF文件夹,文件夹下面需要有class文件夹和lib文件,分别放编译后的class文件,和依赖的jar包

3、这个地方就是idea发现了你的项目是一个web项目,可以被引进来的项目

所以在部署的时候,先选择1,在选择3,最后看2的结构是不是符合要求

一杯茶,一包烟,一个BUG改一天······