Java web环境配置和Servlet实例HelloWorld<转自banama的个人博客>

Java web环境配置和Servlet实例HelloWorld<转自banama的个人博客>

曾经一直对很”重“的东西很痛恨,也可能因为自己懒…因此一直对微软的东西不感冒,学校的网速下载个VS都有种想死的感觉。对于java也是同样的感觉,eclipse让我曾经望而却步。其实我一直有种想法,感觉java适用于企业级的应用,而我内心不想做一个螺丝钉,我喜欢做一些快速的,magic,有掌控力的工作,当然也有可能是飘渺的成就感在作祟。但是java越来越火,总有他的原因,一个优秀的程序员不该有偏见,不是吗?练级之路不应惧怕任何挑战!

以前一直做动态语言的web开发,对于java web刚了解刚开始有一点难以适应,同学推荐下,先借了本jsp的书浏览了一下,起初感觉jsp向一个模板引擎,不过强大的是只是这个“模板引擎”就可以开发出一个纯正血统的动态网站。不过感觉是有点不太科学。渐渐了解到,java web的MVC的开发中,jsp的角色更像V,而MC则分别是javabean和servlet。

java开发的IDE了解了很多,能力有限,搞定不了太多东西,还是老老实实用eclipse了,对于收费的myeclipse,一方面,因为的收费的,实在不想去破解,另一方面真的再懒得去下载配置…下面就讲讲eclipse 配置以及servlet HelloWorld,好记性不如烂笔头,东西多了总要总结一下,记一记。

环境搭建

  • 我的系统是Ubuntu 13.10,安装eclipse版本是3.8,打开发现没有菜单栏,google才知道这好像是一个bug,最简单的解决方法,env UBUNTU_MENUPROXY = (eclipse path), 命令行打开问题即解决。

  • 为了更方便,eclipse的自动补全还需设置一下。Window => Prefenrence => java Editor => Content Assist ,在Auto Activation可按需求设置。

  • eclipse进行web开发是要安装插件的,具体操作 Help => Install New Software, 打开窗口,在work with filter中选择All Aailable Sites, 然后打开Web、Xml、Java EE…那一项,选中Dail java persistenence Tools系列Eclipse * Developer Tool JST Server Adapter Extensions 安装,重启eclipse。

  • 安装tomacat服务器,tomacat安装非常简单,官网下载,解压,进入目录。执行./bin/startup.sh,打开浏览器输入127.0.0.1:8080,进入tomcat主页证明tomcat可以正常运行。为了开发web应用方便,需要在eclipse配置tomcat。 Window => Preferences => Server => Runtime Environment ,add 即可添加tomcat服务器,切记版本选择和自己安装tomcat版本相同。

到此环境配置已经基本完成,接下来实现第一个 servlet helloworld。

实例

  • new => othoer => server 创建服务器

  • 接下来创建web 工程,因为自己是一个菜鸟,网上很多教程eclipse版本不一样,所以走了不少弯路,下面说说我的版本的实现过程 网山很多教程,new => tomcat project ,我的版本没有这个选项,在这里,选择 new => other => Dynamic Web Project ,按要求填写项目信息,假如工程名字为Servlet,一直next,知道最后勾选添加web.xml,finish。

  • 实现第一个servlet实例,New => Servlet ,输入如下代码


 package servlet;
 
 import javax.servlet.http.HttpServlet;

 public class Hello extends HttpServlet {
 
	private static final long serialVersionUID = 1L;
	public void doGet(HttpServletRequest request, HttpServletResponse response)
	 		throws IOException, ServletException {
		response.setContentType("text/html");
		PrintWriter writer = response.getWriter();
		writer.println("Hello");
	}
 } 
 

打开 WebContent -> WEB-INF -> web.xml, 增加servlet

<servlet>
	<servlet-name>Hello</servlet-name>
	<servlet-class>servlet.Hello</servlet-class>
</servlet>
<servlet-mapping>
	<servlet-name>Hello</servlet-name>
	<url-pattern>/Servlet/HelloWorld</url-pattern>
</servlet-mapping>

其中servlet-class 是确定的,而servlet-name则可以自己命名。

