之前都是学的是C#,看书也只看过C/C++之类,做过ASP+ACESS和ASP.NET+SQL SERVER的项目,第一次接触JAVA和JSP+Mysql环境。加之基础不牢,所以刚开始觉得这个真难。
先上JAVA的官网下了个for windows 32-bit的JDK(jdk-6u13-windows-i586-p.exe)。顺利安装完成后,主要是对JDK环境配置上遇到点问题。CLASSPATH有的书上没讲清楚,应该是加在最开始加" . ; "否则可能出现问题。也就是在运行那被转载千万次的测试程序HelloWorld会出问题。我还犯了一个小错,创建的是HelloWorld的类,但文件名写的是Test.java。后来发现原来是文件名还得必须跟类名是一样才正确。有的书或者网页上写的J2sdk,其实指的都是Java Development Kit,但只是版本新旧的问题罢了。
然后是安装tomcat。为了紧跟潮流,故用的是tomcat 6.0,支持Servlet 2.5/JSP 2.1。去官网下的时候下了好多安装包,后来发现其实如果懒的话只用下载EXE的安装文件就好了(apache-tomcat-6.0.26.exe)。然后安装,我手贱,把端口改成8089,我就不喜欢一处不改的使劲下一步。就是进入Manager界面的时候遇到些问题,先是tomcat-users.xml改不了。后来发现又是VISTA的UAC在做怪,非逼我以管理员身份运行DW才能对文件进行修改,代码如下:
<role rolename="tomcat"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
但当我用tomcat身份登录时,却提示“Access to the requested resource has been denied”。很郁闷不知道怎么回事,今天没精神搞了。
最后安mysql 5.1.40。配置端口用的是3308。遇到最大的问题是配置完执行的时候老提示出错,而且我也不知道root的密码,根本就进不了MYSQL。这点纠结我很久,我终于想起我以前搞PHPCMS的时候安了一个PHP+APACHE+MYSQL的集成环境——pc_webserver2008。把那个和mysql卸载了以后,并删去了安装目录和program data里MYSQL的文件夹。重新安装了一遍,终于成功了。命令行的界面让我很感动,怀念起小时候用DOS的时代。
今天最挣扎就是的连接数据了,最主要的是书和网站说的都不太一样,我不知道该信谁好。主要还是用两种观点:
一类是
Code:
1. String url="jdbc:mysql://localhost/xujie";
2. String userName="root";
3. String password="xujie7819";
4. String sql=null;
5. Connection conn=null;
6. Statement stmt=null;
7. Class.forName("com.mysql.jdbc.Driver");
8. conn=DriverManager.getConnection(url,userName,password);
9. stmt=conn.createStatement();
10. sql="select * from bukee";
11. ResultSet rs=stmt.executeQuery(sql);
12. ...
一类是
Code:
1. Connection con=null;
2. Statement stmt=null;
3. ResultSet rs=null;
4. String userName="root";
5. String userPasswd="123456";
6. String dbName="db1";
7. String tableName="stuinfo";
8. String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd+"&useUnicode=true&characterEncoding=8859_1";
9. Class.forName("org.gjt.mm.mysql.Driver").newInstance();
10. Connection connection=DriverManager.getConnection(url);
11. stmt = connection.createStatement();
12. String sql="SELECT * FROM "+tableName;
13. rs = stmt.executeQuery(sql);
14. ...
两种我都试过,发现提示出错,原来还少下了JDBC的数据库驱动。赶紧下了mysql-connector-java-5.1.12,把mysql-connector-java-5.1.12-bin.jar添加到JDK和TOMCAT的bin目录下(我下的tomcat版本中并没区分common、server、shared的lib目录之分,在其根目录下只有一个lib目录,有的书上提到以上三种lib下jar文件的区别,但我没遇到),并配置了环境变量,即修改CLASSPATH=%CLASSPATH%;%JAVA_HOME%/bin/mysql-connector-java-5.1.12-bin.jar。还是未联上。后来网上各种说法都有,差点都准备卸了重来。发现url变量中的localhost的端口可能写的有问题,试了无端口,8089和3308。最终于发现用3308端口,即MYSQL的端口终于好了。
激动!写了点东西,提醒自己以后还是多自己想想看问题之所在。网络上的文章不一定适合自己的系统环境,要认真甄选。