java学期总结_JavaWeb学期总结

JavaWeb学期总结

学习JavaWeb开发已经一学期了,对于这门课程的感觉仍是比较深入,由于里面涵盖了确确实实有不少重要的知识。还记得开学第一堂课程,科任老师给咱们介绍了动态网站的含义和重要性。

Part one—初识Java web

首先我了解了动态网站的含义,它能够根据用户不一样的操做来返回不一样的页面。动态网站之因此称为动态,是由于它能对页面内容实时更新并且具备交互功能。这些功能是静态网页作不到的。

实现动态网页就须要学习b/s架构,b就是Browser(前端),s则是Server(服务器端)

B/S架构是浏览器和服务器的架构模式,它的好处是不须要安装客户端软件。

服务器端我采用的是TomCat服务器,由于tomcat服务器能支持Servlet和JSP的规范,技术先进,性能稳定,因此我选择了它。

9648135e01a755067ad5f5fb767803b3.pnghtml

Part two—建立项目

java学期总结_JavaWeb学期总结_第1张图片

开发的时候采用的环境选择的是intellij idea,比较方便的是能够直接建立Java web项目,不用本身在添加依赖。前端

Part three—关于JSP页面

java学期总结_JavaWeb学期总结_第2张图片

Jsp页面全都放在web目录下面的,编写jsp页面和html页面极度类似,我原本觉得两者为同一者,通过我查阅资料以后,我发现她们有本质上的区别。HTML是静态页面,JSP是动态页面。各自也有着优缺点。

首先说优势

HTML:

一、 开发过程当中前端与后端脱离,交互经过json传输来实现.。

二、 跨平台能力更强,依托于浏览器的支持。

三、 使后台数据接口可以获得复用

JSP:

一、 能够被爬虫爬到

二、 减小请求次数

三、 不用考虑浏览器的兼容性

再看缺点

HTML:

一、 开发难度大,考虑浏览器的兼容性

二、 页面请求过多

三、 属于后加载,没法被爬虫爬到

四、 接口代码须要新增不少

五、 没法直接显示Java实体类对象,须要转换为json格式

JSP:

一、 增长了服务器的压力

二、 前端与后端未脱离,拖慢开发进度

三、 过于依赖java运行环境

四、 复用较低

HTML和JSP各有各的用处,这就取决与咱们本身开发的时候的需求,根据需求来选择最佳的编辑方式固然是最好的。java

在JSP页面编辑过程当中,会用到极多的元素,eg:模板元素、指令元素、动做元素、声明元素、脚本元素、表达式元素、注释元素。

这些元素能够都算得上是理论知识,也就是动态网页学习的基础,前期学习的时候老是记不住各种元素,学习过程当中感到压力重重。通过屡次实践操做和熟悉,最终仍是记住了。

Part four—知识点的理解

1、 jsp中的隐含对象是在JavaWeb开发中十分经常使用的,在我学习过程当中,我概括了一下最经常使用的几个。

java学期总结_JavaWeb学期总结_第3张图片web

我认为它们每一个对象里面的方法也是必需要掌握的,即便有些咱们如今还用不着,可是终究是为了不书到用时方恨少。

2、 JDBC是这学期用的比较多的一个知识点了,第一次接触是在上学期期末的实训当中

,这能够算得上是一个重点了。

JDBC并非能直接运行的,它须要添加一个jar包,才能安装驱动。有时老是粗枝大叶埋头敲代码忘记添加jar包,致使程序报错。

链接数据库的方法能够写在脚本中

java学期总结_JavaWeb学期总结_第4张图片sql

可是最好的方法是写在Java文件里面,最经常使用的就是写在dbutil子目录里面,做为一个链接数据库的类,方便调用,

java学期总结_JavaWeb学期总结_第5张图片数据库

在编写ConnectionManager文件的时候,千万得注意私有化构造方法

java学期总结_JavaWeb学期总结_第6张图片json

还有一个细节是在链接完毕数据库以后,须要关闭数据库的链接,以避免资源的浪费。

java学期总结_JavaWeb学期总结_第7张图片后端

这里写的是一个关闭数据库链接的静态方法,随时能够调用。

除开这个重点以外,还有接口也很重要喔~~~

为了方便后期修改逻辑,接口最好写成接口层和接口实现类的形式。

java学期总结_JavaWeb学期总结_第8张图片浏览器

接口里面的方法就是写用户须要实现的功能的方法,接口实现类里面的方法无非就是实现接口里面的功能。

对于动态网页的编写改进,能够利用Servlet来专门实现处理交互的功能,只须要在servlet类里面添加url的映射,编写逻辑事后就能够实现,不须要在jsp文件里面编写脚本。tomcat

咱们还须要理清一个逻辑:浏览器http请求tomcat服务器servlet层执行doget方法和dopost方法返回数据

