JavaWeb学期总结

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

Part one—初识Java web

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

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

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

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

html

Part two—建立项目

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

Part three—关于JSP页面

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

首先说优势

HTML:

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

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

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

JSP:

一、 能够被爬虫爬到

二、 减小请求次数

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

再看缺点

HTML:

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

二、 页面请求过多

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

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

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

JSP:

一、 增长了服务器的压力

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

三、 过于依赖java运行环境

四、 复用较低

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

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

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

Part four—知识点的理解

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

web

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

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

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

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

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

sql

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

数据库

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

json

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

后端

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

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

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

浏览器

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

对于动态网页的编写改进,能够利用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拿一个数据源就能够了,避免了往后改变数据后须要改源代码的麻烦。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

java学期总结_JavaWeb学期总结相关推荐

  1. Java 北大青鸟 第一学期 第二章 上机练习

    Java 北大青鸟 第一学期 第二章 上机练习 手中牌互换 华氏度摄氏度 银行定期储蓄业务 数据类型 源文件下载 手中牌互换 public static void main(String[] args ...

  2. Java 北大青鸟 第一学期 第三章 选择结构(一) 上级练习+课后作业

    第一学期 第三章上级练习+课后作业 示例1(张浩的Java成绩) 示例2(张浩的Java成绩和音乐成绩) 幸运抽奖 会员录入 示例5 实例7 示例8 计算会员折扣 从大到小 飞机 运算符 总结 下载链 ...

  3. Java 北大青鸟 第一学期 第六章 循环结构(二) 上级练习+课后作业

    第一学期 第六章 循环结构(二) 实例1 实例3 输入任意一个整数,根据这个值输入值为6 示例4 设计客户的年龄层次 实例6 实例7 循环录入会员信息 验证用户信息 鸡兔同笼 男人女人小孩 总结 源码 ...

  4. Java 北大青鸟 第一学期 第四章 选择结构(二) 上级练习+课后作业

    第一学期 第四章 选择结构二 示例1 实现购物菜单 实现换购的功能 本章练习一 计算器 下载地址 1. 选择结构 基本if选择结构 if(条件){条件成立时执行的代码} if-else选择结构 if( ...

  5. Java 北大青鸟 第一学期 第五章 循环结构(一) 上级练习+课后作业

    第一学期 第五章 循环结构(一) 实例1 打印50分试卷 实例5 如何进行程序调试 Java MyShopping管理系统 > 购物结算+管理系统 本章作业 源码下载 实例1 int i = 1 ...

  6. JAVA学期总结及学期计划。

    总结 在这学期我们通过了网课方式开始了Java课程,在网课期间由于我没有电脑,就无法操作,只能听老师讲,明白了只听理论,没有实践是万万不可的,刚开始接触觉得跟Python也蛮像的 ,但总体来说又不像, ...

  7. Web技术(Java)初学+制作学期课程表

    本学期开了Web课程,然后在书102页有一个上机练习题:制作一个本学期使用的课表. 话不多说,直接附上自己做完后的图片(源代码在后面) 今天上课才接触HTML 所以界面肯定还是一般般 随着学习,我还会 ...

  8. java 16 binary_src/ch16/BinaryTree.java · 20162324-春旺/第二学期 - Gitee.com

    package ch16; import java.util.Iterator; /** * Created by 春旺 on 2017/10/18. */ public interface Bina ...

  9. java web实验_javaweb实验报告

    javaweb实验报告 甘肃政法学院本科生实验报告(一)姓名:学院:计算机科学学院专业: 计算机科学与技术班级实验课程名称:实验日期:2012 年 04 月 9 日指导教师及职称实验成绩:开课时间:2 ...

最新文章

  1. 160个Crackme023
  2. 8086汇编-做1到100的加法并显示结果
  3. 不同系统可以用一个数据库服务器吗,同一个数据库 不同服务器吗
  4. php7 php.ini 没有mysql_php7的配置文件里没有mysql.default_socket吗?
  5. js 判断支持webgl_「WebGL基础」:第一部分
  6. DBSCAN(自适应密度聚类)算法解析
  7. 关于数据库主键和外键(终于弄懂啦)
  8. MySQL批量插入和单条插入的性能
  9. vue3实现动态组件加载写法
  10. FakeUserAgentError('Maximum amount of retries reached') 彻底解决办法
  11. android textview 字体边框,android TextView加边框
  12. win10打印服务器纸规格没有显示,win10系统打印机添加了自定义的纸张却找不到的操作办法...
  13. Android软键盘与界面内容的坑
  14. 如何保护个人信息安全?
  15. Vue CLI 脚手架
  16. 如何使用Arthas查看类变量值
  17. 【echarts】24、highchart+vue2 - 3D饼图
  18. TokenInsight BTC永续合约流动性实时数据 | TokenInsight
  19. 协程(一)——什么是协程
  20. php网页设置字体排列,高品质的网页设计: 实例与技巧之三(文字排列与字体选用的诀窍)...

热门文章

  1. 生产安全管理解决方案
  2. 【IT名人堂】专访高级架构师:京东双11背后的NoSQL数据库与分布式存储内幕
  3. Executors类创建四种常见线程池
  4. Mysql:insert into select与 insert into values
  5. 菌菇房智能控制系统方案
  6. dataGridView选中行的语法
  7. java计算机毕业设计web校园信息管理系统MyBatis+系统+LW文档+源码+调试部署
  8. Fedora 安装 Apache HTTP Server
  9. CloudStack常用API
  10. 调用系统程序导入手机上的vcard文件