开发框架
文章平均质量分 73
青岛欢迎您
每天进步一点点
展开
-
SpringMVC-概述及HelloWorld实现
一、SpringMVC概述Spring 为展现层提供的基于 MVC 设计理念的优秀的Web 框架,是目前最主流的 MVC 框架之一 Spring3.0 后全面超越 Struts2,成为最优秀的 MVC 框架 Spring MVC 通过一套 MVC 注解,让 POJO 成为处理请求的控制器,而无须实现任何接口 支持 REST 风格的 URL 请求 采用了松散耦合可插拔组件结构,比其他 M...原创 2018-09-01 06:32:46 · 174 阅读 · 0 评论 -
Spring-实现AOP
AOP中的概念:Aspect(切面):指横切性关注点的抽象即为切面,它与类相似,只是两者的关注点不一样,类是对物体特征的抽象,而切面横切性关注点的抽象.joinpoint(连接点):所谓连接点是指那些被拦截到的点。在spring中,这些点指的是方法,因为spring只支持方法类型的连接点,实际上joinpoint还可以是field或类构造器)Pointcut(切入点):所谓切入点是指我们要...原创 2018-08-31 08:30:18 · 103 阅读 · 0 评论 -
Spring-自动扫描和管理bean
前面的例子我们都是使用XML的bean定义来配置组件。在一个稍大的项目中,通常会有上百个组件,如果这些这组件采用xml的bean定义来配置,显然会增加配置文件的体积,查找及维护起来也不太方便。spring2.5为我们引入了组件自动扫描机制,他可以在类路径底下寻找标注了@Component、@Service、@Controller、@Repository注解的类,并把这些类纳入进spring容器中管...原创 2018-08-31 08:30:25 · 247 阅读 · 0 评论 -
Spring-@Resource注解及装配
在java代码中使用@Autowired或@Resource注解方式进行装配。但我们需要在xml配置文件中配置以下信息:<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:cont...原创 2018-08-31 08:30:33 · 168 阅读 · 1 评论 -
Spring-装配基本属性和集合类型
集合类型的装配 前面学习的是如何注入依赖对象,还有基本类型,那么有些情况下呢我们还有可能要注入集合类型的对象,那么对于集合类型的这些对象我们该如何注入进去呢?好比我们要注入Set的集合,List的集合,或者Properties集合,或者Map集合,那么像这些集合我们该如何注入进去呢?PersonService.java Java代码 package cn.itcast.service;...原创 2018-08-31 08:30:40 · 408 阅读 · 0 评论 -
Spring-实例化bean
在spring中有三中实例化bean的方式:一、使用构造器实例化;二、使用静态工厂方法实例化;三、使用实例化工厂方法实例化。 每种实例化所采用的配置是不一样的:一、使用构造器实例化;这种实例化的方式可能在我们平时的开发中用到的是最多的,因为在xml文件中配置简单并且也不需要额外的工厂类来实现。 Xml代码 <!--applicationContext...原创 2018-08-31 08:30:47 · 99 阅读 · 0 评论 -
Spring-依赖注入原理
使用构造器注入使用属性setter方法注入使用Field注入(用于注解方式)注入依赖对象可以采用手工装配或自动装配,在实际应用中建议使用手工装配,因为自动装配会产生未知情况,开发人员无法预见最终的装配结果。1.手工装配依赖对象2.自动装配依赖对象在Spring学习笔记(3)中剖析了Spring管理Bean的原理,下面解释下Spring依赖注入的原理在进行依赖注入时,我们的配置文件如...原创 2018-08-31 08:31:10 · 3818 阅读 · 0 评论 -
Spring-管理bean作用域、生命周期
一、管理bean作用域在前面,将bean交给了Spring容器管理,在客户端只要调用getBean方法就可以从容器里获取bean实例,大家想想,每调用getBean方法,那么它从容器里获取的bean到底是同一个呢?还是不同? 怎么判断是否是同一个对象呢?可以这样做,代码如下: SpringTest.java Java代码 package junit.test; import...原创 2018-08-31 08:31:15 · 105 阅读 · 0 评论 -
Spring-管理bean原理
一、为什么使用spring在项目中引入spring立即可以带来下面的好处:1、降低组件之间的偶合度,实现软件各层之间的解偶。2、可以使用容器提供众多的服务,如:事务管理服务、消息服务等。3、容器提供单例模式支持,开发人员不需要自己编写实现代码。4、容器提供了AOP技术,利用它很容易实现如权限拦截、运行期监控等功能。5、容器提供了众多辅助类,使用这些类能够加快应用的开发,如:JdbcTempla...原创 2018-08-31 08:31:21 · 479 阅读 · 0 评论 -
Struts2-介绍及开发环境搭建
一、struts2的优点1、在软件设计上Struts2没有像Struts1那样跟ServletAPI和StrutsAPI有着紧密的偶合,Struts2的应用可以不依赖于ServletAPI 和strutsAPI。Struts2的这种设计属于无侵入式设计,而Struts1却属于侵入式设计。 public class OrderListAction extends Action{ public...原创 2018-08-30 16:18:58 · 129 阅读 · 0 评论 -
Struts2-Struts.xml文件介绍
一、Action搜索顺序Action的搜索顺序:1、例如url是:http://server/struts2/path1/path2/path3/test.action2、首先找命名空间为/path1/path2/path3的package,存在的话找包中名字为test的action3、找命名空间为/path1/path2的package,存在的话找包中名字为test的action4、找命名空...原创 2018-08-30 16:20:12 · 130 阅读 · 0 评论 -
Struts2-处理流程、接收请求参数
一、Struts2的处理流程 用户请求-------------------------------------->StrutsPrepareAndExecuteFilter | ...原创 2018-08-30 16:22:18 · 184 阅读 · 0 评论 -
Struts2-自定义类型转换器、访问范围属性
一、Struts2自定义类型转换器自定义类型转换器分两种局部类型转换器和全局类型转换器:接收格式为yyyy-MM-dd的日期时,Struts2框架可以自动转换;当格式为yyyyMMdd时用类型转换器来处理。1、局部类型转换器public class DateTypeConverter extends DefaultTypeConverter { @Override public Objec...原创 2018-08-30 16:25:02 · 117 阅读 · 0 评论 -
Struts2-上传文件、自定义拦截器
一、Struts2上传文件一、单个文件上传:1、加入jar包commons-fileupload-1.2.1.jar、commons-io-1.3.2.jar2、设置form表单如下:<form enctype="multipart/form-data" action="${pageContext.request.contextPath}/***.action" method="pos...原创 2018-08-30 16:26:58 · 260 阅读 · 0 评论 -
Struts2-校验方法、国际化
一、Struts2校验方法对输入校验struts2提供了两种方法:1、手工 编写代码实现2、基于XML配置方法实现1.1、手工编写对action中所有方法进行校验:通过重写validate()方法实现,action继承ActionSupport,如果系统的fieldErrors包含失败信息,struts2会将请求转发到名为 input的result。在input视图中可以通过<s:f...原创 2018-08-30 16:28:41 · 268 阅读 · 0 评论 -
Struts2-常用标签
Struts2标签使用 1、<s:textfield> ---- 文本输入框 使用:<s:textfield name=”实体Bean。属性”></s:textfield> 2、<s:textarea> ----- 文本域输入框 使用:<s:textarea name=”实体Bean。属性”></s:texta...原创 2018-08-30 16:29:32 · 186 阅读 · 0 评论 -
Struts2-弹出窗口Session丢失、防止表单重复提交问题
一、弹出窗口Session丢失问题弹出窗口Session丢失使用window.showModalDialog进行信息的提示,相当方便,也容易控制外观和布局。但是存在一个严重的问题,就是Session丢失。当在A页面进行showModalDialog时,弹出的模态窗口open新页面或new dialog()时,会得不到A页面中的Session,这样就严重地限制了他的使用范围。进一步的使用模式窗口...原创 2018-08-31 08:30:54 · 265 阅读 · 0 评论 -
Spring-基于注解的Controller控制器
Spring 2.5发行版本中,开始相对比较全面的支持注解,通过注解可以大大简化Java EE应用开发的配置、精简开发人员的工作量从而提高开发效率。对于Spring MVC而言,我认为注解带来的好处更多:1. 开发人员对Controller的代码实现变得更加灵活,不需要继承任何AbstractController等Controller。 2. 可以通过@Controller注解声明将该类的实例...原创 2018-08-31 08:30:06 · 491 阅读 · 0 评论 -
MyBatis-PageHelpler分页-批量处理-调用存储过程
一、PageHelpler分页插件使用步骤:• 1、导入相关包pagehelper-x.x.x.jar 和 jsqlparser-0.9.5.jar。• 2、在MyBatis全局配置文件中配置分页插件。• 3、使用PageHelper提供的方法进行分页• 4、可以使用更强大的PageInfo封装返回结果 二、批量_BatchExecutor & Spri...原创 2018-08-25 14:17:42 · 2112 阅读 · 1 评论 -
MyBaits-一级缓存和二级缓存
• MyBatis 包含一个非常强大的查询缓存特性,它可以非常方便地配置和定制。缓存可以极大的提升查询效率。• MyBatis系统中默认定义了两级缓存。• 一级 缓存和 二级缓存。– 1、默认情况下,只有一级缓存(SqlSession级别的缓存,也称为本地缓存)开启。– 2、二级缓存需要手动开启和配置,他是基于namespace级别的缓存。– 3、为了提高扩展性。MyBati...原创 2018-08-25 10:29:16 · 829 阅读 · 0 评论 -
SpringMVC-@Controller和@RequestMapping用法和其他常用注解
一、简介 在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层处理之后封装成一个Model ,然后再把该Model 返回给对应的View 进行展示。在SpringMVC 中提供了一个非常简便的定义Controller 的方法,你无需继承特定的类或实现特定的接口,只需使用@Controll...转载 2018-09-01 06:31:05 · 326 阅读 · 0 评论 -
SpringMVC-视图解析器
一、SpringMVC视图解析器SpringMVC中的视图解析器的主要作用就是将逻辑视图转换成用户可以看到的物理视图。当用户对SpringMVC应用程序发起请求时,这些请求都会被SpringMVC的DispatcherServlet处理,通过处理器找到最为合适的HandlerMapping定义的请求映射中最为合适的映射,然后通过HandlerMapping找到相对应的Handler,然后再...转载 2018-09-01 06:31:13 · 192 阅读 · 0 评论 -
SpringMVC-日期转换
在做web开发的时候,页面传入的都是String类型,SpringMVC可以对一些基本的类型进行转换,但是对于日期类的转换可能就需要我们配置。1、如果查询类使我们自己写,那么在属性前面加上@DateTimeFormat(pattern = "yyyy-MM-dd") ,即可将String转换为Date类型,如下 1 2 @DateTimeFormat(...转载 2018-09-01 06:31:49 · 1953 阅读 · 0 评论 -
SpringMVC-数据类型转换、格式化、JSR303校验
1. 数据绑定流程 SpringMVC通过反射机制对目标处理方法进行解析,将请求消息绑定到处理方法的入参中。其中,数据绑定的核心部件是DataBinder,运行机制如下: 数据绑定的具体流程说明如下:SpringMVC主框架将ServletRequest对象和目标方法的入参实例传递给WebDataBinderFactory实例,以创建DataBinder实例对象; Data...原创 2018-09-01 06:31:58 · 516 阅读 · 0 评论 -
SpringMVC-国际化
1. 基本实现 目标1:在页面上能够根据浏览器的语言设置对文本(不是内容)、时间和数值进行本地化操作。 ①. 在src目录下创建国际化资源文件,并添加需要国际化的键值对信息## i18n_zh_CN.properties文件i18n.username=\u7528\u6237\u540Di18n.password=\u5BC6\u7801 ## i18n_en_US....原创 2018-09-01 06:32:06 · 378 阅读 · 0 评论 -
SpringMVC-上传文件
1. 文件上传概述 概述: SpringMVC为文件上传提供了直接的支持,即通过即插即用的MultipartResolver实现;Spring用Jakarta Commons FileUpload技术实现了一个MultipartResolver的实现类CommonsMultipartResovler。 配置: SpringMVC上下文中默认没有装配MultipartResovler,故在...原创 2018-09-01 06:32:14 · 145 阅读 · 0 评论 -
SpringMVC-拦截器
1. 自定义拦截器 SpringMVC也可以使用拦截器对请求进行拦截处理,用户可以自定义拦截器来实现特定的功能,自定义的拦截器必须实现HandlerInterceptor接口。 ①. 自定义拦截器类继承于HandlerInterceptor接口,并实现其中的方法package com.qiaobc.springmvc.interceptors;import javax.serv...原创 2018-09-01 06:32:20 · 119 阅读 · 0 评论 -
SpringMVC-异常处理
SpringMVC通过HandlerExceptionResolver接口来处理程序的异常,包括Handler映射、数据绑定和目标方法执行时发生的异常。1. HandlerExceptionResolver HandlerExceptionResolver的具体实现类主要有: 其中,DispatcherServlet会默认装配HandlerExceptionResolver,在...原创 2018-09-01 06:32:29 · 265 阅读 · 0 评论 -
SpringMVC-工作流程
Spring MVC工作流程图图一 图二 Spring工作流程描述 1. 用户向服务器发送请求,请求被Spring 前端控制Servelt DispatcherServlet捕获; 2. DispatcherServlet对请求URL进行解析,得到请求资源标识符(URI)。然后根据该URI,调用HandlerMapping获得该Handle...转载 2018-09-01 06:32:39 · 106 阅读 · 0 评论 -
SpringMVC-解决跨域的两种方案
1. 什么是跨域跨域,即跨站HTTP请求(Cross-site HTTP request),指发起请求的资源所在域不同于请求指向资源所在域的HTTP请求。2. 跨域的应用情景当使用前后端分离,后端主导的开发方式进行前后端协作开发时,常常有如下情景:后端开发完毕在服务器上进行部署并给前端API文档。 前端在本地进行开发并向远程服务器上部署的后端发送请求。 在这种开发过程中,如果前...转载 2018-09-02 10:08:24 · 476 阅读 · 0 评论 -
SpringMVC-实现restful
restful它的核心是将所有的 Api 都理解为一个网络资源。把api映射成资源restful它的核心是将所有的 Api 都理解为一个网络资源。把api映射成资源把api映射成资源,把api映射成资源一、简介1.浏览器支持http delete/put方法,添加HiddenHttpMethodFilter过滤器,将url转换为http delete/put方法<!-- ...转载 2018-08-30 15:50:56 · 375 阅读 · 0 评论 -
SpringMVC-如何获取登陆用户信息
说到Java web,那么在web端获取登陆用户信息几乎是所有系统都需要实现的功能,下面我们就来讲一下几种获取登陆用户信息的方法。从session中获取这是我们刚刚接触Java web时就了解的一种解决方案,配置一个登陆过滤器或者登陆拦截器,在用户登陆的时候将用户信息放到session中,然后控制层在session中取出用户信息,这是最简单也是最常见的一种解决方案。随着用户量的增大,单...转载 2018-09-28 11:04:42 · 3528 阅读 · 0 评论 -
MyBatis-简介及HelloWorld
MyBatis是支持定制化SQL、存储过程以及高级映射的优秀的半自动化持久层框架。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO映射成数据库中的记录。sql 和 java 编码分开,功能边界清晰,一个专注业务、一个专注数据。 1、创建MyBatis全局配置文件:myb...原创 2018-08-24 11:47:37 · 113 阅读 · 0 评论 -
MyBatis-全局配置文件
掌握好Mybatis框架,主要明白三个文件: Mybatis-comfig.xml文件、**Mapper.xml、定义的Mapper类一:mybatis-Config.xml配置文件的内容和配置顺序如下properties(属性) settings(全局配置参数) typeAiases(类型别名) typeHandlers(类型处理器) objectFactory(对象工厂)...转载 2018-08-24 11:49:54 · 150 阅读 · 0 评论 -
MyBatis-映射文件
MyBatis 的真正强大在于它的映射语句,也是它的魔力所在。由于它的异常强大,映射器的 XML 文件就显得相对简单。如果拿它跟具有相同功能的 JDBC 代码进行对比,你会立即发现省掉了将近 95% 的代码。MyBatis 就是针对 SQL 构建的,并且比普通的方法做的更好。SQL 映射文件有很少的几个顶级元素(按照它们应该被定义的顺序):cache – 给定命名空间的缓存配置。 cac...原创 2018-08-24 16:59:12 · 141 阅读 · 0 评论 -
MyBatis-动态SQL
• 动态 SQL是MyBatis强大特性之一。极大的简化我们拼装SQL的操作。• 动态 SQL 元素和使用 JSTL 或其他类似基于 XML 的文本处理器相似。• MyBatis 采用功能强大的基于 OGNL 的表达式来简化操作。– if– choose (when, otherwise)– trim (where, set)– foreach if c...原创 2018-08-24 18:10:58 · 112 阅读 · 0 评论 -
SSM-框架整合
先附一张ssm总体框架图: 1、基本概念1.1、SpringSpring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的Jav...转载 2018-09-02 10:27:18 · 219 阅读 · 0 评论