自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 资源 (9)
  • 收藏
  • 关注

原创 Mybatis in Action——配置及使用Mybatis

认识MybatisMyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。<dependency&...

2018-10-30 16:29:00 489

原创 SpringBoot in Action——测试

Spring的SpringJUnit4ClassRunner可以在基于JUnit的应用程序测试里加载Spring应用程序上下文。在测试Spring Boot应用程序时,Spring Boot除了拥有Spring的集成测试支持,还开启了自动配置和Web服务器,并提供了不少实用的测试辅助工具。集成测试自动配置我们以前Spring的测试是这样的:@RunWith(SpringJUnit4Class...

2018-10-30 15:34:05 561

原创 SpringBoot in Action——自定义配置

在传统的Spring配置的过程,就如同订比萨的时候自己指定全部的辅料。而Spring Boot自动配置就像是从菜单上选一份特色比萨,让Spring Boot处理各种细节比自己声明上下文里全部的Bean要容易很多。幸运的是,Spring Boot自动配置非常灵活。就像比萨厨师可以不在你的比萨里放蘑菇,而是加墨西哥胡椒一样,Spring Boot能让你参与进来,影响自动配置的实施。覆盖Spring...

2018-10-30 15:03:28 621

原创 SpringBoot in Action——项目构建

SpringBoot结构通常情况下,你创建的spring boot的结构如下:build.gradle:当然build.gradle也可以换为pom,xml。Application.java:一个带有main()方法的类,用于引导启动应用程序。ApplicationTest.java:一个空的JUnit测试类,它加载了一个使用Spring boot自动配置功能的Spring应用上下文。...

2018-10-30 13:37:50 646

原创 SpringBoot in Action——初识SpringBoot

现在,我们里利用了整本书的篇幅来介绍Spring。尽管Spring带来的主要益处就是简化Java开发,但本章将会介绍Spring Boot如何让这项任务变得更简单。Spring Boot在Spring之上,构建了全新的开发模式,移除了开发Spring应用中很多单调乏味的东西。我们首先整体了解一下Spring Boot,看它是怎么简化Spring的。Spring Boot简介在Spring家...

2018-10-29 14:45:15 1504

原创 SpringMvc in Action——使用SpringMvc创建REST API(不太懂)

数据为王数据和软件相比,谁更重要?如果你问问业务员,他们毫不犹豫的回答数据。近几年以信息为中心的表述行状态转移(REST)已经替换传统SOAP Web服务的流行方案。SOAP一般会关注行为和处理,而REST关注的是要处理的数据。了解REST当谈论REST的时候,有一种常见的错误就是将其视为“基于URL的Web服务”——将REST作为另一种类型的远程过程调用(RPC)机制,就像SOAP一样...

2018-10-29 11:53:06 607

原创 SpringMvc in Action——使用远程服务

Spring远程调用概览远程调用是客户端应用和服务器端之间的会话。在客户端,它所需要的一些功能并不在该应用的实现范围之内,所以应用要向提供这些功能的其他系统寻求帮助,而远程应用通过远程服务暴露这些功能。假如我们想把Spittr应用中的某些功能发布为远程服务,并提供给其他应用来使用。为了实现此想法,我们需要把SpitterService接口的基本功能发布为远程服务。其他应用与Spittr之间...

2018-10-26 15:50:31 528

原创 SpringMvc in Action——保护方法应用

以前我们知道了如何使用SpringSecurity保护应用的Web层,防止无权限的访问。这相当于房间的门锁,这个房间已经锁好了,只有有钥匙的人才能进入。但是,警报系统给了我们第二层的防护,以防有可能窃贼会越过门锁的保护。在本章,我们可以看到Spring Security保护bean的方法,通过这种方法,我们就能声明安全规则。保证用户如果没有执行方法的权限,就不会执行相应的方法。使用注解保护方法...

2018-10-26 14:11:02 340

原创 SpringMvc in Action——缓存数据

小孩子常常会反复问我一个问题:“为什么你长的这么帅啊?”过了一会,又再问一遍。很多方面来看,在我们所编写的应用中,有些组件也是这样的。无状态的组件一般来讲扩展性要好一些,但是他们也更倾向于一遍一遍询问相同的问题。因为他们是无状态的,一旦完成当前的任务,就会丢弃掉已经获取到的所有解答。...

2018-10-26 14:02:38 557

原创 SpringMvc in Action——持久化数据

小时候,我们骑车就能获得快乐。后来随着慢慢长大,我们需要的自行车就能满足了,我们可能想要装载一些生活用品,或者接送孩子,或者要去很远的地方。我们的需求超出了自行车的功能范围。在持久化的世界里,JDBC就像是自行车。对于分内的工作,它能很好的完成。然而,随着应用越来越复杂。我们可能需要将对象属性映射到数据库的列上,我们可能需要自动生成语句和查询,我们可能需要一些更复杂的特性,譬如:延迟加载(L...

2018-10-25 16:05:46 747

原创 SpringMvc in Action——Spring和JDBC

不管是使用JDBC或者Hibernate MyBatis这种对象关系映射(ORM)框架实现数据持久化,Spring都能帮你消除持久化代码中那些单调枯燥的访问逻辑。Spring的数据访问哲学为了避免持久化的逻辑分散到应用的各个组件中,最好将数据访问的功能放到一个或多个专注于此项任务的组件中。这样的组件通常成为数据访问对象(data access object, DAO)或者Reposito...

2018-10-25 11:48:16 387

原创 SpringMvc in Action——保护Web应用

Spring Security简介Spring Security 是为基于Spring的应用程序提供声明式安全保护的安全性框架。Spring Security提供了完整的安全性解决方案,它能够在Web请求级别和方法调用级别处理身份认证和授权。因为基于Spring框架,所以Spring Security充分利用了依赖注入DI和面向切面AOP的技术。理解Spring Security的模块应用...

2018-10-24 16:38:09 393

原创 SpringMvc in Action——处理异常以及跨重定向

处理异常当处理请求时,抛出异常应该怎么处理呢?如果发生了这种情况,客户端又怎么响应呢?Spring提供了多种方式将异常转换为响应:特定的异常会自动映射为指定的HTTP状态码异常上可以添加@ResponseStatus注解,从而将其映射为某一个HTTP状态码在方法上可以添加@RxceptionHandler注解,使用其来处理异常。将异常映射为HTTP状态码一些异常会默认映射为HTT...

2018-10-24 14:01:21 607

原创 SpringMvc in Action——渲染Web视图

理解视图解析将控制器中的请求处理的逻辑和视图的渲染解耦合是Spring MVC的一个重要特性。如果控制器直接负责产生HTML,那么就很难不影响处理逻辑的前提下,维护和更新视图。控制器方法和视图的实现会在模型内容上达成一致,这是两者最大的关联。除此之外,应该两者应该保持足够的距离实现解耦合。在之前,我们使用了名为InternalResourceViewResolver的视图解析器,在它的配置中,...

2018-10-24 11:06:07 704

原创 SpringMvc in Action——控制器(2)

处理表单Web应用的功能往往并不局限于为用户推送内容。大多数的应用允许用户填充表单,并将数据提交回应用中。表单分为两个方面,展现表单以及处理用户通过表单提交的数据,在Spittr应用中,我们现在来做一个新用户注册。SpitterController是一个新的控制器:package spittr.web;import org.springframework.stereotype.Cont...

2018-10-24 10:34:12 369

原创 SpringMvc in Action——控制器(1)

编写基本的控制器在SpringMVC中,控制器只是添加了@RequestMapping的类。假设控制器类要处理对“/”的请求,那么如下所示的最简单的控制器类:package spittr.web;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.R...

2018-10-23 14:53:37 546

原创 SpringMvc in Action——认识Mock

要继续接下来的学习,我们先看看Mock概述对模块进行集成测试时,希望能够通过输入URL对Controller进行测试,如果通过启动服务器,建立http client进行测试,这样会使得测试变得很麻烦,比如,启动速度慢,测试验证不方便,依赖网络环境等,这样会导致测试无法进行。当然,我们可以不使用MOCK进行测试,但是这种测试仅仅是调用了方法, 无法模拟浏览器环境。为了可以对代码进行测试,可以通过...

2018-10-23 11:30:31 478

原创 SpringMvc in Action——构建Sprig Web应用程序

SpringMVC起步跟踪Spring MVC请求每当用户在Web浏览器中点击链接或者提交表单的时候,请求就开始工作了。对请求的工作描述就像是快递投送员。请求是一个非常繁忙的家伙。从离开浏览器开始到获取响应返回,它会经历好多站。在每站会留下一些信息的同时,也会带上其他信息。在请求离开浏览器时①,会带有用户所请求内容的信息,至少会包含请求的URL。还可能带有其他信息,如用户提交的表单信息。...

2018-10-23 11:10:47 489

原创 Spring in Action——AOP

定义AOP术语通知通知定义了切面是什么以及何时使用。除了描述切面要完成的工作,通知还解决了何时执行这个工作的问题。Spring切面包含5类通知:Before:前置通知,方法调用之前。After:后置通知,方法调用之后,不关心方法的输出是什么。After-returning:方法成功执行之后。After-throwing:方法抛出异常之后。Around:通知包裹了被通知的方法,在被...

2018-10-19 16:17:39 398

原创 Spring in Action——高级装配

bean装配所设计的领域并不仅仅局限于上一章学习到的内容。Spring提供了很多技巧,实现更高级的bean装配功能。环境与profile在开发软件的时候,有一个很大的挑战就是将应用程序从一个环境迁移到另一个环境。开发阶段中,某些环境相关的做法可能并不适合迁移到生产环境中。数据库配置,加密算法以及外部系统的集成是跨环境部署时会发生变化的几个例子。比如考虑一下数据库配置。在开发环境中,我们可能使...

2018-10-19 10:26:17 394

原创 Spring in Action——装配bean

Spring配置的可选方案虽然以前介绍过,但是再来介绍一遍:xml中显式配置java代码中显式配置隐式的bean发现机制和自动装配乍一眼看去,三种可选方案可能会让spring变得更加复杂,因为每种配置技术所提供的功能会有一些重叠,在某些场景中不知道选择哪种。但是,在大多数场景下,全凭个人喜好使用。即便如此,作者推荐显式的配置越少越好。当然,不得不使用显式配置的时候,比如有些源码...

2018-10-18 14:54:10 411

原创 Spring in Action——Spring之旅

根本使命Spring的目标是致力于全方位的简化java开发:基于POJO的轻量级和最小侵入性编程通过依赖注入和面向接口实现松耦合基于切面和惯例进行声明式编程通过切面和模版减少样板式代码POJOSpring竭力避免因为自身API而弄乱你的应用代码。Spring不会强迫你实现Spring规范的接口或继承Spring规范的类,相反,在基于Spring构建的应用中,它的类通常没有任何痕迹...

2018-10-17 16:54:37 846

原创 从零开始的实习——Spring——AOP初识

从OOP到AOP从过程化的编程到面向对象编程OOP,我们一直在找到更加完美的开发方法。当OOP/OOSD(Object-Oriented Software Development)被提出来,以取代过去的面向过程的编程方法时,或许那时候的人们认为这是一直所追求的那颗“银弹”。但是,不得不承认的是,即使是OOP,依然不能很好的解决所有问题。使用OO,我们可以对业务需求等普通关注点进行很好的抽象和封...

2018-10-17 13:21:36 463

原创 从零开始的实习——Spring——ApplicationContext(暂时跳过)

Spring中的ResourceSpring框架内部使用org.springframework.core.io.Resource接口作为所有资源的抽象和访问接口,我们在之前构造BeanFactory的时候已经接触过它,比如:BeanFactory beanFactory = new XmlBeanFactory(new ClassPathResource("..."));其中ClassPat...

2018-10-17 11:16:16 380

原创 从零开始的实习——Spring——BeanFactory(4)

方法注入与方法替换暂略。Spring揭秘——P68Spring的IoC容器作用Spring的IoC容器,它会以某种方式加载Configuration Metadata(通常也就是XML格式的配置信息),然后根据这些信息绑定整个系统的对象,最终组装成一个可用的基于轻量级容器的应用系统。包含了两个阶段:容器启动阶段:将配置信息解析和分析,并将分析后的信息编组为相应的BeanDefini...

2018-10-17 10:42:07 448

原创 从零开始的实习——Spring——BeanFactory(3)

bean的继承和抽象假如某一天真的需要对FXNewsProvider使用继承进行拓展,那么可能会声明如下代码:class SpecificFXNewsProvider extends FXNewsProvider{private IFXNewsListener newsListener;private IFXNewsPersister newPersistener;...}实际上...

2018-10-17 10:22:52 410

原创 从零开始的实习——Spring——BeanFactory(2)

BeanFactory的XML之旅<beans>和<bean>所有使用XML文件进行配置信息加载的Spring IoC容器,包括BeanFactory和ApplicationContext的所有XML相应实现,都是用统一的XML格式。在Spring2.0版本之前,这种格式由Spring提供的DTD规定,也就是说所有的Spring容器加载的XML配置文件的头部,都需要以下...

2018-10-16 17:15:54 377

原创 从零开始的实习——Spring——BeanFactory(1)

图为Spring的IoC容器和IoC Service Provider之间的关系。我们以往都在强调IoC的意思,现在我们来看看***容器***。容器Spring提供了两种容器类型:BeanFactory:基础类型IoC容器,提供完整的IoC服务支持。如果没有特殊指定,默认采用延迟初始化(lazy-load)策略。只有当客户端对象需要访问容器中的某个受管对象的时候,才对该受管对象进行初始化...

2018-10-16 14:40:00 443

原创 从零开始的实习——Spring——IoC Service Provider

IoC Service Provider的职责虽然业务对象可以通过IoC方式声明相应的依赖,但是最终仍然需要通过某种角色或者服务将这些相互依赖的对象绑定在一起。IoC Service Provider在这里是一个抽象出来的概念,甚至可以是比较通过的IoC框架或者IoC容器实现。比如:IFXNewsListener newsListener = new DowJonesNewsListener...

2018-10-16 10:59:56 805

原创 从零开始的实习——Spring——IoC的基本概念

Inversion of ControlIoC中文翻译为控制反转,别名也叫依赖注入(Dependency Injection)DONT CALL US, WE WILL CALL YOU上面的英文很好的描述了反转,那么为什么需要IoC,它的具体意义是什么,它到底有什么独到之处?为了更好的描述这个概念,我们引入以下简单的场景:在项目FX中,需要经常近乎实时的为客户提供外汇新闻。通常情况下,...

2018-10-15 17:34:45 441

原创 从零开始的实习——Spring——Spring框架的由来

Spring之崛起在早期的J2EE平台开发实践过程中,盲目地推崇某一“兵种”,比如EJB。对于EJB这种重骑兵,有着代价高昂(意味着需要引入拥有EJB容器Container的应用服务器(J2EE Application Server)的支持)、自身限制太多(部署测试困难,复杂的类加载机制,复杂的部署描述符,过场的开发部署周期等)、发挥作用的场景有限(只有 在分布式场景中才能带来最大的益处)等缺点...

2018-10-15 16:07:10 506

原创 从零开始的毕设--JavaScript-Ajax(3)-POST

PHPJavascript并非写入文件至服务器的工具,事实上,甚至无法在服务器上运行js。因为javascript是一种客户端技术,它设计为只在浏览器上运作。PHP是一种可在服务器上执行的脚本语言。<?php$filename = "blog.xml";if (file_exists($filename)) { // Load the blog entries from th...

2018-10-07 19:04:10 370

原创 从零开始的毕设--JavaScript-Ajax(2)-GET

DOM处理XMLXML在服务器记录的内容,在用GET方法传回客户端时,DOM可以把XML当成节点树处理。我们的blog.xml文件是这样的:<?xml version="1.0" encoding="utf-8"?><blog> <title>YouCube - The Blog for Cube Puzzlers</title> &

2018-10-07 18:44:14 334

原创 从零开始的毕设--JavaScript-Ajax(1)

数据驱动(data-driven)网页Ajax让网页能动态接受网络服务器的数据。它的运行方式如下:客户端发起Ajax请求,然后等待响应。服务器收到请求,以相应的数据作为响应。收到服务器的相应后,客户端立即拿起数据并将其假如网页中,而且网页不用重新载入。(javascript作为居中的 媒介,发起请求,处理响应并且整合数据到网页中。)万用HTML:XML在HTML中的ML,指的是ma...

2018-10-07 18:05:03 358

原创 从零开始的毕设--JavaScript-prototype对象

方法过载上一节,我们在构造函数里利用this关键字创建blog对象的方法。但是根据这个创建的每个blog对象,均各有一份对象方法的副本!浪费!方法应该为各个对象所共享。共享方法多亏了每个对象有个隐藏对象prototype(它以特性的形式存在),JavaScript的类才能成真。prototype对象用于设定隶属于类层的特性与方法,而非属于实例的!所以,使用prototype对象,即可创...

2018-10-06 17:23:44 358

原创 从零开始的毕设--JavaScript-认识对象

数据+行为=对象对象在一个存储容器内链接变量与函数。对象需要构造函数,并且用关键字new创建对象:function Blog(body, date) { // Assign the properties this.body = body; this.date = date; } var blog = [ new Blog("Go...

2018-10-06 11:48:47 341

原创 从零开始的毕设--JavaScript-DOM

访问HTML元素我们已经很熟悉标准document对象的getElementById()方法,只需要元素具有独一无二的id。但有件事需要我们研究一番:getElementByTagName()这个方法能够抓出网页上所有特定类型的元素,例如div或者Img。这个方法返回的结果数组里,包含出现在网页上的每一个指定元素,并按照出现在HTML的顺序排列。与内在的HTML建立接触innerHTM...

2018-10-05 13:49:06 434

原创 从零开始的毕设--JavaScript-表单与验证

访问表单数据

2018-10-05 11:58:53 450

原创 从零开始的毕设--JavaScript-函数字面量

函数只是数据函数只不过是变量!其中关键在于,把函数主体看成值,函数名则为变量名称,我们来看看一种创建函数的方法:var showSeatStatus=function(seatNum){ alert("this seat is"+ getSeatStatus(seatNum)+"。");var myShowSeatStatus=showSeatStatus;}这种表达方式叫做,函数字...

2018-10-04 19:50:21 357

原创 从零开始的毕设--JavaScript-浏览器探索

浏览器能做什么浏览器负责执行javascript代码,脚本因此得以访问客户端环境。比如:取得浏览器宽度和高度,类似闹钟的计时机制,对cookie的访问…定时器在特定时间过去后,触发一段javascript代码Cookie...

2018-10-04 19:16:47 423

软件工程需求分析作业模版.doc

软件工程需求分析作业模版,北邮大作业。

2020-06-24

滑动窗口协议--SDL最终版

北邮滑动窗口协议实验设计。滑动窗口协议--SDL设计;北邮滑动窗口协议实验设计。

2018-06-03

北邮韩万江老师SPM课的pdf

spm,软件过程改进,韩万江

2018-05-17

北邮:编译原理实验1

北邮;编译原理第一次实验;lex.yy 生成代码 北邮;编译原理第一次实验;lex.yy 生成代码

2018-05-14

北邮:分布式实验一

北邮:分布式实验一 北邮;分布式; 北邮;分布式; 北邮;分布式;

2018-05-14

北邮:软件工程作业——体系结构设计文档

体系结构设计文档;北邮:软件工程作业——体系结构设计文档

2018-05-14

北邮作业——软件工程:需求文档

北京邮电大学,软院大二作业;北京邮电大学,软院大二作业

2018-05-14

滑动窗口协议--SDL设计

滑动窗口协议--SDL设计;北邮滑动窗口协议实验设计。滑动窗口协议--SDL设计;北邮滑动窗口协议实验设计。

2017-11-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除