广告
淘宝内部优惠券
当前位置: 开发异常方案库» Web 开发 » 求助,关于构造方法的引用

求助,关于构造方法的引用

开发异常方案库  收集整理于:2020-05-27 19:36:00  浏览:66次
快崩溃了,在家里做毕设一个bug能卡一天。。这都什么时候了毕业论文老师还不让我开始写。。请前辈们教教我 问题如下 org.apache.jasper.JasperException: Unable to compile class for JSP:  JSP文件:[/./showhistory.jsp] 的第 [56] 行发生了一个错误 The constructor History(String, String, float, float, float, float, Date, String) is undefined
package floyd;
import java.util.Date;
public class History {
   public   int historyId;
   public	String username;
   public	float length_preference;
   public	float traffic_preference;
   public	float time_preference;
   public	float crossing_preference;
   public   String  datetime;
   public   String historypath;
	@Override
	public String toString() {
		return "History [username=" + username + ", length_preference=" + length_preference + ", traffic_preference="
				+ traffic_preference + ", time_preference=" + time_preference + ", crossing_preference="
				+ crossing_preference + "]";
	}
	public History(String a,
	float b,
	float c,
	float d,
	float e){
		 
		 username = a;
		 length_preference = b;
		 traffic_preference = c;
		 time_preference = d;
		crossing_preference = e;
	}
	public History(
			int  a ,
			String b,
			float c,
			float d,
			float e,
			float f,
			String g,
			String h
			){
		         historyId  = a;
				 username = b;
				 length_preference = c;
				 traffic_preference = d;
				 time_preference = e;
				crossing_preference = f;
				 datetime    = g;
				 historypath = h;
				   
			}
	public History(){
	}
}
/code]
[code=html]
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"
     import="java.sql.*"
     import="java.util.*"
      import="floyd.*"
    %>
<html>
<head>
<!-- 	<link rel="stylesheet" href="/CarControllSystem/layui/layui/css/layui.css"/> -->
<!-- 	<script type="text/javascript" src="/CarControllSystem/layui/layui/layui.all.js"></script> -->
<!-- 	<script src="/CarControllSystem/layui/layui/layui.js"></script> -->
    <title>Title</title>
</head>
<body background="backgroundpic.jpg">
<% request.setCharacterEncoding("utf-8");
       Object name    = session.getAttribute("name") ;
       Object password= session.getAttribute("password");
       
        %>
    
   
        
        
        <%
   String URL ="jdbc:mysql://localhost:3306/carcontrollner";
   final String USERNAME ="root";
   final String PWD = "723428";
 
 try{
   Class.forName("com.mysql.jdbc.Driver"); 
 }catch(Exception e){}
   Connection connection = DriverManager.getConnection(URL,USERNAME,PWD) ;
   
   
   String sql ="select * from history where username=?";
   PreparedStatement  pstmt =  connection.prepareStatement(sql);
   
   pstmt.setObject(1, name);
  
   
   ResultSet rs = pstmt.executeQuery();
   History history= new History();
   
   
   
   List<History> historys = new ArrayList<>();
		while(rs.next()) {
			history = new History(rs.getInt("history_id"),rs.getString("username"),rs.getFloat("length_preference"),rs.getFloat("danger_preference"),rs.getFloat("time_preference"),rs.getFloat("crossing_preference"),rs.getString("datetime"), rs.getString("historypath"));
			historys.add(history);
		}
        %>
<div >Int
    <!-- 内容主体区域 -->
<p align="center">用户信息管理</p>
<table width="64%" border="1" align="center" cellspacing="0" class="l_table_1 table" id="table_1">
    <tr>
        <td width="8%" align="center">记录ID</td>
        <td width="8%" align="center">用户名</td>
        <td width="20%" align="center">历史路线</td>
        <td width="12%" align="center">距离偏好值</td>
        <td width="12%" align="center">时间偏好值</td>
        <td width="12%" align="center">安全偏好值</td>
        <td width="12%" align="center">拐点偏好值</td>
        <td width="12%" align="center">驾驶时间戳</td>
        <td width="8%" colspan="2" align="center">操作</td>
    </tr>
    <%
      
        int count=0;
        for (History a:historys) {
            count++;
            String id=a.username;
    %>
    <tr>
        <td><%= a.historyId %></td>
        <td><%= a.username %></td>
        <td><%=a.historypath %></td>
        <td><%=a.length_preference %></td>
        <td><%=a.time_preference %></td>
        <td><%=a.traffic_preference%></td>
        <td><%=a.crossing_preference %></td>
        <td><%=a.datetime%></td>
        <td><a href="form_historyupdate.jsp?name= <%= name%>&history_id=<%= a.historyId%>">更新  </a></td>
        <td><a href="historydelete.jsp?name= <%= name%>&history_id=<%= a.historyId%>">删除        </a></td>
    </tr>
    <%  }
    %>
</table>
</div>
</body>
<html>

------网友观点--------------------
注意参数类型,你使用的是History(String, String, float, float, float, float, Date, String), 第一个参数是string,但你class中定义的是int,还有后面的Date类型,使用时就保持类型一致

------网友观点--------------------
引用 1 楼 不脱单,不改名 的回复:
注意参数类型,你使用的是History(String, String, float, float, float, float, Date, String), 第一个参数是string,但你class中定义的是int,还有后面的Date类型,使用时就保持类型一致
您好,我在第134行定义的就是int类型,所以不明白为什么系统会报错

------网友观点--------------------
先把134、135两行注释掉,看看还报不报错,如果报错,可能是其它地方的问题, 如果不报错,可以是你获取的值有空的

------网友观点--------------------
引用 3 楼 不脱单,不改名 的回复:
先把134、135两行注释掉,看看还报不报错,如果报错,可能是其它地方的问题, 如果不报错,可以是你获取的值有空的
您好!注释掉确实不报错了,但是我数据库里都是有值的为何会获取空值呢

------网友观点--------------------
引用 3 楼 不脱单,不改名 的回复:
先把134、135两行注释掉,看看还报不报错,如果报错,可能是其它地方的问题, 如果不报错,可以是你获取的值有空的
新发现情况供您参考,那一行语句如果去掉historyId也不报错,可是加上之后就不行了

------网友观点--------------------
你把rs.getInt("history_id")改成Interger.parseInt(rs.getString("history_id")); 不行的话,你就单独打印一下rs.getInt("history_id"),看看是不是获取的值为null什么的,这个时候给一个默认值(或者说是数据库中保存的数据有误)

------网友观点--------------------
引用 6 楼 不脱单,不改名 的回复:
你把rs.getInt("history_id")改成Interger.parseInt(rs.getString("history_id")); 不行的话,你就单独打印一下rs.getInt("history_id"),看看是不是获取的值为null什么的,这个时候给一个默认值(或者说是数据库中保存的数据有误)
会显示Integer不可试别,我放弃实例化之后曾打算以history.属性分别赋值,却会显示history不可识别为变量(明明126行已经建立过了)。 我现在耍了个小聪明,放弃直接取出id,而是改为在jsp页面将取出的每个记录重新赋予id,如此若是我演示时每次删去最后一条记录,则似乎与直接取出相同效果,若是取中间,则会导致页面显示的id与数据库中id不符,下次再次操作会误操作。无法,我没有时间了
发布此文章仅为传递网友分享,不代表本站观点,若侵权请联系我们删除,本站将不对此承担任何责任。
软件开发 程序错误 异常 ybaby.netCopyright © 2020-2026  ybaby 版权所有  桂ICP备17004385号-2 网站地图