j2ee学习笔记
注:框架可以用word菜单中的 “视图/文档结构图” 看到
j2ee模式
value object(值对象)用于把数据从某个对象/层传递到其他对象/层的任意java对象。
通常不包含任何业务方法。
也许设计有公共属性,或者提供可以获取属性值的get方法。
jsp
1.jsp的基础知识
__
_____ |directive(指令)
| |-- scripting (脚本)
jsp -------| |__ action(动作)
|
|_____template data :除jsp语法外,jsp引擎不能解读的东西
1)在jsp中使用的directive(指令)主要有三个:
a) page指令
b) include指令
c) taglib指令
在jsp的任何地方,以任何顺序,一个页面可以包含任意数量的page指令
2)scripting(脚本)包括三种类型
a) <%!declaraction%>;
b) <%scriptlet %>;
c) <%= expression%>;
3)action(动作)
标准的动作类型有:
a)<jsp:usebean>;
b)<jsp:setproperty>;
d) <jsp:getproperty>;
e) <jsp:param>;
f) <jsp:include>;
g) <jsp:forward>;
h) <jsp:plugin>;
1. 注释: <% -----jsp comment-------%>;
<! -----html comment-------%>;
2. <%@ page session = “true”import =”java.util.*” %>;
session可以不赋值,默认为true,如果session=”false”,则在jsp页面中,隐含的变量session就不能使用。
3. 请求控制器结构(request controller)
也被称之为jsp model 2 architecture
这种途径涉及到使用一个servlet或一个jsp作为一个应用程序或一组页面的入口点。
为创建可维护的jsp系统,request controller是最有用的方式之一。
不是jsp,而是java类才是放置控制逻辑的正确的地方。
请求控制器的命名模式为: xxxcontroller.jsp
请求控制器类的命名模式为: xxxrequestcontroller
2.jsp中的javabean
jsp三种bean的类型
1) 页面bean
2) 会话bean
3) 应用bean
大多数的系统会使用一个会话bean来保持状态,而对每一个页面使用一个页面bean 来对复杂的数据进行表示。
页面bean是一个模型,而jsp是一个视图。
3.custom tag
bean是信息的携带者,
而tag更适用于处理信息。
标记库包含一个标记库描述符(tld)和用于实现custom tag的java类
在翻译阶段,jsp容器将使用tld来验证页面中的所有的tag是否都被正确的使用。
标记处理程序只是一个简单的适配器,而真正的逻辑是在另一个类中实现的,标记处理程序只是提供了一个供其他的可复用的类的jsp接口
servlet
1.servletconfig
 一个servletconfig对象是servlet container在servlet initialization的时候传递给servlet的。
servletconfig包涵 servletcontext 和 一些 name/value pair (来自于deployment descriptor)
 servletcontext接口封装了web应用程序的上下文概念。
2.会话跟踪
1) session
 当一个client请求多个servlets时,一个session可以被多个servlet共享。
 通常情况下,如果server detect到browser支持cookie,那么url就不会重写。
2) cookie
 在java servlet中,如果你光cookie cookie = new cookie(name,value)
那么当用户退出browser时,cookie会被删除掉,而不会被存储在客户端的硬盘上。
如果要存储 cookie,需加一句cookie.setmaxage(200)
 cookie是跟某一个server相关的,运行在同一个server上的servlet共享一个cookie.
