上一周的总结任务被我犯拖延症给拖到了这一周,二期的测试考的不好,除了本身应试的技巧有问题以外,还有对已经学过的东西并无造成一个很深入的印象,致使动手答题时,只能获得一个模糊不许确的答案。吸收教训,确实在二期末尾这短期很放松,没有去稳固知识点,没有去拓展知识点。上一周和这一周讲了设计模式,velocity、struts二、mybatis、spring四个框架,知识内容很是之多,学起来感受到吃力,因此在以后,必定要继续认真对待,对于该记忆和理解的重点必定要能手写出来,一切为了面试能轻松!前端
1.Velocityjava
velocity是一个基于java的模版引擎,将java代码和web页面分离。web
velocity引擎读取模版(.vm文件)时,直接输出模版文件中的全部文本,但以$字符开头的除外,$符号标识着一个模版变量的位置。面试
模版引擎的最强大功能是内建的映像引擎查找对象信息。“.”操做符可以方便的提取任意加入到VelocityContext的对象的任何公有方法,或对象的任意属性。算法
在编写模版时,可使用VTL语言来辅助设计模版,VTL语句以#开头,变量以$开头。velocity应用于web中的步骤:1,加包。2,配置web.xml文件,添加一个<servlet>'设置VelocityViewServlet'</servlet> 和一个 <servlet-mapping>'设置相应的模版文件'</servlet-mapping>,模版文件中的数据搜索范围从page---servletContext。在使用时,将服务器端跳转到模版文件,就能在浏览器上显示已经导入好数据的页面了。spring
2.设计模式编程
设计模式能够分为三类:建立型,结构型,对象行为型。后端
mvc模式:从一开始学习java web项目编程,就是使用这种模式来编写,model是应用对象,view是视图即网页,controller是控制层即servlet,这样作能够将三者分离,提升灵活性和复用性。设计模式
单例模式:保证一个类仅有一个实例对象,并提供访问这个实例的公有get方法。单例模式有懒汉、饿汉以及完美懒汉三种。浏览器
工厂模式:对于要建立的类分红产品类,根据功能逐级抽象,而后建立实例的方法在工厂类中,也可逐级抽象,根据需求来产生实例。按照抽象程度能够分为:简单工厂、工厂方法、抽象工厂三种模式。
组合模式:将对象组合成树形结构以表示“部分-总体”的层次结构。这种模式相似于N叉树的实现。即下一级的根节点是上一级的子节点。
装饰模式:动态的给一些对象添加修饰的效果,由于是动态的添加,因此比子类更加丰富。
代理模式:为一个对象提供一个代理,以控制对这个对象的访问。
策略模式:定义一系列的算法,将它们封装起来,而且可使他们相互转化。
建造者模式:例:若是要造一个房子,房子的结构是固定的,可是却有茅草房和洋房的区别,因此房子为抽象类,具体房子的实现类继承房子类,最后由建造者来选择实现。
观察者模式:定义对象间一对多的依赖关系,当一个对象变化时,全部依赖他的对象都获得通知而更新。
java中的设计模式多达23种,这须要持续学习理解和在应用中熟练。
3.Struts2
做为JAVA框架的三剑客ssh(struts2,spring,hibernate)中的一个,其中的主要特色是controller层用action来替代了servlet,而且经过配置文件来实现资源的跳转。struts2框架是一个单层框架,完成的是web前端页面和后端控制层的数据互通,核心组件是Action,拦截器等,struts2框架使用包来管理action和interceptor。action中通常能够继承ActionSupport类(有验证validate的方法),来辅助咱们更好的完成action的开发。ActionContext类(当前Action的上下文)很是重要,有许多重要的方法,来获取页面数据。struts2在包配置文件中设置逻辑视图和物理视图的映射关系,<exception-mapping>设置当异常发生时,跳转到哪一个逻辑视图中。
struts2的数据流是:HttpServletRequest--->ActionContextCleanUp--->(other filters)--->ActionMapper--->FilterDispatcher--->ActionProxy--->ActionInovaction--->Interceptors--->Action--->Result--->Interceptors--->HttpServletResponse--->
在struts2中基于表单的文件上传:必须是post方法,并且enctype="multipart/form-data",既能够利用<input type="file" name="uploadFile">来选择文件,也能够利用<s:>标签中的文件选择器。上传以后struts2会将文件保存在临时目录下,而后用io将文件输出到指定的位置。
struts2中<result type="stream">能够用来提供下载文件。
总之这些内容都值得去深究,先暂时了解经常使用的功能和概念,之后用到再去查阅相应的资料。