Tomcat用法--Servlet开发
本来想玩一下微信公众号开发,没想到学习曲线真是恶心的很,首先你要配置Tomcat--你要会Servlet--你要会JSP,妈的!贴出来
快哭瞎了,各种文档,好吧,提供一个教你搞java EE文档的博客 http://blog.csdn.net/chenlycly/article/details/25341795
软件开发领域的三大方向:
桌面应用程序 QQ, office
Web应用程序 京东,天猫
嵌入式应用程序 安卓和iPhone的应用软件
一、Tomcat --最多支持在线用户不超过200个
Tomcat容器四个等级:Container,Engine,HOST,Servlet
Tomcat体系结构图:
java打war包命令:java -c
javac 编译包内java文件命令:javac -d . MyServlet.java -->> 结果打包
3、创建Servlet项目
Context root --项目发布到服务器的根名称
Context Directory --
Servlet项目目录结构:myweb---src文件夹 ---存放java文件
---WebContent文件夹 ---这是根目录/,存放html/css/js/img/jsp
---META-INF文件夹
--- WEB-INF文件夹
--- web.xml
--- classes文件夹 --隐藏
--- lib文件夹
--- index.htm
--- index.jsp
细节:1、修改JSP编码UTF-8,在jsp页面右键Preferences
2、修改项目名称:右键-->> Properties -->> Web Project Settings
4、发布项目到服务器
二、Servlet开发
用eclipse-ee开发servlet的缺点就是需要手动添加映射到web.xml,而myeclipse则会完全自动生成在web.xml
开发servlet的三种方式:Servlet接口,GernericServlet接口,HttpServlet接口
Servlet体系结构:
Servlet2.5和Servlet3.0版本区别:
Servlet2.5
1、配置servlet环境变量:系统 -->> 高级设置 -->> 环境变量 -->> 用户变量添加:变量名:CLASSPATH 地址:C:\tomcat7\lib\servlet-api.jar
2、部署servlet到web.xml:<servlet></servlet>, <servlet-mapping></servlet-mapping>
<servlet>
<!--给该servlet取个名字,该名字可以自定义,也可以默认-->
<servlet-name>ServletToJsp</servlet-name>
<!--指定该servlet放在哪个包下 :包.类名-->
<servlet-class>com.icss.biz.Login</servlet-class>
</servlet>
<!--servlet的映射-->
<servlet-mapping>
<!--下面servlet-name要和上面的一样-->
<servlet-name>ServletToJsp</servlet-name>
<url-pattern>/servlets/chat/chat</url-pattern>
</servlet-mapping>
3、Servlet容器:
4、servlet的生命周期:实例化--初始化--服务--销毁
当映射一个servlet的时候,可以多层,例如:<url-pattern>/servlet/index.html</url-pattern>,这里的html后缀并不代表html文件
同一个servlet可以被映射到多个URL上,<url-pattern></url-pattern>
在servlet映射到的URL中也可以使用通配符,但是只要两种格式:*.扩展名, /.../*
在匹配的时候要参考的标准:*.do的优先级别最低
servlet单例问题:第一次访问被加载到内存,同时因为servlet是单例,所以会出现线程安全问题,
1)如果一个变量被多个用户共享的时候,要加同步机制synchronized
2)如果一个变量不需要共享,则在doGet(),doPost()中定义
servlet中的<load-on-startup>配置:需求:定时写日志,定时备份数据,定时发送邮件
项目的虚拟路径
Servlet的访问:
1、URL地址栏直接访问 ---Get
2、表单访问 ---Post
3、超链接访问Serrvlet ---Get
4、Java Script脚本访问 ---Post
5、
MVC模型:
M ---Dao+JavaBean 可以包括业务层,dao层,持久层,主要提供对业务的操作和业务的数据 --->> Hibernate
V ---JSP/HTML --->> JSP + 框架标签
C ---Servlet 主要用于接收用户的请求,然后去调用M层的service类,再根据返回结果觉得跳转到V层哪个页面 --->> Struts中Action
Tomcat用法--Servlet开发的更多相关文章
- java web学习总结(五) -------------------servlet开发(一)
一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...
- javaweb学习总结(五)——Servlet开发(一)
一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...
- Servlet开发详解
一.Servlet简介 Servlet是sun公司提供的一门用于动态web资源的技术 sun公司在其API中提供了一个Servlet接口,用户若想开发一个动态web资源,需要完成两个步骤: 编写一个J ...
- JavaWeb---总结(六)Servlet开发(一)
一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...
- javaWeb中servlet开发——过滤器
servlet开发--过滤器(filter) servlet有三种,分为简单servlet.过滤器servlet.监听servlet 简单servlet是作为一种程序所必须的开发结构保存的,继承htt ...
- java web 学习五(servlet开发1)
一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...
- javaweb学习总结二十一(servlet开发入门、servlet生命周期以及调用过程)
一:servlet开发入门 servlet是sun公司一门开发动态web资源的技术,下面编写一个servlet入门程序: 1:在tomcat服务器webapps目录下新建firstServlet目录, ...
- Servlet开发(一)
一.Servlet简介 Servlet是sun公司提供的用于开发动态web资源的技术.Sun公司在其API中提供了一个Servlet接口,用户若想开发一个动态web资源(即开发一个java程序向浏览器 ...
- javaweb学习总结(五)——Servlet开发(一)(转)
转载自 http://www.cnblogs.com/xdp-gacl/p/3760336.html 一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun ...
随机推荐
- 第13章 Swing程序设计----常用事件监听器
组件本身并不带有任何功能.这时需要为这些组件添加特定事件监听器. Swing中常用的两个事件监听器,即动作事件监听器和焦点事件监听器.
- 2016大连网络赛 Sparse Graph
Sparse Graph Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others) P ...
- jQuery动态绑定
一.原始需求 在实际项目的时候,遇到了一个问题,就是通过JS动态生成的元素,无法触发JS事件. 原始的JS代码: $(function () { $(".original").cl ...
- webapp之路--之ios上图标
以前我们用过favicon在浏览器给网站进行身份标识,用法如下: <link href="http://image.feeliu.com/web/favicon.ico" r ...
- C. Bear and Colors
C. Bear and Colors time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- CvvImage类
从OpenCV 2.2.0开始,OpenCV取消了CvvImage这个类.可是今天要用到,可以自己加入到工程中. 首先,找到CvvImage的原代码.我在网上已经找到了,具体代码如下. 这是CvvIm ...
- Socket.io官方聊天室DEMO的学习笔记
照着Socket.io官方的聊天室代码敲了一遍,遇到了一个奇怪的问题: 每次点击SEND按钮的时候,都会重新刷新页面. 在点击页面的一瞬间,看到了正在加载jquery的提示, 然后以为是jquery用 ...
- 伸展二叉树树(C#)
参考过好几篇关于将伸展树的代码,发现看不懂.看图能看懂原理.就尝试自己实现了下. 自顶向上的算法. using System; using System.Collections.Generic; us ...
- 使用bootstrap建立响应式网页——头部导航栏
1.要建立响应式网站的布局,这个时候bootstrap的高级就能体现出来了. 2.先来了解一下bootstrap提供了哪些响应式工具供我们使用: (1)屏幕宽度尺寸的概念: <768px ...
- linux自动启动程序
下面用自启动apache为例: 有两种方法可以让Apache在系统启动时自动启动 1. 在/etc/rc.d/rc.local中增加启动apache的命令,例如:/usr/local/httpd/ ...