首页 > 解决方案 > 我应该如何通过使用 Getters 方法从 JSP 调用 javaclass 方法来获取数据?

问题描述

.类路径文件

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="src" path="images"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jre1.8.0_231">
        <attributes>
            <attribute name="owner.project.facets" value="java"/>
        </attributes>
    </classpathentry>
    <classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/Apache Tomcat v8.0">
        <attributes>
            <attribute name="owner.project.facets" value="jst.web"/>
        </attributes>
    </classpathentry>
    <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>
    <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
    <classpathentry kind="lib" path="D:/BABU/my_soft/jar_files/ojdbc14.jar"/>
    <classpathentry kind="lib" path="D:/BABU/my_soft/jar_files/mysql-connector.jar"/>
    <classpathentry kind="lib" path="D:/BABU/my_soft/jar_files/mysql-connector-java-5.1.23-bin.jar"/>
    <classpathentry kind="output" path="build/classes"/>
</classpath>

** 使用 java 类通过两种方法从数据库获取数据 getCid(),getName() 但我遇到错误。我该怎么办?** 点击此处查看图片 - 这是我从 ADMIN_DB 添加产品的页面到 User_DB

单击此处图像-这是错误代码获取。通过单击添加页面中的添加按钮后

错误页面

HTTP Status 500 - Unable to compile class for JSP:
type Exception report

message Unable to compile class for JSP:

description The server encountered an internal error that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: Unable to compile class for JSP: 

An error occurred at line: [14] in the generated java file: [C:\Users\HCL\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\work\Catalina\localhost\myregistration\org\apache\jsp\addcartdb_jsp.java]
Only a type can be imported. daopack.DaoData resolves to a package

An error occurred at line: [15] in the generated java file: [C:\Users\HCL\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\work\Catalina\localhost\myregistration\org\apache\jsp\addcartdb_jsp.java]
Only a type can be imported. mypack.FetchData resolves to a package

An error occurred at line: 29 in the jsp file: /addcartdb.jsp
DaoData cannot be resolved to a type
26: 
27:     //SelectData sd = new SelectData();
28:     //FetchData fd = new FetchData();
29:     DaoData dd = new DaoData();
30:     
31:     String cid = dd.getCid(mail);;
32:     


An error occurred at line: 29 in the jsp file: /addcartdb.jsp
DaoData cannot be resolved to a type
26: 
27:     //SelectData sd = new SelectData();
28:     //FetchData fd = new FetchData();
29:     DaoData dd = new DaoData();
30:     
31:     String cid = dd.getCid(mail);;
32:     


Stacktrace:
    org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:103)
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:199)
    org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:467)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:380)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:355)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:342)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:564)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:403)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:347)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
note The full stack trace of the root cause is available in the Apache Tomcat/8.0.3 logs.

Apache Tomcat/8.0.3

我试图调用方法 getCid(),getName() 的 JSP 代码

<%@page import="daopack.DaoData"%>
<%@page import="mypack.FetchData" %>

<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!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=ISO-8859-1">
<title>addcartdb</title>
</head>
<body>
<%
try {
    
    String pname = request.getParameter("pname");
    int pprice = Integer.parseInt(request.getParameter("pprice"));
    int tq = Integer.parseInt(request.getParameter("tq"));
    
    String mail = (String)session.getAttribute("mail");
    

    
    DaoData dd = new DaoData();
    
    String cid = dd.getCid(mail);;
    
    
     System.out.print(" addcartdb..cid...: "+cid+"\n");
     
     String name2 = dd.getName(mail);
     
     System.out.print("\n addcartdb..name...: "+name2+"\n");
    
    String url ="jdbc:mysql://localhost:3306/srm";
    String user = "root";
    String password = "root";
    String sql=" insert into customerstock(cid,name,pname,pprice,tq)values(?,?,?,?,?)";
    
    Class.forName("com.mysql.jdbc.Driver");
    Connection con = DriverManager.getConnection(url, user, password);
    
    
    
    PreparedStatement ps = con.prepareStatement(sql);
    ps.setString(1, cid);
    ps.setString(2, name2);
    ps.setString(3, pname);
    ps.setInt(4, pprice);
    ps.setInt(5, tq);
    
    
    int i = ps.executeUpdate();
    out.print(" executed  "+i);
    if (i > 0) {
        out.print("<script>");
        out.print("alert('Added..!'); window.location.href='add_cart.jsp';");
        out.print("</script>");

    }
//}

} catch (Exception e) {

    System.out.println(e);
}

System.out.println(" printed...Addcartdb....3");


%>
</body>
</html>

DaoDta.java 文件

package daopack;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class DaoData {

private static Connection getConnection() throws ClassNotFoundException, SQLException{
        
        String url ="jdbc:mysql://localhost:3306/srm";
        String user = "root";
        String password = "root";
        Class.forName("com.mysql.jdbc.Driver");
        //Class.forName("oracle.jdbc.driver.OracleDriver");  
      Connection  con=DriverManager.getConnection(url,user,password);
      
        return con;
        
    }

private String cid;
private String name;

public String getCid(String mail) throws ClassNotFoundException, SQLException {
    Connection con = getConnection();
    if(con!=null)
    System.out.println("\n Connected...!  "+con+"\n");
     PreparedStatement ps = con.prepareStatement("select cid from registar where mail='"+mail+"'");
        ResultSet rs= ps.executeQuery();
        while(rs.next()){
        cid=rs.getString("cid");
        }
        
        con.close();
    return cid;
}

public String getName(String mail) throws ClassNotFoundException, SQLException {
    
    System.out.println("\nDaoData---:"+mail+"\n");
    Connection con = getConnection();
    if(con!=null)
        System.out.println("\n Connected...!  "+con+"\n");  
     PreparedStatement ps = con.prepareStatement("select cid from registar where mail='"+mail+"'");
        ResultSet rs= ps.executeQuery();
        while(rs.next()){
        name=rs.getString("cid");
        }
        
        
    con.close();
    
    return name;
}



}


标签: javajsp

解决方案


推荐阅读