仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1295|回复: 19
打印 上一主题 下一主题

[学习教程] JAVA网页编程之Servlet/JSP设置进门

[复制链接]
透明 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:30:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
windows系统样,他们做了什么事或者留了一些后门程序,谁都不知道,二,java开发是跨平台,任何系统上都可以运行,对于保密型系统和大型系统开发这是必要的js|servlet 初学者问的诸如:《如何设置情况变量》《如何运转Servlet》啊?如许的成绩太多了,如今我写一个初学者进门必读,以便对初学者有引导感化!
  起首是下载工具:
  我倡议初学者用Editplus+JDK,我以为假如用比方JB,Eclipse,JCreator,固然刚入手下手的时分对照便利,可是确使初学者门不晓得如何设置情况变量,
  从而难以到达知其然,知其以是然的境地
  能够经由过程以下地点下载:
  Editplus(最新版本是v2.11):http://count.skycn.com/softdown.php?id=3641&url=http://sc-http.skycn.net/down/epp211a_cn.exe(要照注册码就本人找吧,网上良多的)
  JDK(最新版本是Java2sdk1_4_2):http://count.skycn.com/softdown.php?id=3116&url=http://sc-http.skycn.net/down/j2sdk-1_4_2-windows-i586.exe(这是ForWindows)
  
  然后就是安装JDK,我是把它装到从c:JDK目次上面:
  然后就是CLASSPATH的成绩了:
  正如操纵体系使用PATH来搜刮可实行程序一样,Java运转情况也会遍历CLASSPATH来查找类,即使是HelloWorld如许复杂的程序,JVM也会遍历
  CLASSPATH界说的每个路径,直到找到响应的文件为止。
  信任人人用的体系不是2k就是XP,然后就应该以下设置Path:
  我的电脑->属性->初级->情况变量
  然后在情况变量的Path前面追加:C:JDKin;.;C:JDKlib
  也能够如许设置:C:JDKin;.;C:JDKlibdt.jar;C:JDKlib        ools.jar
  ★记着:情况变量中的.牢记不克不及少,它暗示以后路径,假如少失落呈现的毛病等会就说!
  dt.jar是关于运转情况的类库,tools.jar是关于一些工具的类库
  假如没有设置:C:JDKin,则会呈现“javac不是外部或内部命令,也不是可运转的程序或批处置文件。”如许的毛病。
  然后上面就该写程序了:
  起首是(HelloWorld.java),翻开Editplus,新建一个Java文件,请照着以下输出,要一字不漏,而且分清巨细写:
  publicclassHelloWorld{
  publicstaticvoidmain(String[]args){
  System.out.println("Hello,World!");
  }
  }
  然后把这个文件保留(ctrl+s)到HelloWorld.java,记着巨细写必定要分清,是HelloWorld.java不是helloworld.java大概其他的
  上面就该运转了,入手下手->运转->cmd
  在把持台中把目次切换到以后目次:
  javacHelloWorld.java
  javaHelloWorld
  你就会在把持台上瞥见输入的Hello,World!(没出来?我把电脑吃了:))
  javac是编译命令,它把HelloWorld.java编译成HelloWorld.class
  java就是注释命令,JVM把HelloWorld.class注释实行.

  在这个时分:
  1。假如呈现Exceptioninthread"main"java.lang.NoClassDefFoundError:HelloWorld
  那就是你在情况变量中没有加上谁人.(dot)
  2。假如呈现Exceptioninthread"main"java.lang.NoSuchMethodError:main
  大概HelloWorld.java:1:Publicclasshelloworldmustbedefinedinafilecalled
  
  "HelloWorld.java".
  那就是你没有分清巨细写的写进这个HelloWorld,大概保留得时分没有保留为HelloWorld.java
  这个名字必定要跟publicclass的名字一样
  
  关于情况变量的成绩就说到这里,上面我先所说怎样在Editplus内里编译和运转,在Tools->参数设置->设置用户工具
  1.增加工具(增加使用程序)
  菜单笔墨:CompileJavaProgram
  程序:C:JDKinjavac.exe
