自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 资源 (2)
  • 问答 (2)
  • 收藏
  • 关注

原创 Layui文件上传带进度条

最近项目有个需求,要求文件上传有实时进度条,前端框架使用的是layui,但是layui的文件上传(upload)和进度条并没有做结合,这里只能靠改源码的方式实现之,折腾了蛮久,最后还是在公司前端的帮助下完成了,感谢。1.修改layui文件上传ajax的代码:这里使用的是layui(2.4.3版本)的非模块化 (layui.all.js),模块化请修改modules/upload.js...

2018-08-27 19:14:34 35390 25

原创 MyBatis -- Log4j应用

一。log4j复习log4j常用的五种级别:    debug:调试级别,适用于开发阶段。    info:运行信息,适用于测试或者运行阶段    warn:警告信息    error:错误消息    fatal:系统错误消息    info以及之后的三种都适用于测试和运行阶段。    控制日志输出级别是通过log4j配置文件的log4j.rootLog

2018-01-22 10:00:23 382

原创 JQuery事件

一。绑定事件、取消事件  为元素绑定事件的方式有好几种,取消其绑定的事件的方式也有几种。        在下面这个例子中列举出来: event $(function() {

2018-01-18 09:01:12 216

原创 JQuery入门

要使用JQuery需要引入JQuery的包:    script type="text/javascript" src="../js/jquery-3.1.0.js" >script>        JQuery的入口是一个 $ ,美刀符号,下面是引入了JQuery后用alert输出美元符号的结果:可以看出美元符号实际上是个function,是个JQuery的构造器,如果用了JQuery,就不要定

2018-01-17 22:33:01 206

原创 MyBatis -- 整合Redis二级缓存

一。MyBatis一级二级缓存      一级缓存:        MyBatis一级缓存为SqlSession级别的缓存,默认开启,相同的SqlSession对象查询相同条件的结果时,如果存在一级缓存,那么只会访问数据库一次,一级缓存在sqlSession关闭后失效,调用cleanCache后会被清除,执行过增删改后缓存也会被清除。注意:一级缓存不能跨session    ...

2018-01-17 21:31:36 4635 5

原创 MyBatis -- 结果集映射

结果集映射,顾名思义跟结果集有关。无非就是把SQL的查询结果映射到JavaBean的字段上。一。字段映射比如有张数据表结构如下:在后台的JavaBean中,如果遵守规范的话,属性名和列名一致,那么我们就不需要手动做字段映射,MyBatis会自动帮我们把值填充到Bean中。但现在情况不一样,Bean的属性名和数据库列名对应不上。import java.util.ArrayList;import

2018-01-17 21:07:12 4766

原创 MyBatis -- 动态SQL

数据表:实体类:一。XML的实现方式。1.if、where标签     映射接口的方法: /** * 根据条件查询Student * @param student * @return */ public List queryStudent(Student student);现在有个多条件查询的需求,根据student中有效的参数动态组装

2018-01-17 20:36:40 162

原创 Spring MVC -- @Responsebody注解、消息转换器

众所周知SpringMVC的Controller方法一般返回的是个字符串类型的路径,或者ModelAndView对象,但如果是AJAX请求,只需要一个JSON,并不需要跳转时,一般做法可以是这样: @RequestMapping(value = "/query", method = RequestMethod.GET) public void queryFoods

2018-01-17 16:42:19 598

原创 MyBatis -- typeAliases

一。默认注册的别名MyBatis支持自定义SQL语句查询结果返回值(resultType)类型的typeAliases(别名),默认用类的全路径也没问题,比如 java.util.Map,不过想用更简洁的别名,就需要到这个功能了。MyBatis有个类已经定义了很多类型别名,在TypeAliasRegistry类中:二。自定义别名  在核心配置文件中定义,这里用一个自

2018-01-17 16:36:55 178

原创 MyBatis -- SelectKey

对于不支持自动生成类型的数据库或可能不支持自动生成主键 JDBC 驱动来说,MyBatis 有另外一种方法来生成主键。这里有一个简单(甚至很傻)的示例,它可以生成一个随机 ID(你最好不要这么做,这里只是用于展示MyBatis 处理问题的灵活性及其所关心的广度): select CAST(RANDOM()*1000000 as INTEGER) a fro

2018-01-17 16:34:07 606

原创 MBG -- MyBatisGenrator

工具:MyEclipse 10一。代码生成步骤 1:新建一个Maven项目,添加MBG插件: org.mybatis.generator mybatis-generator-maven-plugin 1.3.52:配置文件首先去官网把配置文件的DEMO拷贝下来,地址:http://www.mybatis.org/generator/config

2018-01-17 16:07:23 252

原创 JSON简介

1.简介    JSON全称 JavaScript Object Notation,JavaScript对象表示法。顾名思义,用来表示一个对象的一种方法,说白了就是一种类似于XML的数据交换格式,但优点是比XML体积更小,更快,更容易解析。2.语法格式结构跟Java的类很相似有没有?JSON最外层是一对大括号,表示一个JSON对象,大括号内就是属性和值了。JSON的数据格式一定

2018-01-17 15:39:15 187

原创 Spring MVC 数据模型

类型Spring提供了以下几种方式传递模型数据:ModelAndView:当action方法返回值类型为ModelAndView时,可以通过这个对象添加模型数据并指定视图名。Map、Model:用法基本一致,Model以及Map都可以直接在参数列表中声明,获取到request中的数据,并通过键值对形式存储或取出。@SessionAttributes: 将模型中的某个属性暂存到 Ht

2018-01-17 14:25:38 328

原创 JSR 303数据校验

简介JSR 303是Java为Bean数据合法性校验所提供的标准框架,它已经包含在Java EE 6.0中。JSR 303通过在Bean属性上标注类似于@NotNull、@Max等标准的注解指定校验规则,并通过标准的验证接口对Bean进行验证。 可以通过http://jcp.org/en/jsr/detail?id=303了解JSR 303的详细内容。Maven依赖:

2017-12-18 11:39:23 425

原创 SpringMVC 国际化

步骤1:applicationContext.xml声明: 注意:id请使用 'messageSource',Spring容器获取这个对象时默认是以这个名字去获取的,不要乱动哈。basename指的是i18n的资源文件 , value填的是路径 + 配置文件前缀:只加前缀就好了,zh_CN、en_GB是给程序自己识别的。2.在控制层中装配M

2017-12-18 10:58:04 194

原创 MyBatis -- 接口映射

MyBatis接口映射这个机制是通过面向接口编程,来代替传统的使用SqlSession调用insert、select这种方式实现CRUD,MyBatis接口映射有两种实现方式,一种基于XML,另一种是基于注解。 基于XML:优点是可维护性、可拓展性高,SQL改动不需要动源代码,改配置文件即可,缺点是编写配置文件较为繁琐,需要定义大量的节点标签。 基于注解:优点是简洁,易用,开发

2017-12-05 17:12:01 984

原创 MyBatis参数传递

向MyBatis的映射SQL语句传递参数使用的是selectList、insert等等方法中的第二个参数来完成的,可以传入Map或者对应的JavaBean,小例子:XML: select * from food where FOODID = #{foodId} XMLJav: SqlSession session = getSession(); Map m

2017-12-05 15:46:44 500

原创 MyBatis入门

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

2017-12-05 15:20:26 189

原创 SpringMVC防止重复提交

防止重复提交是基于SpringMVC的org.springframework.web.servlet.HandlerInterceptor中的preHandle方法实现的,在SpringMVC的基础上实现自己的拦截器,我们需要自己定义类实现这个接口并重写preHandle方法,在方法中定义自己的拦截与放行逻辑,这个拦截器是浏览器请求 --> action前的一道屏障。可以看

2017-12-05 11:45:11 2563 4

原创 Spring -- 事务管理

1.编程式事务 这种需要自己手动编写事务代码的控制方式已经严重过时了,因为每个执行DML语句的操作都要编写一份这样的代码,相当的麻烦,Spring提供了一个抽象层:PlantformTransactionManager,事务管理器。封装了数据库事务几个方法,commit、rollback、getTransaction。想在Spring平台使用事务,就必须提供一个Plantfor

2017-12-05 10:51:29 209

原创 Spring -- AOP

概念简介    AOP(Aspect-Oriented Programming, 面向切面编程):是一种新的方法论,是对传统 OOP(面向对象编程))的补充。其实只要理解了Java的动态代理,就基本就理解AOP了,都是用来实现同一个目标的。在知乎上有篇回答解释的很清楚:地址:https://www.zhihu.com/question/24863332

2017-12-05 10:26:36 145

原创 Spring -- JDBC

Spring连接数据库的三种方式1.通过DriverManagerDataSource获取连接对象  这个东西来历可以说一下,JDK中有个接口:看简介可以得知这是个获取专门生产Connection对象的工厂类,基本上所有框架用来创建数据库连接都会实现这个接口,Spring的jdbc包就实现了这个接口,实现类就是DriverManagerDataSource,在它之前

2017-12-05 10:10:19 815

原创 Spring之组件扫描

组件扫描(component scanning): Spring能够从指定的classpath下自动扫描,侦测和实例化具有特定注解的bean。 Spring提供了一下几个注解来标注需要被扫描到的bean: 以前实例化一个bean要在配置文件中写bean标签,like this:<bean id="a" class="lesson01.beans.A" scope="si

2017-11-13 22:19:55 5714

原创 Spring之bean作用域(JAVASE)

在 Spring 中, 可以在 元素的 scope 属性里设置 Bean 的作用域。默认情况下, Spring 只为每个在 IOC 容器里声明的 Bean 创建唯一一个实例,整个 IOC 容器范围内都能共享该实例:所有后续的 getBean() 调用和 Bean 引用都将返回这个唯一的 Bean 实例,该作用域被称为 singleton,它是所有 Bean 的默认作用域。各个作用域: XML中定

2017-11-13 21:59:32 133

原创 Spring -- 依赖注入(控制反转)

依赖注入  Spring框架的核心功能有两个:Spring容器作为超级大工厂,负责创建、管理所有的Java对象,这些Java对象被称为Bean。Spring容器管理容器中Bean之间的依赖关系,Spring使用一种被称为"依赖注入"的方式来管理Bean之间的依赖关系。使用依赖注入,不仅可以为Bean注入普通的属性值,还可以注入其他Bean的引用。依赖注入是一

2017-11-13 21:38:22 289

原创 JSTL -- 自定义标签

步骤: 在WEB-INF中新建tags目录,所有的自定义标签文件都将在此目录中创建。 比如现在实现一个支持两个数字做加法运算的自定义标签,可以在tags目录中 创建一个add.tag文件,文件内容: <%@ tag language="java" pageEncoding="UTF-8"%> <%@attribute name="p1" type="java.la

2017-11-06 11:22:38 187

原创 JSTL -- fn函数库

1.简介uri:http://java.sun.com/jsp/jstl/functions 标准前缀:fn fn标签库中定义了一系列处理字符串和集合类型的方法。这些方法并不是像以前的标签那样使用的,要和EL表达式搭配使用,like this: ${fn:contains(‘Sucker’ , ‘er’)}2.常用方法: 1.contains(string, substring) 如

2017-11-06 11:09:28 264

原创 JSTL -- core标签库

1.JSTL简介JSP标准标记库(JSP Standard Tag Library) 是一个实现Web应用程序中常用功能的定制标记库集, 功能包括输出、程序流程控制、数据格式化、XML操作以及数据库访问等。总之,它实现了适量服务器端Java应用程序 常用的基本功能。通过为典型表现层任务(如数据格式化和迭代或条件内容)提供标准实现, JSTL使得JSP开发者可以专注于特定于应用程序的开发需求,而

2017-11-06 10:06:22 369

原创 EL表达式

1.EL表达式简介 EL表达式全名Expression Language,表达式语言。它可以用来在JSP页面中创建 算术表达式,也可以用来创建逻辑表达式。2.EL表达式的基本语法: expr,其中{expr},其中为EL语法中的输出符号,expr为 EL有效表达式,它包含在一对大括号内。EL有效表达式可以包含文字、操作符、 变量(对象引用)和函数调用

2017-11-06 09:16:40 335

原创 JSP标签

1.简介: JSP标签也称之为JSP Action(JSP动作)元素,它用于在JSP页面中提供业务逻辑功能,避免在JSP页面中直接编写Java代码, 造成JSP页面难以维护。JSP 动作元素与JSP指令元素不同的是,JSP动作元素在请求处理阶段起作用。JSP动作元素是用XML语法写成的。利用JSP动作可以动态地插入文件、重用JavaBean组件、把用户重定向到另外的页面、为Java插件生成HTM

2017-11-05 22:27:35 239

原创 Jsp隐式对象

1.简介 Jsp引擎在调用JSP对应的_jspServlet,会传递或者创建9个与web开发相关的对象供servlet使用。JSP技术的设计者为了便于开发人员在编写JSP页面时获得这些web对象的引用,特意定义了9个相应的变量,在JSP页面中通过这些变量可以快速获取这9个对象的引用。9个对象分别是ResponseRequest Session Application Con

2017-11-05 21:05:28 177

原创 JSP入门

1.JSP原理 JSP实质上就是个Servlet,以前在用Servlet时是把HTML标签 用out.println()的方法响应给浏览器,现在则是直接在HTML页面中 写Java代码。 能这么做的原因是JSP会自动转译成Servlet,这些Servlet存放在 工作空间 -> .metadata -> .plugins -> org.eclipse.wst

2017-10-29 22:05:49 188

原创 Servlet文件上传

两点要素: 1.表单提交方式必须是post 2.enctype要指定为multipart/form-data。 enctype的默认值是application/x-www-form-urlencoded, 这种编码格式只支持键值对的数据,且只能是字符串,无法传输文件。需要的jar包: 实现:import java.io.BufferedInputStream

2017-10-29 21:48:40 391

原创 Servlet生命周期事件以及事件

这是Servlet2.3版本后新增的功能 1. 能够在不修改原有的Servlet基础上,监听程序中Servlet各个对象: ServletContext、HttpSession、HttpServletRequest中的存储 数据的变化。 2. 可以监听客户端的请求,服务端的操作。 组成部分:事件模型和监听器两部分。 事件是java中的一个重要的概念,指某个代码运行过程中的一个状态,如

2017-10-29 21:45:07 1040

原创 过滤器

Filter过滤器(拦截器)a) Filtering基本思想 在一个web项目中,可以将JSP,Servlet,html等文件看做资源而Tomcat则是充当一个容器来管理这些资源,并为资源提供服务。因此,可以再处理这些资源之前或之后,通过过滤器增加一些通用功能1.拦截请求头:安全认证。2.数据转换:加密解密。3.抢占特殊资源的服务:缓存。现阶段我们学的主要是用于

