环境:windows10, myeclispse2017, tomcat8.5.9(自带), jdk1.8.0_91
web project,找不到驱动类:java.lang.ClassNotFoundException: oracle.jdbc.oracledriver.但是我已经将驱动包导入工程了,在仔细检查之后发现jdk环境变量的配置出现问题。重装jdk之后将环境变量配置如下:
JAVA_HOME:C:\Program Files\Java\jdk1.8.0_91(jdk的安装目录)
CLASSPATH:%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar(指定类搜索路径)
PATH:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin(指定命令搜索路径)
然后就没有问题了。
<%
request.setCharacterEncoding("utf-8");
Connection con = null;
PreparedStatement pst = null;
// 通过forName取驱动类
String sql="insert into book values(?,?,?,?,?)";
String bookID=request.getParameter("bookID");
String bookName=request.getParameter("bookName");
String bookWriter=request.getParameter("bookWriter");
double bookPrice=Double.parseDouble(request.getParameter("bookPrice"));
String bookNote=request.getParameter("bookNote");
try {
Class.forName("oracle.jdbc.OracleDriver");//???
// 通过驱动管理来建立连接
con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE", "system", "sun");
pst=con.prepareStatement(sql);
pst.setString(1, bookID);
pst.setString(2, bookName);
pst.setString(3, bookWriter);
pst.setDouble(4, bookPrice);
pst.setString(5, bookNote);
out.print("adding......");
if(pst.executeUpdate()>0)
out.print("添加成功!");
else
out.print("添加失败!");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(pst!=null){
pst.close();
}
if(con!=null){
con.close();
}
}
%>