英文:
How should i get data by calling javaclass method from JSP using Getters Method?
问题
<?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>
// JSP Code where I'm trying to call Methods getCid(),getName()
<%@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>
// DaoData.java file
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;
}
}
英文:
>.Classpath file
<!-- begin snippet: js hide: false console: true babel: false -->
<!-- language: lang-html -->
<?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>
<!-- end snippet -->
** getting data from DB using java class with two methods getCid(),getName() But i'm getting error.what should i do?**
CLICK HERE to image-This is the page where i'm adding products from ADMIN_DB to User_DB
CLICK HERE to image-This is the Error-code getting. After by clicking ADD button in Addingpage
>ERROR-PAGE
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
>JSP Code where i'm trying to call Methods getCid(),getName()
<!-- begin snippet: js hide: false console: true babel: false -->
<!-- language: lang-html -->
<%@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>
<!-- end snippet -->
>DaoDta.java file
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;
}
}
专注分享java语言的经验与见解,让所有开发者获益!
评论