参数:文件称号
    初始目次:文件目次



  2.增加工具(增加使用程序)
  菜单笔墨:RunJavaProgram
  程序:C:JDKinjava.exe
  参数:文件称号(不含扩大名)
  初始目次:文件目次
  
  工具组称号能够任意添,好比DebugJavaProgram
  然后在Tools的下拉菜单中,你就会瞥见CompileJavaProgram和RunJavaProgram这两个选项,今后你就能够使用ctrl+1编译和ctrl+2运转程序了
  
  上面就会商Servlet的运转:
  起首要运转Servlet,则必要JSP/Servletcontainer,我倡议初学者用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:Tomcatin这个目次,运转startup,然后回呈现一个窗口,连跳一年夜串工具,最初暗示Server已运转
  在扫瞄器中输出http://localhost:8080,呈现接待界面,则暗示Tomcat没成绩了
  然后和下面一样,写进你的第一个Servlet
  importjava.io.*;
  importjavax.servlet.*;
  importjavax.servlet.http.*;
  publicclassHelloWorldextendsHttpServlet


  {
  publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException
  {
  
  response.setContentType("text/html");
  PrintWriterout=response.getWriter();
  out.println("<html><head><title>");
  out.println("ThisismyfirstServlet");
  out.println("</title></head><body>");
  out.println("<h1>Hello,World!</h1>");
  out.println("</body></html>");
  
  }
  }
  然后还是用javacHelloWorld.java来编译这个文件,假如呈现没法importjavax.servlet.*
  那末就是应当把C:Tomcatcommonlib内里的servlet.jar文件拷贝到C:JDKjrelibext中,再次编译,就没有成绩了!
  然后在Tomcat目次内里的C:TomcatwebappsROOT内里按以下的文件布局:
  ROOTindex.html
  ROOTwelcom.jsp
  ROOTWEB-INFlibMyServlet.jar(假如你的servlet的.class打成了.jar文件,则放在lib上面)
  ROOTWEB-INFclassesHelloWorld.class(把下面天生的HelloWorld.class文件放在这个内里)
  
  然后在扫瞄器中输出http://localhost:8080/servlet/HelloWorld,因而Server众看所回的报错了:Error404--NotFound
  怎样回事呢?
  Servlet必需利用C:TomcatwebappsROOTWEB-INF这个目次上面的web.xml文件举行注册,用EP翻开这个web.xml文件,
  在内里到场
  <servlet>
  <servlet-name>HelloWorld</servlet-name>
  <servlet-class>HelloWorld</servlet-class>
  </servlet>
  <servlet-mapping>
  <servlet-name>HelloWorld</servlet-name>
  <url-pattern>/servlet/helloworld</url-pattern>
  </servlet-mapping>
  
  如许的布局
  <servlet>
  <servlet-name>HelloWorld</servlet-name>
  <servlet-class>HelloWorld</servlet-class>
  </servlet>

  暗示指定包括的servlet类.
  而以下的布局
  <servlet-mapping>
  <servlet-name>HelloWorld</servlet-name>
  <url-pattern>/servlet/HelloWorld</url-pattern>
  </servlet-mapping>
  暗示指定HelloServlet应该映照到哪种URL形式。
  在修正web.xml终了事后,从头启动Server,然后再输出http://localhost:8080/servlet/HelloWorld,那末偌年夜一个Hello,World!等着你呢,祝贺你
  摆平了:)
  艾,手都打累了,就写到这儿吧,但愿对初学者有一点感化!
  
  ================================
  怎样创建一个毗连数据库的使用?比方毗连access、和sqlsever.
  传闻有jdbcjdbc-odbc桥等体例。今朝我的呆板上只要jdk1.4,我想用jdbc的体例还必要装甚么情况吗?
  假如要jdbc的驱动等情况那边能够下到?另有程序如何写?
  --------------------------------
  
  假如用驱动桥的话就不必要别的安装其余工具
  在
  把持面版-->办理工具-->数据源(ODBC)-->SystemDSN
  中到场你的数据库映照,选好响应的数据库驱动
  然后就能够经由过程
  jdbc:odbc:设置好的DSN名
  的体例来毗连数据库了
  ----------------------------------
  
  packageCBK00D.COMMON;
  /**
  *Title:
  *Description:
  *Copyright:Copyright(c)2001
  *Company:
  *@author
  *@version1.0
  */
  importjava.io.*;
  importjava.util.*;
  importjava.sql.*;
  importjava.lang.*;
  publicclassDBConnect{

  privateStringjdbcDriver=null;
  privateStringjdbcURL=null;
  privateStringuserName=null;
  privateStringpassword=null;
  publicDBConnect(){
  jdbcDriver="sun.jdbc.odbc.JdbcOdbcDriver";
  jdbcURL="jdbc:odbc:cbk";
  userName="system";
  password="manager";
  }
  publicConnectiongetConnection(){
  Connectionconnection=null;
  try{
  Class.forName(jdbcDriver);
  connection=DriverManager.getConnection(jdbcURL,userName,password);
  }catch(Exceptione){
  System.out.println(e);
  }
  returnconnection;
  }
  }
  这是一般的毗连办法!只需修正一下就能够了。
  --------------------------------------
  
  仿佛是如许的,要先rs.next()一下
  jdbc-odbc桥欠好吗?^_^
  
  JAVA毗连数据库的体例有多种:
  依据所必要的分歧数据库驱动分,分为四种:
  1:1类驱动。这就是JDBC-ODBC桥的体例。但这类体例不合适程序的重用与保护,不保举利用。必要数据库的ODBC驱动。
  2:2类驱动。这就是JDBC+厂商API的情势。厂商API一样平常利用C编写,以是,这类体例也不长利用。
  3:3类驱动。这就是JDBC+厂商DatabaseConnectionServer+DataBase的情势。

  这类办法就是在JAVA与DATABASE之间价起了一台专门用与数据库毗连的服务器(一样平常由数据库厂商供应)。他的优点在于能优化毗连。
  4:4类驱动。这就是纯JDBC+DATABASE的毗连体例。也是保举的毗连体例。这使得APPLICATION与数据库分隔,开辟者只需体贴外部逻辑的完成而不需注意数据库毗连的详细完成。在这个中有两种毗连的体例:
  硬编码体例,就是在程序中硬性编进数据库毗连的所须参数。
  JNDIDataSource体例。就是在程序运转的外布情况中又称(Context)设置一个datasource数据源,有一个jndi称号,程序只须查找此称号便可失掉一个数据库毗连的对象。
  =====================================
  jsp毗连Oracle8/8i/9i数据库(用thin形式)
  testoracle.jsp以下:
  <%@pagecontentType="text/html;charset=gb2312"%>
  <%@pageimport="java.sql.*"%>
  <html>
  <body>
  <%Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
  Stringurl="jdbc:oracle:thin:@localhost:1521:orcl";
  //orcl为你的数据库的SID
  Stringuser="scott";
  Stringpassword="tiger";
  Connectionconn=DriverManager.getConnection(url,user,password);
  Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
  Stringsql="select*fromtest";
  ResultSetrs=stmt.executeQuery(sql);
  while(rs.next()){%>
  您的第一个字段内容为:<%=rs.getString(1)%>
  您的第二个字段内容为:<%=rs.getString(2)%>
  <%}%>
  <%out.print("数据库操纵乐成,祝贺你");%>
  <%rs.close();
  stmt.close();
  conn.close();
  %>
  </body>
  </html>