2017-10-29 21:42:04 228

原创 Cookie和Session

Cookie 是存储在客户端计算机上的文本文件,并保留了各种跟踪信息。Java Servlet 显然支持 HTTP Cookie。识别返回用户包括三个步骤:服务器脚本向浏览器发送一组 Cookie。例如:姓名、年龄或识别号码等。浏览器将这些信息存储在本地计算机上,以备将来使用。当下一次浏览器向 Web 服务器发送任何请求时,浏览器会把这些 Cookie 信息发送到服务器,服务器将使用这些信息来

2017-10-29 21:12:45 192

原创 请求转发与重定向

请求转发: request.getRequestDispatcher(“/main.html”).forward(request, response); 请求转发是服务器内部跳转,地址栏不会变。重定向: response.sendRedirect(request.getContextPath() + “/main.html”); 重定向则是用response对

2017-10-29 21:10:14 300

原创 Request以及Response常用方法

Request对象:request.getRequestURL().toString:获取请求的URLrequest.getParameter("键"):获取表单提交的参数request.getMethod():获取请求方式getCookies():获得cookie信息 getScheme():获取协议getServerName() 获取主机名getServerPort() 获取服务器的

2017-10-29 21:08:39 2291

原创 Servlet生命周期

Servlet的生命周期 Java对象的生命周期: 实例化 -> new。 JVM执行指令对对象进行初始化。 当对象不再使用时,gc调用finalize对对象进行清理,完成后销毁对象。Servlet的生命周期 step1: Tomcat容器会自动实例化Servlet。 Tomcat容器会自动调用in

2017-10-29 21:04:01 193

原创 get和post的区别

1.本质区别: get是从服务器上获取数据 post是向服务器提交数据 get适合做数据查询 post适合做数据添加、修改或者删除。2.参数传递的区别:get是把参数数据队列加到提交表单的action属性所指的URL中,像这样: www.qq.com/a?id=1&name=123&password=123456这种方式安全性较差。post会

2017-10-29 20:55:34 171

JS忍者秘籍第二版完美PDF

Javascript忍者秘籍第二版,含ES6、7语法讲解,非常不错

2019-04-24

MacType字体渲染神器

一款小巧精致的字体渲染神器,占用空间小,占用资源少

2017-12-29

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

TA关注的人

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