3) url rewriting
在使用url rewriting来维护session id的时候,每一次http请求都需要encodeurl()
典型的用在两个地方
1) out.print(“form action=” ”);
out.print(response.encodeurl(“sessionexample”));
out.print(“form action=” ”);
out.print(“method = get>;”);
2) ……此处隐藏21410个字……是来源于
c++ ),同一个包内可以访问,访问权限是包级访问权限
d) public修饰词,表示成员是公开的,所有其他类都可以访
问
9. 方法重载与方法重写
a) 方法重载(一个类中可以有多个具有相同名字的方法,但
这些方法的参数不同(类型、个数、顺序不同))
b) 方法重写(子类定义一个方法,并且这个方法的名字、返
回类型、参数的个数、参数类型与父类继承的方法完全相同)
10. java面向对象三大特性(继承,封装,多态)
a) 封装(private):主要是set方法与get方法合作应用
b) 继承(extends):注意访问权限,看看是否能继承!
c) 多态:父类引用或者接口的引用指向了自己的子类对象,
eg(动物——1.食草动物2.食肉动物——老虎,狮子,狗);
11. 抽象类与接口
a) 抽象类(abstract)特点:1.不能new2.可以由抽象方法(但
是非抽象类不能有抽象方法)
b) 接口(interface声明)
i. 接口使用(implements):一个类可以实现一个或多个
接口,用逗号隔开。
ii. 接口强调的是功能:has——a的问题!
12. 多线程(thread类与runable接口)
a) 主要方法:
i.
start()启动线程
ii.
iii.
iv. run()程序运行的方法,功能实现区域 sleep()休眠,使程序处于休眠状态 interrupt()吵醒:吵醒处于休眠状态的程序,使进入正
常状态;
b) 线程同步(synchronized锁)关键在于this与object的区别,
各自使用的范围与坏境。
13. 流(input/output)
a) 分类:主要是字节流与字符流,还有缓冲流,数据流,对
象流……
b) 方法都差不多:主要是writer()与read()还有各自对应的数
组应用!
c) 出现乱码时注意你用的流是否合适以及你使用的编码格式
以否可以支持
14. 套接字(socket)
a) 主要功能就是通信(安全的)(利用port进行连接)
b) 利用流连接进行通信,数据传送
15.……还有好多,自己慢慢研究吧!java博大精深!
三、 我们在学习中的那些难题?
1. 总是遇到难以理解的东西?
2. 总是以为自己回了,但是又写不出来?
3. 总是觉得问题很难,但是经过别人的指点就会觉得好简
单?
第五篇:java学习的心得体会国家队每一次踢球失败后都要说这么一句:我们回去后要好好总结,下次会打得更好!
总结不代表就能改过原有的不足,也不代表就能进步了
(一)充分利用msdn因为我个人觉得它胜过任何一本编程参考书
msdn是 microsoft 当前提供的有关编程信息的最全面的资源,它包含微软最新的技术数据库,加上易学易用的全文检索功能,让您迅速找到任何您需要的技术参考数据
(二)加强自我管理,善于作自我总结,分析自已的优点及缺点
中国境内百分之八十以上的领导人在百分之八十以上的场合的讲话中都有类似的观点,所以在这里我是不多说了,反正这一条用在什么行业什么地方都不会有错的,人生最大的敌人不是就是自已吗?管好自已认清自已,那还有什么搞不定的?
(三)养成良好的文档习惯
良好的文档是正规研发流程中非常重要的环节,一个好的程序是先写好设计文档再进行编程的,在设计文档的指导下,才能写出安全的代码。如果你不写文档,一开始就写程序,这样你就不会按已设计好的路线走,而是想到哪写到哪。小功能还好说,要是大功能,就容易混乱甚至失控.那么如何写文档呢?其实我认为没有统一的标准,虽然国家及一些nb的人总结了很多的模板,但每个人的习惯不同,如果你不加以修改或创新,就套用某个标准,我相信写起来会很吃力及说不清的难受,因此我觉得只要能将你的设计思想及实现算法或步骤描述清楚就是好的文档,我强烈建议广大程序员朋友们在写文档时要善于用图表来说明你的思想,我们不是作家,也可能作文都经常性地不及格,写出五官端正的文章对我们来说可能不容易啊!好好地利用visio,rose或别的工具来表达你的思想吧!
(五)代码风格要规范,严谨,效率要高。
(六)掌握好跟踪调试技巧.
跟踪调试程序是一件繁琐而又复杂的事情,所以掌握必要的调试策略及技巧却可以使这些工作变得轻松起来.强烈建议你去看一下老美everett n.mckay及mike wooding写的书<<debugging windows programs>>,你一定受益匪浅.
(七)养成自我测试的习惯
测试工作应由测试工程师来做,但在你写完一个模块或一个软件时,还是要自已先测试一下,保证不要出现一些低级的错误.
(八)善于交流善于沟通,特别是经常与一些高手交流一下学习的心得体会
有人说,程序员的性格大多内向不喜欢说话,其实是有些误会了,不是不喜欢而是话不投机,我的脑袋一天到晚都在不停地转,函数,数据,算法啊充满了我的世界,我那还有时间与你谈一些无聊的话题,话要找对人了,才容易谈下去,书上说过"听君一席话,胜读十年书",你要找的就是这种豁然开朗!
(九)阶段性地做一下专题总结
知识要温故而知新,因此我程序员要养成阶段性地做专题总结的习惯,比如你这个月学习或在做与多线程有关的模块或项目,那么在你做完后,你就可以好好地总结一下所有与多线程相关的技术,包括理论知识,实践方法以及各种技巧及优秀文章等等,这对你各种能力的提高将有
很大的帮助,你试过了吗,如果没有,那就快点行动吧!
(十)要有持之以恒的精神
我只是想说明要学好任何一门技术,最好要有持之以恒精益求精的精神,特别是学一些比较抽象比较难的技术,除了思考一下你的学习方法以外,还必须坚定你的目标及信念!
我们向你推荐更多精彩内容:java学习心得体会
java学习心得
java学习心得
java学习心得 (1)
java学习心得
文档为doc格式