实习日志(3)


分为三部分:1、Servlet技术延伸;2、JSP技术熟悉了解;3、JavaWeb和数据库mySQL链接初识

1、 Servlet技术的延伸主要包括三方面:

(1)      输入和输出:

A、Servlet向客户端发送application/force-download类型数据。注意文件格式以及文件路径,没有设置相对应路径很容易搞错

B、Servlet向客户端发送multipart/form-data类型数据。利用Apache封装好的JAR包能够比较方便的进行文件上传。几个学习点http://blog.csdn.net/smallhorn/article/details/7864658 FileItem类的学习,其中包含多个函数用来判断是不是表单域以及获取名称等相关信息;Iterator迭代器的使用,对List进行遍历的一个封装类,很实用

C、Servlet向客户端发送image/Jpeg类型的图像。主要用到java.awt.image.BufferedImage:表示位于缓存中的图像;java.awt.Graphics:表示可以用来画矩形写字等等;com.sun.image.codec.jpeg.JPEGImageEncoder:表示图像编码器,能够把原始图像转换为Jpeg格式,并且能够利用外界提供的输入输出流输出图像数据

D、Servlet与客户端交换Cookies数据。Cookies数据不是位于Http请求正文和响应正文中,而是位于HTTP请求头和响应头中。Servlet利用HttpServletResponse接口的addcookies()方法,吧Cookis数据加入到Http响应结果中;Servlet利用HttpServletRequest接口的getCookies()方法,来读取HTTP中请求的所有Cookies,获得这些数据后,可以根据变量名进行单独获取,也可以全部打印出来,Cookies对于客户状态的跟踪比较有效,并且还可以设置有效期。注意Cookies的访问控制,即cookie的共享,其中使用到的函数有coolie。SetPath(”/”)以及cookie。SetDomain()函数。

(2)      与其他Web组件的协作

A、请求转发:forward()方法,把请求转发给目标组件; Servlet可以通过两种方式得到RequestDispatcher对象:调用ServletContext的getRequestDispatch(String path)必须是绝对路径;调用ServletRequest的getResquestIdspatcher(String path)路径可以是绝对的也可以是不绝对的

B、包含:include()方法,包含目标组件的响应结果;与请求转发相比:远组件被包含的目标组件的输出数据都会添加上去;在目标组件中对响应状态代码或者响应头所做的修改会被忽略。

C、重定向:Servlet元组件把请求重定向到其它组件:使用时候注意URI的设定,容易出错

D、链接:在原组件中通过HTML的《a》标记,连接到目标组件上。实际上属于HTML技术。

(3)      避免并发性问题

当多个客户端访问同一个web时候可能导致并发性问题,解决方法:根据实际需求,合理解决Servlet中变量作用域类型,局部变量、全局变量的问题;在Servlet的services()方法中,把操纵共享数据的代码块作为同步代码块。

(4)      访问Servlet容器中其他Web应用

通过设置CrossContext的属性可以实现互访

2、 看过JSP技术猛然觉得,学习HTML和Servlet都是为了JSP,它才是大BOSS。

JSP技术和HTML使用比较相似,可以直观的表达网页的内容和布局。但是JSP本质上是Servlet因此能和Servlet一样动态生成网页的内容。

主要的学习点包括:模板文本、JSP指令、JSP声明、Java程序片段和Java表达式,Jsp的请求转发、包含和异常处理等等。

教材中给的实例不算多,对于JSP的学习只能算是皮毛,需要更多实践的机会才能更好的掌握其语法知识。

3、 JavaWeb和数据库mySQL进行连接

因为之前学习过数据库的知识,所以配置起来并没有遇到很大的麻烦,运行了书本上的实例,网上书店,还没来得及细细消化,这个例子是对于学习JSP和数据库连接的好材料,明天继续看。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值