![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spring基础
荒--
这个作者很懒,什么都没留下…
展开
-
Spring注解 @NotBlank,@NotNull,@NotEmpty三者之间的区别
简述三者区别@NotNull://CharSequence, Collection, Map 和 Array 对象不能是 null, 但可以是空集(size = 0)。@NotEmpty://CharSequence, Collection, Map 和 Array 对象不能是 null 并且相关对象的 size 大于 0。@NotBlank://String 不能是 null 且去除两端空白字符后的长度(trimmed length)大于 0。实例String name = null;@原创 2021-03-09 21:04:53 · 212 阅读 · 0 评论 -
EL表达式的特殊使用情况
一、在超链接中写入EL表达式:<img alt="用户头像" src="getImage.do?fileUrl=${fileUrl }" />建议fileUrl先编码,再使用EL表达式二、onclick()函数中参数是EL表达式时,要把EL表达式用单引号‘’引起来:<button onclick="downImage('${fileUrl }')">下载图片...原创 2019-01-07 16:25:55 · 296 阅读 · 0 评论 -
springMVC上传功能详解(二)
该文档针对于springMVC上传功能详解(一)的总结1.在上一篇文章中,主要介绍了Spirng MVC环境下的上传功能实现(已经经过完善的版本)。在实际开发的时候,还会涉及到上传文件大小和类型的限制,接下来就会对Spirng MVC环境下文件上传大小和类型的限制进行介绍,还会讲解到文件上传大小tomcat服务器bug问题及解决方案。一、文件上传大小限制 这里还是接着上篇文章先介绍S...原创 2019-01-06 19:14:07 · 240 阅读 · 1 评论 -
springMVC上传功能详解(一)
测试项目结构如下:controller处理器:package controller;import java.io.File;import java.io.IOException;import java.util.ArrayList;import java.util.List;import javax.servlet.http.HttpServletRequest;imp...原创 2019-01-06 19:07:06 · 1468 阅读 · 1 评论 -
tomcat官方下载(历史版本,旧版本)
1.首先进入tomcat官方网址:http://tomcat.apache.org 这里有7、8、9版本下载,我们选择Download下边最后一个选项 Archives点击进入2.我们可以看到这里有好几个版本,你想要的版本都在这里,比如我们要选 tomcat-7版本,点击进入, http://archive.apache.org/dist/tomcat/3.我们可以看到从Tomca...原创 2019-01-05 21:22:59 · 11497 阅读 · 1 评论 -
解决tomcat文件上传的文件大小限制(一)
当服务器是Tomcat时,通过POST上传的文件大小的最大值为2M(2097152)。如果想修改该限制,修改方法如下tomcat目录下的conf文件夹下,server.xml 文件中以下的位置中添加maxPostSize参数:<Connector URIEncoding="utf-8" connectionTimeout="20000" port="8000" protocol=...原创 2019-01-05 19:20:33 · 16132 阅读 · 4 评论 -
登陆中的异常处理(对比之前处理方式)
利用spring框架提供的处理方式来处理异常(使用@ExceptionHandler注解)登录controller处理器:package com.tarena.netctoss.controller;import javax.annotation.Resource;import javax.servlet.http.HttpServletRequest;import javax....原创 2019-01-01 11:45:39 · 556 阅读 · 0 评论 -
Spring MVC上传文件原理和resolveLazily说明
问题:使用Spring MVC上传大文件,发现从页面提交,到进入后台controller,时间很长。怀疑是文件上传完成后,才进入。由于在HTTP首部自定义了“Token”字段用于权限校验,Token的有效时间很短,因此上传大文件时,就会验证Token失败。示例代码:前端:<form action="upload" enctype="multipart/form-data" me...转载 2019-01-05 17:26:50 · 951 阅读 · 1 评论 -
SpringMVC工作原理之四:MultipartResolver
MultipartResolver 用于处理文件上传,当收到请求时 DispatcherServlet 的 checkMultipart() 方法会调用 MultipartResolver 的 isMultipart() 方法判断请求中是否包含文件。如果请求数据中包含文件,则调用 MultipartResolver 的 resolveMultipart() 方法对请求的数据进行解析,然后将文件数据...转载 2019-01-05 17:23:45 · 293 阅读 · 0 评论 -
自定义注解
之前在开发中,就总纳闷,为什么继承接口时,会出现@Override注解,有时候还会提示写注解@SuppressWarnings?原来这是java特有的特性,注解! 那么什么是注解呢? 注解就是某种注解类型的一个实例,我们可以用它在某个类上进行标注,这样编译器在编译我们的文件时,会根据我们自己设定的方法来编译类。注解都是什么呢?看下面这张图就明白了!上面的图可以看出,注解...原创 2019-01-12 18:28:29 · 167 阅读 · 0 评论 -
springMVC上传头像且下载
在之前springMVC上传功能详解(一)中新增加controller进行处理,配置文件照旧项目架构如下:controller处理器:package controller;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java....原创 2019-01-08 14:03:39 · 581 阅读 · 0 评论 -
关于${pageContext.request.contextPath}的理解
${pageContext.request.contextPath}是JSP取得绝对路径的方法,等价于<%=request.getContextPath()%>也就是取出部署的应用程序名或者是当前的项目名称比如我的项目名称是demo1在浏览器中输入为http://localhost:8080/demo1/a.jsp 那么${pageContext.request.cont...原创 2019-09-30 11:42:15 · 497 阅读 · 0 评论 -
SpringMVC框架返回JSON格式的时候出现下载问题的解决
将SpringMVC的配置文件修改:原来为:<mvc:annotation-driven/>修改为:<mvc:annotation-driven> <mvc:message-converters> <bean id="mappingJacksonHttpMessageConverter" class="org.springfram...原创 2019-09-23 17:09:14 · 444 阅读 · 0 评论 -
SpringMVC中 mvc:default-servlet-handler 的作用
该注解在SpringMVC中的配置是为了不让静态资源被SpringMVC框架进行拦截前端控制器配置如下:<servlet> <servlet-name>springMVC</servlet-name> <servlet-class>org.springframework.web.servlet.Dispatc...原创 2019-09-22 16:09:55 · 1549 阅读 · 0 评论 -
关于 use-default-filters 属性的说明
前言:昨天在做一个小项目时先对 SSM 进行整合,一通配置之后进行测试,发现启动 Tomcat 就出错了,错误信息如下:org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'employeeController': Injection of autowired dep...原创 2019-09-22 15:39:25 · 211 阅读 · 0 评论 -
Spring MVC的困惑url-pattern /和/*的区别
今天在写项目时发现一个spring 总是报org.springframework.web.servlet.DispatcherServlet noHandlerFound警告:No mapping found for HTTP request with URI[/myspring/WEB-INF/jsp/index.jsp] in DispatcherServlet with name ‘sp...原创 2019-09-22 12:20:25 · 82 阅读 · 0 评论 -
Spring配置中的"classpath:"与"classpath*:"的区别
概念解释及使用场景:classpath是指WEB-INF文件夹下的classes目录。通常我们一般使用这种写法实在web.xml中,比如spring加载bean的上下文时,如下:<!--系统自动加载文件--><!--这里使用的是classpath*:的形式--><context-param> <param-name>cont...原创 2019-09-22 11:49:55 · 172 阅读 · 0 评论 -
spring中在Java任何位置获取request对象
看RequestContextListener和RequestContextHolder源代码不难看出,是用过ThreadLocal实现的。ThreadLocal是什么呢?看词义,它并非是一个线程,它不是一个Thread,而是一个线程局部变量,其实功能非常简单,就是为每一个使用该变量的线程都提供一个变量值的副本,是每一个线程都可以独立地改变自己的副本,而不会和其它线程的副本冲突。从线程的角度看...原创 2019-06-11 10:19:08 · 808 阅读 · 0 评论 -
上传下载中的一些其他问题
在Lifferay中上传下载的一些注意事项(采用自定义的上传下载开发模块)1.上传表单页面如下:<!-- 上传表单 --><div class="file-box"> <form id="f1" enctype="multipart/form-data" method="post"> <input type='te原创 2019-01-08 15:14:57 · 131 阅读 · 0 评论 -
JSTL错误排除:According to TLD or attribute directive in tag file, attribute value does not accept any ex
问题描述:在 JSP 页面中使用 JSTL 标签库,访问 JSP 页面时抛出了如下异常信息:问题原因:因为使用了 JSP 2.0, 但又没有使用 JSTL 标签库的备用版本(RT库)解决方案:方案1. 修改web.xml将 web.xml 中的 声明由 2.4 或 2.5 版本的修改为 2.3 版本,如:<web-app xmlns="http://java...原创 2019-01-05 17:08:09 · 285 阅读 · 0 评论 -
在servlet 中使用 request.getSession().getServletContext().getRealPath("upload/" ); 获取不到 tomcat 服务器目录
今天恰好有个上传文件的练习需要使用 request.getSession().getServletContext().getRealPath("upload/" ); 获取上传到服务器上的文件路径 C:\\apache-tomcat-7.0.47\\webapps\\CommonhelloWorldServlet \\upload 的目录,结果获取到的是 D:\eclipseWorkSpace\....转载 2019-01-05 16:31:04 · 609 阅读 · 0 评论 -
springmvc传参方式解析
这个是最原始的方式 使用注解后,后台这样写形参,前台传的参数,会自动封装到形参里面,但这个是基于同名配置的规则,前台参数的名称, 要和后台形参名一致 如果前台名称不一致,则注解不进去@RequestParam(value="name"String username):表明前台的传的参数名称叫name,要往username里面注入当前台名字和形参不...转载 2019-01-05 16:00:16 · 585 阅读 · 0 评论 -
Springmvc中@RequestParam传值中文乱码解决方案
首先jsp表单里面有一些参数要传到controller中,通过以下方法接收: Java代码 @RequestMapping(value="/orderPaper") public ModelAndView orderPaper( @RequestParam("paperName")String paperName, @Req...原创 2017-05-30 23:28:03 · 8575 阅读 · 3 评论 -
springMVC五大组件案例--生成系统时间
web.xml文件 date org.springframework.web.servlet.DispatcherServlet contextConfigLocation classpath:applicationContext.xml 1 date *.do 前端控制器在初始化方原创 2017-05-30 10:47:25 · 5190 阅读 · 0 评论 -
利用注解来生成HELLO WORLD
web.xml文件 <!-- 配置前端控制器 --> <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-cl...原创 2017-05-30 12:07:16 · 339 阅读 · 0 评论 -
@注解
1. 使用注解简化配置(1)什么是组件扫描?Spring容器会扫描base-package指定的包及其子包下面的所有的类, 如果这些类前面有一些特殊的注解(比如@Component),则Spring 容器会将这些类纳入容器进行管理(相当于在配置文件当中有对应的bean)。 (2)如何进行组件扫描?step1. 在类前面添加特定的注解。比如 @Component。step2. 在配...原创 2017-05-29 13:57:33 · 318 阅读 · 0 评论 -
bean中注入其他类型
注入基本类型的值使用value属性来注入。注入集合类型的值List,Set,Map,Properties 代码如下: package value;import java.util.List;import java.util.Map;import java.util.Properties;import java.util.Set;public class Va...原创 2017-05-27 14:55:16 · 333 阅读 · 0 评论 -
IOC 和 DI 自动装配
IOC (Inversion Of Controll 控制反转)什么是IOC?对象之间的依赖关系由容器来建立。什么是DI? (Dependency Injection 依赖注入)容器通过调用set方法或者构造器来建立对象之间的依赖关系。注: IOC是目标,而DI是手段。 依赖注入的两种方式1.set注入原创 2017-05-26 16:06:31 · 469 阅读 · 1 评论 -
Bean的作用域及生命周期
Bean的作用域及生命周期一、spring Framework支持五种作用域(其中有三种只能用在基于web的Spring ApplicationContext)。 内置支持的作用域分列如下:作用域 描述singleton在每个Spring IoC容器中一个bean定义对应一个对象实例。prototype转载 2017-05-27 11:27:27 · 235 阅读 · 0 评论 -
<bean>的作用域、生命周期、延迟加载
生命周期的管理初始化方法 :(用于获取资源,只执行一次)。销毁方法: (用于释放资源,只执行一次)。 注意,销毁方法只有在作用域为singleton才起作用。 作用域默认情况下,对于一个bean元素,容器只会创建一个对应的实例。可以设置作用域为prototype(原型,多个实例)。延迟加载 (了解)默认情况下,当容器启动之后,会将所有作用原创 2017-05-26 14:08:20 · 433 阅读 · 0 评论 -
spring-上传功能
package controller;import java.io.File;import java.util.ArrayList;import java.util.List;import javax.servlet.http.HttpServletRequest;import org.springframework.stereotype.Controller;import or原创 2017-06-16 23:34:55 · 257 阅读 · 0 评论 -
读取请求参数、向页面传值、重定向
读取请求参数值方式一 通过request对象方式二 通过 @RequestParam注解 方式三 封装成javabeanstep1. 写一个java类,要求见图示:step2.在方法中,添加该javabean作为方法参数。向页面传值方式一 绑订数据到request对象(方法中传入request)方式二 返回ModelAndView对象方式...原创 2017-06-01 21:42:20 · 4099 阅读 · 0 评论 -
web.xml中load-on-startup的作用
我们在web.xml中配置servlet的时候会有个属性<load-on-startup></load-on-startup>,这里主要记一下它的作用,源码在后续记得好好看一下。The load-on-startup element indicates that this servlet should be loaded (instantiated and have i...原创 2018-10-04 15:44:16 · 122 阅读 · 0 评论 -
Spring--事务管理
事务:程序为了保证业务处理的完整性,执行的一个或多个SQL语句管理:对事务中的SQL语句进行提交或回滚,叫做事务管理什么时候使用?主要作用于Service的方法上事务回顾:--oracle:commit/rollback DML操作--JDBC:自动commit例如:转账:A账户转1000到B账户 A账户减少1000(update) B账户增加1000(up...原创 2017-09-03 23:21:02 · 270 阅读 · 0 评论 -
异常的处理方式
登录页面:主页:错误页面:步骤流程示意图:示例代码如下:在登陆中异常的处理:package com.tarena.netctoss.dao;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.S...原创 2017-06-12 21:35:59 · 2635 阅读 · 0 评论 -
拦截器
1. 使用过滤器解决表单中文参数值乱码问题注意:a. 表单提交方式必须为POST。b. 过滤器的编码应该与浏览器端设置的编码一致。2. 拦截器(1)什么是拦截器?spring框架当中的一种特殊的组件,当前端控制器(DispatcherServlet)调用处理器(Controller)之前,会先调用拦截器,然后再调用处理器。注:过滤器属于Servlet规范当中定义的组件,而拦...原创 2017-06-12 21:43:53 · 297 阅读 · 0 评论 -
通过反射动态调用类的静态方法和实例方法
package jxy.common.reflect;import java.lang.reflect.Constructor;import java.lang.reflect.Method;public class CallMethod { public static void main(String[] args) throws Exception { /转载 2017-06-04 14:53:38 · 6689 阅读 · 0 评论 -
反射
反射是 JAVA API, 是Java提供的现成的类!! 接受API提供的功能! 是Java提供的动态执行机制, 动态加载类, 动态创建对象, 动态访问属性, 动态调用方法.静态与动态静态: 事先约定的规则, 执行期间按照固定规则执行.动态: 事先没有约定, 在执行期间动态确定执行规则.JAVA 中的静态执行: 编译已经就确定执行规则(执行次序), 在运行期间按照编译结果...原创 2017-06-04 14:50:44 · 233 阅读 · 0 评论 -
SpringJdbc访问数据库
SpringJdbc(1)SpringJdbc是什么?是spring框架中的一个模块,对jdbc api做了封装,简化了 jdbc的代码(比如,不用考虑获取连接与关闭连接了)(2)编程步骤step1. 导包。step2. 添加spring配置文件。 step3. 添加JdbcTemplate配置。注:JdbcTemplate对jdbc的api做了封装原创 2017-06-18 14:30:43 · 4306 阅读 · 0 评论 -
spring基础知识
Spring(1)Spring是什么?Spring是一个开源的用来简化应用开发的框架。(2)Spring的特点?简化开发Spring对很多常用的api做了简化(比如,Spring对jdbc就做了很好的 封装,我们利用Springjdbc访问数据库,就不用考虑如何获取连接和关闭 连接)。解耦Spring帮我们管理对象之间的依赖关系,这样,便于代码的维护原创 2017-05-26 11:08:09 · 255 阅读 · 0 评论