接下来可以运行了,不过要怎么做呢?很简单,选中工程,run as 选择server,然后打开浏览器输入 127.0.0.1:8080/Servlet/Servlet/HelloWorld

404?比忘了server.xml,打开服务器的serverl.xml ,拉到最后看HOST标签里的Context,有没有关于Servlet的Context,如果没有,你需要写入

<Context docBase=”Servlet” path=”/Servlet” reloadable=”true” source=”org.eclipse.jst.jee.server:Servlet”/>

然后再次Run as 选择server,打开浏览器输入127.0.0.1:8080/Servlet/Servlet/HelloWorld,页面应该就可以正常访问了。

Ps


  • eclipse生成的servlet文件不用设置web.xml即可访问,分析他的代码发现有这一行代码@WebServlet(path),其功能应该类似与python中的route装饰器。

 

 

 

原文地址:

http://banama.github.io/Archive/servletFir.html

如有侵权,请通知我,我会尽快处理滴。

转载于:https://www.cnblogs.com/SummerinShire/articles/4630964.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/109401.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • LoadRunner11的安装与激活成功教程「建议收藏」

    LoadRunner11的安装与激活成功教程「建议收藏」现在很多人都在用LoadRunner11,下面我就来说说自己下载和安装LR11的过程。一、安装1.先来下载LR11.建议大家都在正规网站下载,推荐一个网站http://bbs.51testing.com/thread-423695-1-1.html,直接将此网站复制到迅雷下载http://www.genilogix.com/downloads/loadrunner/loadrunner-11

    2022年7月22日
    9
  • 【原】Github系列之一:一起做仿天气类应用中的实时模糊效果LiveBlur

    【原】Github系列之一:一起做仿天气类应用中的实时模糊效果LiveBlur

    2021年9月4日
    50
  • UART与USART区别

    UART与USART区别USART:通用同步和异步收发器UART:通用异步收发器当进行异步通信时,这两者是没有区别的。区别在于USART比UART多了同步通信功能。这个同步通信功能可以把USART当做SPI来用,比如用USART来驱动SPI设备。同步是指:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式。 异步是指:发送方发出数据后,不等接收方发回响应,接着发送下

    2022年5月20日
    49
  • SpringCloud笔记:配置Eurake注册中心与高可用集群

    SpringCloud笔记:配置Eurake注册中心与高可用集群SpringCloud是目前非常流行的一个微服务框架,基于springboot,由多个独立模块集合而成。每个模块既可以是一个服务项目,比如会员服务,订单服务等,也可以是公用的API给其他模块使用。可以理解为把一个大的项目拆分成很多小的模块,这些模块通过httpclient+json的形式完成服务之间的通讯,而且每个模块都有自己独立的业务和部署,使得粒度更加精细。五大组件如下:服务注册与发现——…

    2022年5月30日
    55
  • msfconsole模块_msfconsole下载

    msfconsole模块_msfconsole下载Msfconsole提供了一个一体化的集中控制台。通过msfconsole,你可以访问和使用所有的metasploit的插件,payload,利用模块,post模块等等。Msfconsole还有第三方程序的接口,比如nmap,sqlmap等,可以直接在msfconsole里面使用。在启动MSF终端之后,可以首先输入help命令列出MSF终端所支持的命令列表,包括核心命令集和后端数据库命令集。对于其中的大部分命令,你可以输入help[COMMAND],进一步查看该命令的使用帮助信息。一、Msfconso

    2022年9月6日
    3
  • 时序数据库 mysql_时序数据库 应用场景

    时序数据库 mysql_时序数据库 应用场景influxDB介绍时间序列数据是以时间字段为每行数据的标示,比如股票市场的价格,环境中的温度,主机的CPU使用率等。但是又有什么数据是不包含timestamp的呢?几乎所有的数据都可以打上一个timestamp字段。时间序列数据更重要的一个属性是如何去查询它。在查询的时候,对于时间序列我们总是会带上一个时间范围去过滤数据。同时查询的结果里也总是会包含timestamp字段。InfluxDB是一…

    2022年10月4日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号