myeclipse开发javaweb难点总结
修改项目部署名:右键项目首选项—搜web
创建servlet:先在src下面建包,com.yhh.servlet,然后建新servlet,第二页改url为别名,这种方法xml会自动配置好
配置哪个服务器运行哪个项目:菜单栏找服务器图标,点下拉菜单,找Manage Deployments
重定向(resp.sendredirect)和请求转发(req.getRequestDispatcher)的区别是:重定向刷新后页面不会再变,;而请求转发刷新后会回到登陆前的状态
请求转发地址栏没变,重定向地址栏变为新页面
Cookie是把用户不同请求使用需要使用的相同数据存在浏览器里
操作:设置cookie页面ck,第一次访问ck正常登陆,利用c.setPath(“/login/ck”)在ck这个页面添加cookie,第二次访问执行ck的servlet中检查代码,检查到有cookie,则自动执行跳转到“/login/main”,这个跳转还是ck的servlet中的代码
Session指的是在一段时间内,单个用户与web服务器的一连串相关交互过程
写一些全局共享变量或路径,最好写道web.xml中作为全局变量,好处是将代码与变量解耦
Servlet的<load-on-startup>属性,是指启动时自动加载这个Servlet,并调用其init()方法,其值含义表示被加载顺序,越小越先。要设置这个属性在web.xml中,<servlet-class>下一行。
Tomcat的webapps目录下,放的是项目的Webroot目录里的内容
重启服务器时,在本地的改动,只有在myclipse下refresh,才能自动部署到tomcat的webroot目录下。在eclipse下每保存一下文件,tomcat目录下的会随之改动(改动时间发生在此),并不是点击运行服务器后开始部署。
疑惑解答:为什么nums.txt好像不随着本地更改而刷新?答:因为每次点击重启服务器,destroy()先把服务器端的次数记录写进了服务器下的nums.txt,此时如果你本地改了,但是eclipse下不做刷新动作,tomcat目录下的nums.txt不会动。每次init()加载到的都是tomcat目录下的nums.txt数据,也就是上一次被destroy()记录下来的。总而言之,想要改动,在eclipse下要有刷新动作,且改动动作是在服务器停止之后(运行中就算你改好了,tomcat下的跟着动了,但是一执行destroy又回去了,你点的是重启服务器他重启后还是显示以前的数据)。
因此,在tomcat下的nums.txt可以记录着与本地不同的数据,存着网页访问次数,而本地的nums.txt则为空。
ServletContent使用:(1)通过在web.xml中,用<param-name><param-value>配置全局数据,在servlet中可以通过sc.getInitParameter(String name)的方式获取全局数据的值。(2)通过sc.setAttribute(String name,Object value)设置键值对,在不同用户间共享使用(3)还可以获取绝对路径和流对象。
ServletConfig使用:与Content的第一点类似,只不过在xml中配置的是对单个servlet享用的数据
放置mysql-connector架包,把sql文件放到WEB-INF下的lib,右键build path即可
快速生成getter和setter等:source下,generateXXX
Myeclipse忽略单个文件错误:文件上右键—myeclipse--exclude from validation
Ajax的用途,在当前页面通过js发请求,获取后台的结果,在页面不跳转的前提下显示请求应获得的信息
myeclipse开发javaweb难点总结的更多相关文章
- MyEclipse使用总结——设置MyEclipse开发项目时使用的JDK
安装好MyEclipse之后,在MyEclipse中开发项目时,默认使用的是MyEclipse是自带的JDK,如下图所示: 如果我们需要使用自己安装好的JDK,那么就需要在MyEclipse中重新设置 ...
- Eclipse开发JavaWeb程序报Server Tomcat v7.0 at localhost was unable to start
出处:http://www.javaweb1024.com/info/582.jspx 原因重现: Eclipse开发JavaWeb程序,启动Servers的Tomcat服务器,突然跳出弹出框,内容显 ...
- 设置MyEclipse开发项目时使用的JDK
安装好MyEclipse之后,在MyEclipse中开发项目时,默认使用的是MyEclipse是自带的JDK,如下图所示: 如果我们需要使用自己安装好的JDK,那么就需要在MyEclipse中重新设置 ...
- Eclipse/Myeclipse 开发项目技巧
Eclipse/Myeclipse 开发项目 编程的本质: 把现实生活中的业务逻辑用代码实现. eclipse 是一个开放源代码.基于Java的可扩展开发平台. (最初主要用来Java语言开发,但目前 ...
- 转】MyEclipse使用总结——设置MyEclipse开发项目时使用的JDK
原博文出自于: http://www.cnblogs.com/xdp-gacl/p/3927677.html 感谢! 安装好MyEclipse之后,在MyEclipse中开发项目时,默认使用的是MyE ...
- Myeclipse开发内存溢出问题
MyEclipse开发内存溢出问题 window --> preferences --> MyEclipse --> servers --> Tomcat --> J ...
- MyEclipse使用总结——设置MyEclipse开发项目时使用的JDK
安装好MyEclipse之后,在MyEclipse中开发项目时,默认使用的是MyEclipse是自带的JDK,如下图所示: 如果我们需要使用自己安装好的JDK,那么就需要在MyEclipse中重新设置 ...
- 用MyEclipse开发REST Web Service
MyEclipse 在线订购年终抄底促销!火爆开抢>> MyEclipse最新版下载 使用MyEclipse开发RESTWeb服务来放大您的Web应用程序.在本教程示例中,您将创建一个简单 ...
- 使用MyEclipse开发Java EE应用:企业级应用程序项目(下)
你开学,我放价!MyEclipse线上狂欢继续!火热开启中>> [MyEclipse最新版下载] 二.项目组织.依赖性和类解析 JEE规范为企业应用程序定义了一个分层的Java类解决策略, ...
随机推荐
- 【LGR-060】洛谷10月月赛 I div.1&div.2
Preface 一边打一边写作文打的像shit,T2失智严重特判错了233 Orz Div1 Rank2的foreverlastnig聚聚,顺便说一句显然Luogu的比赛质量比以往显著提高了啊 以下题 ...
- 修改kile工程名字(转)
假设原来的工程文件名是first,要改成second1.在工程文件目录中,将first.uvopt和first.uvproj名字改成second.uvopt和second.uvproj.2.其他fir ...
- Vue 学习记录(一)-创建项目
环境准备 node.js vue-cli 安装配置环境 1.下载node.js,使用默认配置安装 . 2.使用npm命令安装国内下载镜像(可选) cmd: npm install -g cnpm ...
- macbook pro更换键盘的排线
以下是拆机图解 很简单的 有点动手能力的都可以更换 另外附加淘宝上的链接 https://item.taobao.com/item.htm?spm=a1z09.2.0.0.68a12e8dYAiQIx ...
- Mybatis中的association用法
这篇文章我们将来学习一些 association 用法 表结构 DROP TABLE IF EXISTS `student`; CREATE TABLE `student` ( `id` int(1 ...
- logical函数
logical函数(逻辑函数) logical(x):x ~=0时,logical(x)=1:x = 0时,logical(x)=0
- winfrom 获取焦点控件
[DllImport("user32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.Win ...
- 使用AspectCore实现AOP模式的Redis缓存
这次的目标是实现通过标注Attribute实现缓存的功能,精简代码,减少缓存的代码侵入业务代码. 缓存内容即为Service查询汇总的内容,不做其他高大上的功能,提升短时间多次查询的响应速度,适当减轻 ...
- C# if else-if 语句
一.作用 用来处理多条件的区间性的判断. 二.语法 if(判断条件) { 要执行的代码; } else if(判断条件) { 要执行的代码; } else if(判断条件) { 要执行的代码; } e ...
- C#中的一些对话框问题处理
1. 对于打开文件对话框处理 #region 打开文件对话框 string StrPath; OpenFileDialog Flag = new OpenFileDialog(); Flag.Mult ...