JDK+eclipse+tomcat+mysql环境配置

来源:互联网 发布:拓扑排序算法c 编辑:程序博客网 时间:2024/04/29 10:30

1:背景

    自从开始想要学习WEB后就开始折腾,先是php+apache+mysql,曾经因为mysql的配置搞了一个星期,最后是生生的删注册表解决的,没有人带就是这样每走一步都很艰难,事后想想也没有什么,但是这个过程还是很艰难的,看了很多的教程,太乱了(或许也有人会觉得我是添乱,呵呵),但是希望同学能少走点弯路也值了:

    2:JDK的安装及其系统环境变量的设置

     装完tomcat、jdk之后,必须要配置系统环境变量,否则eclipse根本就启动不起来,启动的时候会报类似“无法找到java Update Development Kit 10”之类的错误;同时,安装完eclipse之后,还必须配置一下,以便让eclipse与刚刚安装的jdk和tomcat环境相关联。 而我,却只是将它们分别安装了一下,压根儿就没有设置环境变量,更没有进行任何配置,这就造成了它们三之间彼此不认识,所以eclipse打开的项目自然 到处都是错误。将这点列在这里,是希望后来的新手别像我这样,犯如此低级的错误。

    2.2 JDK的环境变量设置

    JDK安装好了之后,必须设置其环境变量,这样也方便以后程序的编译和运行!这在我的另一篇文章有详细说明,也是引自一高手的教导:http://www.cnblogs.com/pricks/archive/2009/05/28/1491346.html但是为了大家阅读方便,我这里再贴出来:

  首先右键点我的电脑。打开属性。然后选择“高级”里面的“环境变量”,在新的打开界面中的系统变量里需要设置三个属性“java_home”、“path”、

“classpath”,其中在没安装过jdk的环境下,path属性是本来存在的。而java_home和classpath是不存在的。
    首先点“新建”,然后在变量名写上java_home,顾名其意该变量的含义就是java的安装路径,呵呵,然后在变量值写入刚才安装的路径

“E:\Java\jdk1.6.0_02”(jdk1.6.0_02是jdk安装后的目录,里面至少包含3个目录:bin、lib和jre。本人一般是将jdk在虚拟机上

安装一遍,得到安装后的目录jdk1.6.0_02,然后将该目录拷贝到E:\Java目录中,于是便形成现在的这个目录结构);其次在系统变量里面

找到path,然后点编辑,path变量的含义就是系统在任何路径下都可以识别。打开该变量时,

会发现其“变量值”后面的文本框中已经有了内容,我们不要删除这些内容,而是按“End”,定位到该文本框的末尾,如果末尾有一个分号“;”,

就直接添加JAVA命令所在的路径,如果没有分号,则需要添加一个分号后再添加JAVA命令的路径——java命令的路径是

“%java_home%\bin;%java_home%\jre\bin”(其中“%java_home%”的意思为刚才设置java_home的值),也可以直接写上“E:\Java\jdk1.6.0_02”;

最后再点“新建”,然后在变量名上写classpath,该变量的含义是为java加载类(class or lib)路径,只有类在classpath中,java命令才能识别,

其值为“.;%java_home%\lib\dt.jar;%java_home%\lib\tools.jar (要加.表示当前路径)”,与“%java_home%”有相同意思。
    以上三个变量设置完毕,则按“确定”直至属性窗口消失,下来是验证看看安装是否成功。先打开“开始”->“运行”,打入“cmd”,进入dos系统界面。

然后打“java -version”,如果安装成功。系统会显示java的版本信息。另外安装java时,安装jdk 和 jre要有两个目录,安装时都选择在同一目录会

出现bin和lib文件覆盖现象,从而出现无lib\tools.jar文件的现象,到时即使正确设置了环境变量后javac也不可用!!因此安装jdk后一定要看下在

