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 ...
随机推荐
- Servlet程序开发-Helloworld
D:\Workspace\WEB-INF\classes下新建HelloServlet.java文件: package org.lxh.servletdemo ; import java.io.* ; ...
- Codeforces Round #272 (Div. 1) B 构造 math
http://www.codeforces.com/contest/477/problem/C 题目大意:给你n个集合,每个集合里面有四个数字,他们的gcd是k,输出符合条件的集合中m,m为集合中最大 ...
- CodeForces 158C - Cd and pwd commands(模拟)
这个题我们又把题意理解错了,队友翻译了以后给我解释,我问这个直接一个单词开头的是要找到这个文件夹吗,他说是,然后我就呵呵了..奔着树形结构去和字符串维护就去了...做了好久都没模拟出来,感觉做出来的人 ...
- USACO Section 1.3 Mixing Milk 解题报告
题目 题目描述 Merry Milk Makers 公司的业务是销售牛奶.它从农夫那里收购N单位的牛奶,然后销售出去.现在有M个农夫,每个农夫都存有一定量的牛奶,而且每个农夫都会有自己的定价.假设所有 ...
- 使用response实现文件下载注意点
创建web工程,使用response实现文件的下载. 在webRoot下创建download文件,里面包含要下载的文件,现在把源码贴上来,然后再说我遇到的问题 public class DownLoa ...
- docker 1.12 版本 docker swarm 集群
博客已经迁移到 个人博客中 个人博客 更新地址: http://www.xf80.com/2016/10/25/docker-swarm-1.12/ docker 1.12 版本 的新特性 (1)do ...
- 关于HTTP_CLIENT_IP,HTTP_X_FORWAR
HTTP_CLIENT_IP:可通过http头伪造HTTP_X_FORWARDED_FOR:可通过http头伪造REMOTE_ADDR:可能是用户真实IP也可能是代理IP 服务端获取IP地址 http ...
- Spring注入值得2种方式:属性注入和构造注入
Spring是一个依赖注入(控制反转)的框架,那么依赖注入(标控制反转)表现在那些地方了? 即:一个类中的属性(其他对象)不再需要手动new或者通过工厂方法进行创建,而是Spring容器在属性被使用的 ...
- 在js中如何得到上传文件的大小。
<html> <head> <script language="javascript"> function getSize() { ...
- JQuery收集