J2ME在手机游戏开发的作用也是无用质疑的。至于桌面程序,可能有人说java不行,界面不好看,但是请看看NetBeans和Eclipse吧,他们都是利用java开发的,而他们的界面是多么的华丽,所以界面决不是java的缺点。还有一个不得不提的优点就是大多java人员都挂在嘴边的java的跨平台性,目前这确实也是java优点之一。
不帅 该用户已被删除
沙发
发表于 2015-1-21 08:59:26 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
小女巫 该用户已被删除
板凳
发表于 2015-1-25 17:41:24 | 只看该作者
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
莫相离 该用户已被删除
地板
发表于 2015-1-25 21:37:55 | 只看该作者
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
小魔女 该用户已被删除
5#
发表于 2015-2-2 11:00:23 | 只看该作者
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
爱飞 该用户已被删除
6#
发表于 2015-2-3 12:50:54 | 只看该作者
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
第二个灵魂 该用户已被删除
7#
发表于 2015-2-4 08:50:33 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
admin 该用户已被删除
8#
发表于 2015-2-7 10:00:04 | 只看该作者
是一种突破用户端机器环境和CPU
飘飘悠悠 该用户已被删除
9#
发表于 2015-2-8 10:18:55 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
金色的骷髅 该用户已被删除
10#
发表于 2015-2-25 09:08:20 | 只看该作者
Jive的资料在很多网站上都有,大家可以找来研究一下。相信你读完代码后,会有脱胎换骨的感觉。遗憾的是Jive从2.5以后就不再无条件的开放源代码,同时有licence限制。不过幸好还有中国一流的Java程序员关注它,外国人不开源了,中国人就不能开源吗?这里向大家推荐一个汉化的Jive版本—J道。Jive(J道版)是由中国Java界大名 鼎鼎的banq在Jive 2.1版本基础上改编而成, 全中文,增加了一些实用功能,如贴图,用户头像和用户资料查询等,而且有一个开发团队在不断升级。你可以访问banq的网站
活着的死人 该用户已被删除
11#
发表于 2015-2-27 08:26:42 | 只看该作者
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
深爱那片海 该用户已被删除
12#
发表于 2015-2-27 23:59:14 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
若天明 该用户已被删除
13#
发表于 2015-3-3 20:31:29 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
飘灵儿 该用户已被删除
14#
发表于 2015-3-4 11:08:49 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
小妖女 该用户已被删除
15#
发表于 2015-3-4 20:38:40 | 只看该作者
是一种为 Internet发展的计算机语言
变相怪杰 该用户已被删除
16#
发表于 2015-3-7 15:46:37 | 只看该作者
J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
柔情似水 该用户已被删除
17#
发表于 2015-3-8 15:04:21 | 只看该作者
是一种将安全性(Security)列为第一优先考虑的语言
海妖 该用户已被删除
18#
发表于 2015-3-16 02:34:43 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
透明 该用户已被删除
19#
 楼主| 发表于 2015-3-18 03:44:55 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
分手快乐 该用户已被删除
20#
发表于 2015-3-20 13:16:22 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-18 18:22

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表