package dbcon does not exist
错误已经很明显了啊,你的dbcon包不存在贴出你的javabean引用代码出来看看
错误已经很明显了啊,你的dbcon包不存在贴出你的javabean引用代码出来看看
解决方案 »
- 请指教一哈我的<c:foreach>方法老是报错 真心不知道了
- radio tabindex 无法屏蔽
- 能不能只用struts的标签,而不用struts框架
- [急啊!100分!][up有分!]tomcat在局域网无法访问的问题
- 初学者s2sh操作Oracle的配置问题
- 哪有eclipse S-3.0M7-200402122000 版的中文语言包下载,下载后怎么使用?
- Could not find action or result访问不到 求大神帮忙啊
- mysql和jsp的String,datetime问题
- 难题:如何生成EXCEL表
- 当启动tomcat时,马上运行一个servlet,如何配置?急
- 请问我在服务器上生成了excel了,怎么让用户下载阿?(急急急急急急!!!!!!!!!!!)
- 连接数据库出现的特别异常,欢迎大家进来讨论。
然后就是CLASSPATH的问题了:
正如操作系统利用PATH来搜索可执行程序一样,Java运行环境也会遍历CLASSPATH来查找类,即便是HelloWorld这样简单的程序,JVM也会遍历
CLASSPATH定义的每一个路径,直到找到相应的文件为止。
相信大家用的系统不是2k就是XP,然后就应当如下设置Path:
我的电脑->属性->高级->环境变量
然后在环境变量的Path后面追加: C:\JDK\bin;.;C:\JDK\lib
也可以这样配置:C:\JDK\bin;.;C:\JDK\lib\dt.jar;C:\JDK\lib\tools.jar
★记住:环境变量中的 . 切记不能少,它表示当前路径,如果少掉出现的错误等会就说!
dt.jar是关于运行环境的类库,tools.jar是关于一些工具的类库
如果没有配置:C:\JDK\bin,则会出现 “ javac' 不是内部或外部命令,也不是可运行的程序或批处理文件。”这样的错误。
然后下面就该写程序了:
首先是(HelloWorld.java),打开Editplus,新建一个Java文件,请照着如下输入,要一字不漏,并且分清大小写:
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello,World!");
}
}
然后把这个文件保存(ctrl + s)到HelloWorld.java,记住大小写一定要分清,是HelloWorld.java不是helloworld.java或者其他的
下面就该运行了,开始->运行->cmd
在控制台中把目录切换到当前目录:
javac HelloWorld.java
java HelloWorld
你就会在控制台上看见输出的Hello,World!(没出来?我把电脑吃了:))
javac是编译命令,它把HelloWorld.java编译成HelloWorld.class
java就是解释命令,JVM把HelloWorld.class解释执行.
在这个时候:
1。如果出现Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld
那就是你在环境变量中没有加上那个.(dot)
2。如果出现Exception in thread "main" java.lang.NoSuchMethodError: main
或者HelloWorld.java:1: Public class helloworld must be defined in a file called "HelloWorld.java".
那就是你没有分清大小写的写入这个HelloWorld,或者保存得时候没有保存为HelloWorld.java
这个名字一定要跟public class的名字一样对于环境变量的问题就说到这里,下面我先所说怎么在Editplus里面编译和运行,在Tools->参数设置->配置用户工具
1.添加工具(添加应用程序)
菜单文字:Compile Java Program
程序:C:\JDK\bin\javac.exe
参数:文件名称
初始目录:文件目录
2.添加工具(添加应用程序)
菜单文字:Run Java Program
程序:C:\JDK\bin\java.exe
参数:文件名称(不含扩展名)
初始目录:文件目录工具组名称可以随便添,比如Debug Java Program
然后在Tools的下拉菜单中,你就会看见Compile Java Program以及Run Java Program这两个选项,以后你就可以利用ctrl + 1编译和ctrl +2运行程序了
下面就讨论Servlet的运行:
首先要运行Servlet,则需要JSP/Servlet container,我建议初学者用Tomcat
Tomcat(最新版本5.0):http://cvs.apache.org/builds/jakarta-tomcat-5/nightly/jakarta-tomcat-5-bin-20030725.zip
然后把这个压缩包解压到:
C:\Tomcat
然后再配置环境变量:
添加三个系统变量:
JAVA_HOME: C:\JDK
TOMCAT_HOME: C:\Tomcat
CLASSPATH: %JAVA_HOME%\lib;%TOMCAT_HOME%\lib
Tomcat的环境变量就配置完毕了,下面检验Tomcat是否能够运行:
在控制台中转到C:\Tomcat\bin这个目录,运行startup,然后回出现一个窗口,连跳一大串东西,最后表示Server已经运行
在浏览器中输入http://localhost:8080,出现欢迎界面,则表示Tomcat没问题了
在微软站点就有这个驱动程序:
Window操作系统
http://www.uncj.com/upload/files/ms_jdbc_setup.exe
http://download.microsoft.com/download/SQLSVR2000/jdbc/2000/NT45XP/EN-US/setup.exeUnix操作系统 Mssqlserver.tar
http://download.microsoft.com/download/SQLSVR2000/jdbc/2000/UNIX/EN-US/mssqlserver.tar二、安装JDBC 执行ms_jdbc_setup.exe可执行文件,一切只需要点击下一步,至到出现finish按钮,完成安装。 注:
(1) ms_JDBC_setup默认安装路径为:
c:\Program Files\Microsoft SQL Server 2000 Driver for JDBC
(2)此版(Version 2.2.0022)本仅支持
Microsoft SQL Server 2000 Driver for JDBC
(3)安装目录\lib\下的三个jar文件即是我们要的JDBC驱动核心
msbase.jar
mssqlserver.jar
msutil.jar三、将以上(3)中指的三个jar文件加入到环境变量中去
classpath:
C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msbase.jar;
C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\mssqlserver.jar;
C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msutil.jar
注:我建议将以上三个文件拷贝至你的jvm机所在的lib或class目录下。此时我是将它拷贝至我的jvm目录下的jre/lib/ext下。
四、测试public class Test{
public Test(){}
public static void main(String args[]){
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection conn =DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;User=sa;Password=;DatabaseName=maxwell");
Statement stmt=conn.createStatement();
String sql="select * from employee";
ResultSet rs = stmt.executeQuery(sql);
while(rs.next()) {
System.out.println("TestName:"+rs.getString("name"));
}
rs.close();
stmt.close();
conn.close();
} catch(Exception ex) { System.err.println(ex.getMessage()); }
}} 五、注意事项 1。要保证你的Sql服务是启动状态
2.在Sql 的管理器中能够使用sa或其它用户正常登录;(有些人在安装sql时用了nt用户管理模式,这里可能会有一定问题)
3.第一次配置好环境变量最好能重启一下电脑
4.注意JVM和DataBase的启动顺序:
先启动DataBase,再启动JVM机;
注:在停止Web服务器后,再重启动,中间最好能有10秒以上的间隔.
5.注意操作系统的网络连通性
A.启动了Tcp/IP服务
B.配置了相关IP地址,有些人机器可能用的是自动分配IP或有配置IP时,但网络不通可能也找不到IP
6.有些机器在调试明最好能将(四)中的连接地址localhost改成数据库服务器的IP,这也是要注意5的原因。
import java.sql.*;
import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.naming.*;
import javax.sql.*;public class mydb {String strUser="",strPassword="";
String strDbdriver="sun.jdbc.odbc.JdbcOdbcDriver";
String strConstring="jdbc:odbc:ibbs";
//String strDbdriver = "org.gjt.mm.mysql.Driver";
//String strConstring = "jdbc:mysql://localhost:3306/ibbs";
Connection conn = null;
ResultSet rs = null;public mydb() {
try {//--read db info from config file-------------
Class.forName(strDbdriver);
}
catch(Exception e) {
System.err.println("mydb(): " + e.getMessage());
}
}//----query------------------
public ResultSet executeQuery(String sql)throws Exception {
rs = null;
conn = DriverManager.getConnection(strConstring,strUser,strPassword);
Statement stmt = conn.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery(sql);
if(rs==null){System.exit(1);}
return rs;
}
//---Update-------------------
public void executeUpdate(String sql) {
try {
conn = DriverManager.getConnection(strConstring,strUser,strPassword);
Statement stmt = conn.createStatement(java.sql.ResultSet.TYPE_SCROLL_SENSITIVE,java.sql.ResultSet.CONCUR_UPDATABLE);
stmt.executeUpdate(sql);
stmt.close();
conn.close();
}
catch(SQLException ex) {
System.err.println("aq.executeUpdate: " + ex.getMessage());
}
}
}
import java.util.*;
import java.text.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class doit{
//---Changecode-------------------
public String changecode(String strMystring){
String strEncoded="";byte[] tmpbyte;
try{
tmpbyte=strMystring.getBytes("ISO8859_1");
strEncoded=new String(tmpbyte);
}catch(Exception e){
}
return strEncoded; }public String strNowtime(){
String dateString="123";
try{
java.text.SimpleDateFormat formatter= new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss");
java.util.Date currentTime_1 = new Date();
dateString = formatter.format(currentTime_1);
}catch(Exception e){
}
return dateString;
}
//----Replace the illegle byte--------------
public String replace(String name,boolean title) throws Exception{
StringBuffer sb = new StringBuffer();
name=name.trim();
// if (name.indexOf("'")>=0||name.indexOf("&")>=0||name.indexOf("<")>=0||name.indexOf(">")>=0||name.indexOf("\"")>=0){
for( int i=0; i<name.length(); i++ ) {
char ch = name.charAt(i);
switch (ch){
case 13:
sb.append("<br>");
break;
//case 32:
// sb.append(" ");
// break;
case 34:
sb.append(""");
break;
case 39:
if(title==true){ //if it's title
sb.append(""");
}else{
sb.append("''");
}
break;
case 38:
sb.append("&");
break;
case 60:
sb.append("<");
break;
case 62:
sb.append(">");
break;
default :
sb.append(ch);
break;
}
}
return sb.toString();
} public void writetofile(String strOutput,String strTofilename){
//always give the path from root. This way it almost always works.
String nameOfTextFile = "c:/prj"+strTofilename;
try {
PrintWriter pw = new PrintWriter(new FileOutputStream(nameOfTextFile));
pw.println(strOutput);
//clean up
pw.close();
} catch(IOException e) {
System.err.println(e.getMessage()); } }
public String toChinese(String s){
if(s == null)
return null;
try{
String convert = new String(s.getBytes("ISO8859_1"), "GB2312");
return convert;
}catch(Exception e){}
return null;
}
public void valueBound(HttpSessionBindingEvent event) {
try {System.out.println("OOOOOOOOOOOOOKKKKKKKKKKKKKKK"); } catch(Exception e) {}
}
}
怎么该!谢谢
------------------------------------------------------------------------
目录结构及各类文件放置:
C:\myapp\
|
+---index.jsp
|
+---WEB-INF\
| |
| +---classes\
| | |
| | +---[包名\]*.class文件 <--如有包名则建立相应的目录结构
| |
| +---src\
| | |
| | +---[包名\]*.java文件 <--java文件放在此处(仅建议)
| | <--如有包名则建立相应的目录结构
| +---lib\
| |
| +---*.jar <--放置仅用于本应用的jar文件(如:数据库驱动的jar文件)
+---jsp\ <--放置所有JSP文件(仅建议)
|
+---*.jsp------------------------------------------------------------------------
配置虚拟路径(配置%Tomcat%\conf目录下的server.xml文件):
<Context path="/MYAPP" docBase="c:\myapp" debug="0" reloadable="true"/>path : 指在IE地址栏内的访问地址,本处如:http://localhost:8080/MYAPP
docBase : 你的应用的文件所在目录,本处如:c:\myapp------------------------------------------------------------------------
Bean的使用: 1.定义Bean:
package com.yaray;
....
public class TestClass{
....
public void sayHello(){
System.out.println("Hello !");
}
} 2.JSP调用Bean: 2.1调用方法一:
<%@ page import="com.yaray.TestClass,java.sql.*"%>
<jsp:useBean id="testClass" class="TestClass" scope="page"> 2.2调用方法二(:::注意:仅当Bean定义了包名时能如此使用,即:省略import):
<jsp:useBean id="testClass" class="com.yaray.TestClass" scope="page"> 3.使用:
<%
testClass.sayHello();
%>
import java.util.*;
import java.text.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class doit{
//---Changecode-------------------
public String changecode(String strMystring){
...
\root\
|
+---index.jsp
|
+---WEB-INF\
| |
| +---classes\
| | |
| | +---[包名\]*.class文件 <--如有包名则建立相应的目录结构
| |
| +---src\
| | |
| | +---[包名\]*.java文件 <--java文件放在此处(仅建议)
| | <--如有包名则建立相应的目录结构
| +---lib\
| |
| +---*.jar <--放置仅用于本应用的jar文件(如:数据库驱动的jar文件)
+---jsp\ <--放置所有JSP文件(仅建议)
|
+---*.jsp
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app/>
::::注意:
它的第一句中的encoding属性与字符集有关,某些中文问题可能与此有关.
当有中文问题时,可改为ISO8859-1试试.
我是直接放在根目录下的,要不要配置web.xml?怎么样配置
配置虚拟路径(配置%Tomcat%\conf目录下的server.xml文件):
<Context path="/MYAPP" docBase="c:\myapp" debug="0" reloadable="true"/>path : 指在IE地址栏内的访问地址,本处如:http://localhost:8080/MYAPP
docBase : 你的应用的文件所在目录,本处如:c:\myapp------------------------------------------------------------------------一般不用配置其它的了.
在微软站点就有这个驱动程序:
Window操作系统
http://www.uncj.com/upload/files/ms_jdbc_setup.exe
http://download.microsoft.com/download/SQLSVR2000/jdbc/2000/NT45XP/EN-US/setup.exeUnix操作系统 Mssqlserver.tar
http://download.microsoft.com/download/SQLSVR2000/jdbc/2000/UNIX/EN-US/mssqlserver.tar二、安装JDBC 执行ms_jdbc_setup.exe可执行文件,一切只需要点击下一步,至到出现finish按钮,完成安装。 注:
(1) ms_JDBC_setup默认安装路径为:
c:\Program Files\Microsoft SQL Server 2000 Driver for JDBC
(2)此版(Version 2.2.0022)本仅支持
Microsoft SQL Server 2000 Driver for JDBC
(3)安装目录\lib\下的三个jar文件即是我们要的JDBC驱动核心
msbase.jar
mssqlserver.jar
msutil.jar三、将以上(3)中指的三个jar文件加入到环境变量中去
classpath:
C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msbase.jar;
C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\mssqlserver.jar;
C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib\msutil.jar
注:我建议将以上三个文件拷贝至你的jvm机所在的lib或class目录下。此时我是将它拷贝至我的jvm目录下的jre/lib/ext下。
四、测试public class Test{
public Test(){}
public static void main(String args[]){
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection conn =DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;User=sa;Password=admin;DatabaseName=company;Server=192.168.0.27");
Statement stmt=conn.createStatement();
String sql="select * from worker";
ResultSet rs = stmt.executeQuery(sql);
while(rs.next()) {
System.out.println("TestName:"+rs.getString("name"));
}
rs.close();
stmt.close();
conn.close();
} catch(Exception ex) { System.err.println(ex.getMessage()); }
}} 五、注意事项 1。要保证你的Sql服务是启动状态
2.在Sql 的管理器中能够使用sa或其它用户正常登录;(有些人在安装sql时用了nt用户管理模式,这里可能会有一定问题)
3.第一次配置好环境变量最好能重启一下电脑
4.注意JVM和DataBase的启动顺序:
先启动DataBase,再启动JVM机;
注:在停止Web服务器后,再重启动,中间最好能有10秒以上的间隔.
5.注意操作系统的网络连通性
A.启动了Tcp/IP服务
B.配置了相关IP地址,有些人机器可能用的是自动分配IP或有配置IP时,但网络不通可能也找不到IP
6.有些机器在调试明最好能将(四)中的连接地址localhost改成数据库服务器的IP,这也是要注意5的原因。