spring学习之路
默默努力的程序员
少而好学,如日出之阳;壮而好学,如日中之光;志而好学,如炳烛之光。
展开
-
SpringMVC中下载与上传
在SpringMVC中,想要实现上传和下载比较简单上传上传下载第一步,前加入jar包commons-fileupload-1.2.1.jarcommons-io-2.0.jar加入jar包之后,可以在Spring的配置文件中配置上传文件的一些限制<bean id="multipartResolver" class="org.springframework.we...原创 2019-12-10 19:39:07 · 101 阅读 · 0 评论 -
SpringMVC中使用ajax
在SpringMVC处理JSON数据中介绍了SpringMVC如何返回一个json对应的对象或者数组。这篇将介绍一下,SpringMVC在使用ajax时的几种情况。测试一:发送get请求,不带参数实验代码:实体类:Employpublic class Employ { private String userName; private int age; @Lengt...原创 2019-12-09 11:24:50 · 1334 阅读 · 0 评论 -
SpringMVC处理JSON数据
首先,需要加入jar包jackson-annotations-2.1.5.jarjackson-core-2.1.5.jarjackson-databind-2.1.5.jarjar包下载地址然后,这个时候就可以在controller层编写方法,返回json对应的对象或者数组。实验代码: @ResponseBody @RequestMapping("/testJson") ...原创 2019-12-09 10:30:48 · 153 阅读 · 0 评论 -
Neither BindingResult nor plain target object for bean name 'xxx' available as request attribut
在SpringMVC中测试表单标签时可能会出现这个错误,Neither BindingResult nor plain target object for bean name ‘xxx’ available as request attribute出错的原因,第一个可能是在 <form:form modelAttribute=“xxx” method=“post” action="/xxx...原创 2019-12-07 08:26:31 · 7179 阅读 · 0 评论 -
SpringMVC中的数据格式化以及数据校验
数据格式化概述对属性对象输入输出的数据进行格式化,本质上还是属于数据类型的转换。Spring 在格式化模块中定义了一个实现 ConversionService 接口的 FormattingConversionService 实现类,该实现类扩展了 GenericConversionService,因此它既具有类型转换的功能,又具有格式化的功能。支持对数值类型的属性使用 @NumberFor...原创 2019-12-07 08:13:25 · 373 阅读 · 0 评论 -
SpringMVC中数据绑定及自定义类型转换器
这篇博客记录一下SpringMVC中的数据绑定,以及如何自定义类型转换器数据绑定Spring MVC 主框架将 ServletRequest 对象及目标方法的入参实例传递给 WebDataBinderFactory 实例,以创建 DataBinder 实例对象.DataBinder 调用装配在 Spring MVC 上下文中的 ConversionService 组件进行数据类型转换、数...原创 2019-12-04 19:05:30 · 234 阅读 · 1 评论 -
SpringMVC视图解析
概述不论控制器返回的是String、ModelAndView、VIew,SpringMVC都会解析成ModelAndView对象,由视图解析器解析视图,然后跳转页面。视图解析有两个重要的接口,View、ViewResolver视图和视图解析器请求处理方法执行完成后,最终返回一个ModelAndView对象。对于那些返回String、View或ModeMap等类型的处理方法,Spri...原创 2019-12-03 19:46:29 · 110 阅读 · 0 评论 -
mvc:view-controller标签
若希望直接响应通过 SpringMVC 渲染的页面,可以使用 mvc:view-controller 标签实现<!-- 试图解析器 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" ...原创 2019-12-03 18:57:40 · 494 阅读 · 0 评论 -
SpringMVC使用@ResponseBody,方法直接返回字符串出现乱码解决方案
当我们使用@ResponseBody注解,让方法直接返回字符串时,这个时候在浏览器上直接访问会发现出现乱码,比如下边的例子。 @ResponseBody @RequestMapping(value = "/C") public String C() throws IOException { return "哈哈哈"; }浏览器访问解决方案在@Req...原创 2019-11-30 14:24:57 · 353 阅读 · 0 评论 -
Spring MVC整合hibernate-validator出现Could not initialize class org.hibernate.validator.internal.engine.
Spring MVC整合hibernate-validator出现Could not initialize class org.hibernate.validator.internal.engine.ConfigurationImpl我用的是jdk11,tomcat8.5,出现这个问题是因为当前环境不支持hibernate-validator,下载最新版本的hibernate-validator...原创 2019-11-25 11:45:02 · 2149 阅读 · 0 评论 -
SpringMVC中将数据输出到页面的几种常用方式
想要将数据拿到页面给展现出来,最容易想到的是放到WEB域中,然后再取出,这篇文章记录一下不同于传统的WEB域数据输出的几种方式使用 Map、Model、ModelMap进行传值Spring MVC 在内部使用了一个org.springframework.ui.Model接口存储模型数据具体步骤:1、Spring MVC 在调用方法前会创建一个隐含的模型对象作为模型数据的存储容器。2、如...原创 2019-11-24 14:48:25 · 2082 阅读 · 0 评论 -
SpringMVC中解决乱码问题
乱码分为请求乱码和响应乱码。请求乱码:-get请求:在tomcat的server.xml中的 8080端口的地方,添加URIEncoding=utf-8-post请求:request.setCharacterEncoding(“UTF-8”)响应乱码:response.setContextType(“text/html;charset=utf-8”)在SpringMVC中,我们不需要自己...原创 2019-11-24 12:22:21 · 199 阅读 · 0 评论 -
SpringMVC中映射请求参数,即@RequestParam、@RequestHeader、@CookieValue注解
默认情况下请求中的参数会与方法参数名字一样的形参自动装配,但是如果名字不一致,就不行了,这时就需要注解了。可以对方法及方法入参标注相应的注解( @PathVariable 、@RequestParam、@RequestHeader 等)、Spring MVC 框架会将 HTTP 请求的信息绑定到相应的方法入参中,并根据方法的返回值类型做出相应的后续处理。@RequestParam注解在处...原创 2019-11-24 09:32:38 · 1159 阅读 · 0 评论 -
@PathVariable和REST模式架构
这篇文章用来记录@PathVariable注解的法,以及如何在SpringMVC中使用REST模式@PathVariable注解带占位符的 URL 是 Spring3.0 新增的功能,该功能在 SpringMVC 向 REST 目标挺进发展过程中具有里程碑的意义通过 @PathVariable 可以将 URL 中占位符参数绑定到控制器处理方法的入参中:URL 中的 {xxx} 占位符可以通...原创 2019-11-24 08:10:41 · 242 阅读 · 0 评论 -
@RequestMapping注解详解
Spring MVC 使用 @RequestMapping 注解为控制器指定可以处理哪些URL请求。在控制器的类定义及方法定义出都可以标注@RequestMapping- 类定义处:提供初步的请求映射信息。相当于 WEB的根目录。例如 :@RequestMapping("/rest")public class RestController {}为这个 RestController 控...原创 2019-11-16 15:11:24 · 2740 阅读 · 0 评论 -
Spring MVC的hello word细节详解
上篇博客,写了个Spring MVC的入门级的hello word练习,这里对里边的细节进行一些介绍一、Spring MVC的运行流程1、客户端点击链接会发送 http://localhost:8080/hello 请求2、请求来到 tomcat服务器3、SpringMVC的前端控制器收到所有的请求4、tomcat看请求地址和@RequestMapping标注的哪个地址匹配,来找到到底...原创 2019-11-16 13:00:45 · 140 阅读 · 0 评论 -
Spring MVC之入门级hello word
SpringMVC 概述:Spring 为展现层提供的基于 MVC 设计理念的优秀的 Web 框架,是目前最主流的 MVC 框架之一。Spring3.0 后全面超越 Struts2,成为最优秀的 MVC 框架。Spring MVC 通过一套 MVC 注解,让 POJO 成为处理请求的控制器,而无须实现任何接口。支持 REST 风格的 URL 请求。采用了松散耦合可插拔组件结构,比其他 M...原创 2019-11-16 11:09:02 · 193 阅读 · 0 评论 -
Spring加载properties文件的两种方式
Spring加载properties文件有两种方式,一种是通过xml的方式,另外一种是通过注解直接注入的方式。方式一:通过xml配置的方式首先,创建一个 jdbc.properties 文件,内容如下:user=rootpassword=123456url=jdbc:mysql://localhost:3306/testdriverClass=com.mysql.jdbc.Driver...原创 2019-11-16 10:43:08 · 604 阅读 · 0 评论 -
IDEA中Spring在WEB项目中加载时出现:Error during artifact deployment
今天,启动WEB项目时方向报 Error during artifact deployment,经过查询发现是idea在打包部署是出现了问题1、将spring相关jar包加入到web项目中2、找到Artifacts,将右边的默认的WebDemo:war exploded去掉,然后点击加号选择From Models,然后选择自己的项目,应用并保存3、配置Tomcat,如果2处默认没有的话,...原创 2019-10-18 08:40:57 · 1871 阅读 · 0 评论 -
spring使用JdbcTemplate操作数据库
在 spring 中可以使用 JdbcTemplate 对数据库进行操作,这比原始的方式简单很多。这篇文章使用的是c3p0数据库连接池JdbcTemplate简介为了使 JDBC 更加易于使用, Spring 在 JDBC API 上定义了一个抽象层, 以此建立一个 JDBC 存取框架。作为 Spring JDBC 框架的核心, JDBC 模板的设计目的是为不同类型的 JDBC 操作提供模板方...原创 2019-10-14 19:20:23 · 411 阅读 · 0 评论 -
Spring的@Autowired注解
@Autowired 注释,它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。 通过 @Autowired的使用来消除 set ,get方法。有 Person 类有个 Car 类型的属性Car类public class Car { private String name; public String getName() { return na...原创 2019-10-13 15:09:06 · 282 阅读 · 0 评论 -
Spring通过组件扫描的方式注入Bean
组件扫描(component scanning): Spring 能够从 classpath 下自动扫描, 侦测和实例化具有特定注解的组件.特定组件包括:@Component: 基本注解, 标识了一个受 Spring 管理的组件@Respository: 标识持久层组件@Service: 标识服务层(业务层)组件@Controller: 标识表现层组件对于扫描到的组件, Spring...原创 2019-10-12 15:14:12 · 737 阅读 · 0 评论 -
spring中使用xml配置AOP
spring中实现AOP可以通过注解的方式,也可以使用xml配置的方式配置,上篇博客已经写过了使用注解的方式配置AOP,这篇博客使用xml的方式1、创建接口 Calculatorpublic interface Calculator { int add(int j, int i); int sub(int j, int i); int mul(int j, int...原创 2019-10-12 13:31:52 · 126 阅读 · 0 评论 -
Spring的表达语言SpEL和IOC容器的Bean的生命周期
这篇博客讲一下SpEL的使用和Bean的声明周期Spel的使用Spring 表达式语言(简称SpEL):是一个支持运行时查询和操作对象图的强大的表达式语言。语法类似于 EL:SpEL 使用 #{…} 作为定界符,所有在大框号中的字符都将被认为是 SpELSpEL 为 bean 的属性进行动态赋值提供了便利通过 SpEL 可以实现:通过 bean 的 id 对 bean 进行引用调用方...原创 2019-10-09 21:03:49 · 142 阅读 · 0 评论 -
spring中的bean的xml配置
spring支持3中依赖注入方式:属性注入构造器注入工厂方法注入(很少使用,不推荐使用,这里我就不再写了)1、属性注入属性注入即通过 setter 方法注入 Bean 的属性值或以来的对象。属性注入使用 <property> 元素,使用 name 属性指定Bean的属性名称,value属性或者 <value> 子节点指定属性的值。创建一个HelloWord...原创 2019-09-30 19:15:10 · 595 阅读 · 0 评论 -
Spring中使用AspectJ 注解的AOP
在Spring 2.0之后,可以使用基于AspectJ 注解 或XMl 配置的AOP,这篇文章主要记录一下AspectJ 注解的AOP的实现1、前提使用 AspectJ 注解 需要在Spring项目中添加 aopalliance.jar、aspectj.weaver.jar 和 spring-aspects.jar 三个jar包。要在 Spring IOC 容器中启用 AspectJ 注解...原创 2019-10-11 16:21:39 · 640 阅读 · 0 评论 -
Spring中Bean的配置方式
上篇文章写了一些Spring中Bean的配置方式,这篇是对上篇的补充,主要讲通过外部属性文件配置bean,使用工厂配置bean使用外部属性文件配置 beanSpring 提供了一个 PropertyPlaceholderConfigurer 的 BeanFactory 后置处理器, 这个处理器允许用户将 Bean 配置的部分内容外移到属性文件中. 可以在 Bean 配置文件里使用形式为 ${v...原创 2019-10-07 21:08:41 · 350 阅读 · 0 评论 -
Spring创建和入门小程序Hello Word
刚刚开始学习Spring,记录一下Spring项目的创建,我使用的是IDEA1、创建一个项目,加入Spring常用的jar包2、创建spring的xml配置文件3、hello小程序1、创建一个HelloWork.java文件public class HelloWord { private String name; public void setName(String ...原创 2019-09-28 18:06:50 · 136 阅读 · 0 评论