jdk\lib下是否有tools.jar文件,有的话按照上面的方法设置环境变量就ok了 

 

    2.3 写一个经典的JAVA程序——Hello World

    这个程序最然简单,但很经典,之所以经典,自有其道理,诸君请看:

     首先,开启文本编辑器如txt,新建一个文本文件,写入如下代码:

       public class HelloWorld{
             public static void main(String args[]) {
                  System.out.println("Hello World!");
             }
       }

       然后关闭编辑器,重命名本文件为HelloWorld.java。注意:如果文件里的类名为helloworldt,则本文件名也要改为helloworld.java,即文件名必须与类名相同,大小写也要必须一样!

       然后,“开始”——“运行”或者直接安装Win + R,打开命令行,输入cmd,点击确定或回车后,就打开了命令符窗口。如果刚才的HelloWorld.java

       文件保存在f:\中,则在该窗口中输入f:,然后回车,光标处为:F:\>。这时,输入javac HelloWorld.java,然后回车,再输入java HelloWorld,然后回车,Ok,如果一切正常的话,窗口中会显示Hello World!这一行文字;否则,肯定会出错,下面便是常见的几种错误类型及其解决方案:

       * 错误1:'javac' 不是内部或外部命令,也不是可运行的程序或批处理文件。(javac: Command not found)
    产生的原因是没有设置好环境变量path。Win98下在autoexce.bat中加入path=%path%;c:jdk1.2 in,Win2000下则控制面板->系统->高级->环境变量->系统变量...看到了?双击Path,在后面加上 c:jdk1.2in。当然我们假设JDK安装在了c:jdk1.2目录下(有点唐僧了?)...好像还要重启系统才起作用...(//知道了!//西 红柿)好,再试试!javac HelloWorld。
    * 错误2:HelloWorld is an invalid option or argument.
    拜托,给点专业精神,java的源程序是一定要存成.java文件的,而且编译时要写全.java呀。OK, javac HelloWorld.java (这回总该成了吧?)
    * 错误3:HelloWorld.java:1: Public class helloworld must be defined in a file called "HelloWorld.java". public class helloworld{ ^
    这个问题嘛,是因为你的类的名字与文件的名字不一致。(谁说的,明明看到人家都有这样写的 ( ) OK,准确地说,一个Java源程序中可以定义多个类,但是,具有public属性的类只能有一个,而且要与文件名相一致。还有,main方法一定要放在 这个public的类之中,这样才能java(运行)这个类。另外一点是Java语言里面是严格区分大小写的,初学者要注意呀。像上例中 helloworld 与 HelloWorld 就认为是不一样,因而...oh... 好,改好了,嘻嘻... javac HelloWorld.java...(咦,怎么什么也没有呀?)//faint 这就是编译通过了!看看是不是多了一个HelloWorld.class ?(hehe..按书上教的:) java HelloWorld (!! 这个我知道,不是java HelloWorld.class哟)
    * 错误4:Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld
     呵呵,这个嘛,就是著名的类路径(classpath)问题啦。实际上,类路径是在编译过程就涉及的Java中的概念。classpath就是指明去哪 里找用到的类,就这么简单。由于我们的HelloWorld没用到其它的(非java.lang包中的)类,所以编译时没遇到这个问题。运行时呢,就要指 明你的类在哪里了。解决方法嘛,可以用下面的命令运行:
     java -classpath . HelloWorld“.”就代表当前目录。当然这样做有点麻烦(是“太麻烦”!),我们可以在环境变量中设置默认的classpath。方法就照上述设置path那样。将classpath设为:
classpath=.;c:jdk1.2libdt.jar;c:jdk1.2lib ools.jar 后面的两个建议也设上,以后开发用的着。java -classpath . HelloWorld(再不出来我就不学java了)
  * 错误5:Exception in thread "main" java.lang.NoSuchMethodError: main
     (//咣当)别,坚持住。看看你的代码,问题出在main方法的定义上,写对地方了吗, 是这样写的吗:
     public static void main(String args[]) { //一个字都不要差,先别问为什么了... 对,包括大小写! java -classpath . HelloWorld (听天由命了!)
    Hello World!
    (faint!终于...)欢迎来到Java世界!所以说,无法运行HelloWorld 真的并不是一个“最简单的问题”。 

   

     mysql官网下载,直接安装就行,最好是默认路径,咱们不在乎那么点空间。。。。


    安装好后

   

 1. 进入dos状态(记住命令行的要运行在mysql的安装目录下的bin目录的)

  2. 连接mysql
  输入:mysql –h localhost –u root –p
  输入在安装时已设好的密码,就近入了mysql的命令编辑界面了。

  3. 使用mysql的基本命令(在mysql命令行编辑每输入完命令后最后一定要有分号,不然会报错)
  显示数据库:show databases;
  使用数据库:use 数据库名;

  4.建库
  命令:create database shujuku;

  5.为数据库设置权限(用户和密码)
  命令:grant all privileges on shujuku.* to test@localhost identified by “123456”;
  当你执行完这个命令以后,只要你再以用户名:test,密码:123456登录时你就只可以对shujuku这个数据库操作,这样避开使用root,对数据库的安全有很大帮助.

  6.建表
  命令:create table biao(id int(8) primary key,name varchar(10));

  剩下来的与标准sqsl命令基本上是一样的,具体操作略
  值得一提的是,你在命令行上输入"?",就会有mysql命令的简单帮助,如下:

  呵呵,那样,我们还可以知道退出,就是"exit",呵呵!

 

   3 tomcat的安装及其环境变量的设置

    第一步:去tomcat官方网站上下载一个压缩文件,解压下来即可,不需安装。

    第二步:接下来就是设置环境变量了,注意:tomcat的环境变量与jdk相关联,因此必须先安装好jdk并设置好其环境变量后,再开始安装tomcat。

    在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的tomcat安装在e:\tomcat):
  CATALINA_HOME:c:\tomcat
  CATALINA_BASE:c:\tomcat
  TOMCAT_HOME:  c:\tomcat             
    如果是第一次设置tomcat的环境变量,上面的这三个变量都是没有的,因此都需要“新建”,以第一个变量为例:点击“新建”,输入变量名为CATALINA_HOME,输入变量值为c:\tomcat。

      然后修改环境变量中的classpath(这一步与上面jdk相关联,这里的classpath变量便是上面在安装jdk时所创建的环境变量):把 tomat安装目录下的common\lib下的servlet.jar追加到classpath中去,修改后的classpath如 下:classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib \tools.jar;%CATALINA_HOME%\common\lib\servlet-api.jar(注意:末尾最好别加分号) 注意:双击打开classpath变量时,其值为jdk的相关值,即:

    .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar,现在要追加tomcat的该变量值,需要先 在末尾添加一个分号(如果末尾有分号,就不必添加了),然后再添加tomcat的值:                                 %CATALINA_HOME%\common\lib\servlet-api.jar。

        【注意最新版本的Tomcat中可能没有common这个文件夹了。所以servlet-api.jar应该的路径为%CATALINA_HOME%\lib\servlet-api.jar;请根据自己的情况自己修改

 

    接着可以启动tomcat:在IE中访问http://localhost:8080,如果看到tomcat的欢迎页面的话说明安装成功了。

再接着找到tomcat目录下的conf文件夹,用editplus打开server.xml。找到<Connector port="8080" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" />把端口8080改为80(不过一般情况下不要改)。在最后添加URIEncoding="utf-8".重新启动服务器。输入http: //localhost,如果成 功就可以看到tomcat的欢迎页面。 

    第三步:建立自己的jsp app目录  
    1.到Tomcat的安装目录的webapps目录,可以看到ROOT,examples, tomcat-docs之类Tomcat自带的的目录;  
    2.在webapps目录下新建一个目录,起名叫myapp;  
    3.myapp下新建一个目录WEB-INF,注意,目录名称是区分大小写的;  
    4.WEB-INF下新建一个文件web.xml,内容如下: 

<?xml version="1.0" encoding="ISO-8859-1"?> 

<!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> 

<display-name>My Web Application</display-name> 
<description> 
    A application for test. 
</description> 

</web-app> 

    5.在myapp下新建一个测试的jsp页面,文件名为index.jsp,文件内容如下: 

<html>

<body>

<center> 
    Now time is: <%=new java.util.Date()%> 
</center>

</body>

</html>

    6.重启Tomcat  
    7.打开浏览器,输入http://localhost:8080/myapp/index.jsp 看到当前时间的话说明就成功了。

    8.如果在这一步出现如下错误:

     exception
    javax.servlet.ServletException: javax.servlet.ServletException: java.lang.NoClassDefFoundError: javax/el/ELResolver

那 就检查一下Tomcat/lib下是否已经有el-api.jar  el-ri.jar两个jar文件,没有则拷贝到此目录下。重启Eclipse测试;同时,如果机器上已经有Eclipse,又安装 MyEclipse,MyEclipse会自动查找jre,他首先检测到的是C:\Program Files\Java(jdk安装目录)中的jre,而不是C:\Program Files\Java\jdk1.5.0_06中的jre,原先的Eclipse的jre也随之改动(解决方法(Eclipse为例,MyEclipse 类似)window->preferences->Java->Installed JRES->Edit->更改jre home为C:\Program Files\Java\jdk1.5.0_06);如果还不行,就将el-api.jar包也添加到classpath环境变量中去。如 果这样还不行,就再参考一下这一段:原 因:在Eclipse的Windows -->> Preference  -->>Tomcat 设置Tomcat Home路径后,又在Tomcat的Advanced选中设置了相同的Tomcat Base路径,关键一步是Advanced下有项:Add Java projects to tomcat classpath,勾上所选项目之后,才可以正常的引起javax.servlet.ServletException: java.lang.NoClassDefFoundError: javax/el/ELResolver  

解决办法:从哪里勾上的,就从哪里勾回去,把Add Java projects to tomcat classpath勾掉。如 果上面的方法都不行,那就只好出一个必杀招了——卸载安装好的jdk、tomcat和eclipse,并清除jdk和tomcat的环境变量,然后重新安 装一遍jdk、tomcat和eclipse,并设置jdk和tomcat的环境变量。可能是我这个人比较搓,我每次将我在公司做好的项目拷回来研究时, 总是会出现这样的错误,并且每次无论怎样搞,tomcat依然会报“java.lang.NoClassDefFoundError: javax/el/ELResolver”的错误,最后终于恨下心来,专门花了一个星期的时间来研究解决之道,最后才想出了这个“先毁灭再重建”的不是办法的办法,并且每一次都屡试不爽! 

 

    4:配置jdk

   必须在eclipse中配置安装的jdk,否则项目中会报很多错误。配置步骤如下:

    首先假设刚才的jdk安装目录是D:\j2se1.5.0\jdk1.5.0;

    接下来,启动eclipse,进入window->preferences,选择java->Installed JRES(如下图所示),系统中会有一个默认的jre,即:c:\j2sdk1.4.2(下图jre列表的第一行jre),点中该jre,点击“Remove”按钮将其移除掉(不移除也可以):

    然后点击Add按钮,出现下面的对话框,点击“Browse...”按钮,选择刚才安装的jdk目录(即D:\j2se1.5.0\jdk1.5.0):

 

    然后点击OK,结果如前一张图所示;
    但是,到这一步并未完成jdk的配置,还需要向D:\j2se1.5.0\jdk1.5.0\jre\lib\目录中添加几个tomcat\lib\目录中的 .jar 文件——在上图中,选中jre列表中的第二个jre(即列表的第二行),点击“Edit...”按钮,如下图所示:
    

                                                                           
    点击该界面上的“Add External JARs...”按钮,在弹出的文件浏览对话框中选择刚才安装的tomcat目录下的 lib\ 目录中的servlet.jar、el-api.jar、jsper.jar和jsp-api.jar这四个文件,将这四个文件添加到项目中来。如果不添 加,而项目中又引用到了“javax.servlet.http.*”,则eclipse会报出“inport javax.servlet.http cannot be resolved”的错误。

 5.tomcat连接数据库

    官网下载 JDBC驱动
  下载版本:3.1.8
  http://dev.mysql.com/downloads/connector/j/3.1.html

      

解压缩mysql-connector-java-3.1.10.zip

将要使用的是mysql-connector-java-3.1.10-bin-g.jar和mysql-connector-java-3.1.10-bin.jar

配置

在C:\Program Files\Java目录下建立mysqlforjdbc子目录,进入该目录将mysql-connector-java-3.1.10-bin.jar到该目录下

进入C:\Program Files\Java\jdk1.5.0_04\lib目录将mysql-connector-java-3.1.10-bin-g.jar拷贝到该目录下

然后配置classpath,追加%JAVA_HOME%\lib\mysql-connector-java-3.1.10-bin-g.jar;C:\Program Files\Java\mysqlforjdbc\mysql-connector-java-3.1.10-bin.jar;到该环境变量中去

追加以后环境变量如下:

CLASSPATH=%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;C:\Program Files\Apache Software Foundation\Tomcat5.5\common\lib\servlet-api.jar;%JAVA_HOME%\lib\mysql-connector-java-3.1.10-bin-g.jar;C:\Program Files\Java\mysqlforjdbc\mysql-connector-java-3.1.10-bin.jar;

配置这个的目的是让java应用程序找到连接mysql的驱动

6.测试代码

  <%@ page contentType="text/html; charset=gb2312" %>
<%@ page language="java" %>
<%@ page import="com.mysql.jdbc.Driver" %>
<%@ page import="java.sql.*" %>
<%
//驱动程序名
String driverName="com.mysql.jdbc.Driver";
//数据库用户名
String userName="root";
//密码
String userPasswd="0000";
//数据库名
String dbName="test";
//表名
String tableName="about";
//联结字符串
String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection connection=DriverManager.getConnection(url);
Statement statement = connection.createStatement();
String sql="SELECT * FROM "+tableName;
ResultSet rs = statement.executeQuery(sql);
//获得数据结果集合
ResultSetMetaData rmeta = rs.getMetaData();
//确定数据集的列数,亦字段数
int numColumns=rmeta.getColumnCount();
// 输出每一个数据值
out.print("id");
out.print("|");
out.print("num");
out.print("<br>");
while(rs.next()) {
out.print(rs.getString(1)+" ");
out.print("|");
out.print(rs.getString(2));
out.print("<br>");
}
out.print("<br>");
out.print("数据库操作成功,恭喜你");
rs.close();
statement.close();
connection.close();
%>

我的成功案例

id|num
   0 |liang

  数据库操作成功,恭喜你



  

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 上学期间保险名字写错了怎么办 塑料盆上的商标纸撕了胶怎么办 川航买机票名字错了两个字怎么办 买机票护照号码填错了怎么办 换旅行证给孩子改名字怎么办 浦发信用卡卡片名字印错了怎么办 公主工作很辛苦坚持不下去怎么办 在表格里怎么办名字转换成拼音 激素脸有黑头毛孔大该怎么办 兢兢业业上班但不招领导喜欢怎么办 身体长的还算苗条但就屁股大怎么办 我想学英语从基础开始要怎么办 政府单位领导给我调岗我该怎么办 领导在单位想捞钱我该怎么办 单位领导是宵小之人我该怎么办 一件事想不明白非得想明白怎么办 在四楼上课时发生地震该怎么办 媳妇要离婚我想要孩子该怎么办 媳妇带了避孕环我想要孩子怎么办 新开的文具店一点生意都没有怎么办 孩子在学校被坏孩子欺负了该怎么办 老师像个傻叉我妈还喷我我怎么办啊 承台上预埋桥墩连接钢筋错了怎么办 冲床油缸螺栓拆不下来怎么办 汇款到账银行写错了怎么办 搜狗输入法数字序号超过20怎么办 苹果手机保存的图片变模糊怎么办 微信视频保存到手机变模糊怎么办 自己的位置被别人取代了怎么办 给工厂做半成品老板跑了怎么办 微信变成英文再恢复汉字怎么办 cad中标注尺寸数字太小怎么办 扣扣的钱包手势密码忘记了怎么办 台式电脑带符号的数字打不出怎么办 情侣之间出现看见对方就烦怎么办 电信卡号和联通卡号怎么办情侣号 电脑能登qq但打不开网页怎么办 想跟朋友聊天但对方不理怎么办 刚进婆家门被婆婆欺负怎么办 支付宝的聊天记录被删了怎么办 彩票站买彩票把钱付了没出票怎么办