能够清楚的看到tomcat服务器才是和客户打交道的,因此在servlet层处理完数据事后是返回tomcat的,再是经过tomcat把数据返回到用户的。

在实际的操做中,不少时候doget()方法里面没有写代码,最多也只是调用了doPost()方法,查询资料了解到通常来讲咱们是用不到doGet方法的,doGet方法提交表单的时候会在url后边显示提交的内容,因此不安全。并且doGet方法只能提交256个字符(1024字节),而doPost没有限制,由于get方式数据的传输载体是URL(提交方式能form,也能任意的URL连接),而POST是HTTP头键值对(只能以form方式提交)。一般咱们使用的都是doPost方法,你只要在servlet中让这两个方法互相调用就好了。

3、 JNDI数据源也是一个比较重要的点,JNDI至关因而优化了以前的JDBC经过Mysql驱动器链接数据库。JNDI是提供数据源链接的接口,JDBC连接数据库只须要在JNDI拿一个数据源就能够了,避免了往后改变数据后须要改源代码的麻烦。

java学期总结_JavaWeb学期总结_第9张图片

4、 JavaBean也是一个常识了,它是用户实体类,不算难点。他的做用相似于以前的dao层接口,方便数据的处理,而且使代码的维护性提升。

java学期总结_JavaWeb学期总结_第10张图片

在声明变量之后,用快捷键alt+insert,添加和设置方法(getter and setter)

5、Servlet基础也是本学期的一大重点。

Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是做为来自 Web 浏览器或其余 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。

了解它的含义还须要知道它的生命周期,分析它的逻辑

java学期总结_JavaWeb学期总结_第11张图片

在最近的西蒙购物网项目里面让我感觉颇深,它代替了以前的脚本语言的写法,直接能够在servlet里面进行功能的实现,而且能够和其余软件交互。

在servlet类里面,在doget方法里面切记要设置字符编码,在我本身敲代码的时候老是会忘记设置编码,因此致使查看运行效果的时候老是乱码,而再次返工查看代码。为了避免必要的徒劳,因此仍是细心点好。

5、 AJAX也是比较重要的一个点,AJAX 最大的优势是在不从新加载整个页面的状况下,能够与服务器交换数据并更新部分网页内容。.AJAX不须要任何浏览器插件,但须要用户容许JavaScript在浏览器上执行。

在建立一个HMLHttpReques的对象以前,必须首先肯定用户当前使用的浏览器类型,以后根据浏览器建立适合的HMLTHttpReques对象,若是为普通的Firefox,则直接使用XMLHttpReques()的方式建立,若是是IE浏览器,则经过new ActiveXObject()的方式进行建立。

XMLHttpRequest有不少属性和方法,我都从老师提供的资料中摘抄下来,方便记忆。

java学期总结_JavaWeb学期总结_第12张图片

java学期总结_JavaWeb学期总结_第13张图片

AJAX还有同步和异步之分,同步则是在发送方发出数据以后,等待收方发回响应之后才发下一个数据包的通信方式。异步则相反,是大宋玩数据以后,不等收方发回响应,接着发送下一个数据包的通信方式。

异步处理的过程当中,用户填完信息会自动像服务器提交,而后服务器响应客户端,客户仍然在这个填表格信息,即向服务器屡次请求。有一点像注册信息的检测过程,每一项信息输入完事后就会检测一次,若是等到输入完了才检测全部信息,若是错误还须要从新再次填写。相对来讲,异步的方式为用户节约了时间,提升了用户的体验

AJAX是为前端提交数据给后台,后台接收到数据进行处理后返回给前端。前端拿到AJAX返回的数据事后,根据不一样的数据进行页面跳转,再也不是后台来执行页面的转跳,AJAX更像一个传递者。

本学期的JavaWeb学习立刻就要结束了,学习过程当中遇到不少疑难杂症,也请问老师查找资料,幸亏都解决了,相比其余同窗,我出的问题都是比较小的问题,譬如某个单词写错了,或者少了个分号,逗号之类的。逻辑上没有太大的问题。要说对本身的评价的话,我认为本身只能算得上中等偏下。Java语言我能看懂,可是要我本身关书写出来,其实仍是有一点困难。我概括的主要缘由仍是本身不够熟练,敲得太少了,能作的案例太少,缺少太多资源,网上在资源太碎片化,致使本身在练习这一块迷失了方向。全部不少生僻的逻辑不能熟练的掌握也只能怪本身。总的来讲,本身仍是能坚持到今天,已经很不错了,而且在不断努力的汲取新知识,消化旧知识。对不懂得知识也有必定的回顾,我也相信,只要通过我不断的努力和练习,我必定能够掌握这门语言,俗话说真金不怕火烧,我在学习专业的过程当中更应该学会如何理智的面对疑难杂症。有了以往的经验和前车可鉴,我相信我之后能够作到更好。Practice Make Perfect!!!

你可能感兴趣的:(java学期总结)