随笔分类 -  Java自学笔记

摘要:定义拦截器需要实现HandlerInterceptor接口,该接口中由三个方法:afterCompletion、postHandle、preHandle。 拦截器配置: 1、SpringMVC的拦截器是针对HandlerMapping进行拦截设置。 若在某个HandlerMapping中配置拦截,经 阅读全文
posted @ 2019-04-07 16:51 水痕灬 阅读(171) 评论(0) 推荐(0)
摘要:RESTful架构,REST即Representational State Transfer。表现层状态转换,就是目前最流行的一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便,所以得到越来越多网站的采用。 RESTful其实就是一个开发理念,是对http的很好诠释。 RESTful遵循的 阅读全文
posted @ 2019-04-07 16:45 水痕灬 阅读(168) 评论(0) 推荐(0)
摘要:SpringMVC进行Json交互: 客户端发送请求。若该请求K/V串是Json串时,这时会经过controller的参数绑定,进行Json数据的转换,转换时,在SpringMVC中,通过注解@RequestBody将Json串转成Java对象。@ResponseBody将Java对象转成Json串 阅读全文
posted @ 2019-04-07 16:30 水痕灬 阅读(189) 评论(0) 推荐(0)
摘要:系统中异常包含两种:预期异常和运行时异常RuntimeException,前者通过捕获异常从而获取异常信息,后者主要通过规范化代码开发、测试手段减少运行时异常的发生。 系统的dao、service、controller出现异常都通过throws Exception向上抛出,最后由SpringMVC前 阅读全文
posted @ 2019-04-07 16:19 水痕灬 阅读(142) 评论(0) 推荐(0)
摘要:数据回显就是数据提交后,若出现错误,将刚才交替的数据回显到提交页面。 pojo数据回显方法: SpringMVC默认对pojo数据进行数据回显。pojo数据传入controller方法后,SpringMVC自动将pojo数据放到request域,key就是pojo类型(首字母小写) 当JSP页面赋值 阅读全文
posted @ 2019-04-07 15:56 水痕灬 阅读(165) 评论(0) 推荐(0)
摘要:SpringMVC使用Hibernate的校验框架validation(和Hibernate没有关系)。 页面提交请求的参数,请求到Controller方法中,使用validation进行校验。除去使用校验Jar包外,还需要在SpringMVC.xml中来配置validation校验器。 将校验器注 阅读全文
posted @ 2019-04-07 15:45 水痕灬 阅读(166) 评论(0) 推荐(0)
摘要:SpringMVC参数绑定过程:从客户端请求key/value的数据,经过参数绑定,将key/value的数据绑定管道controller方法的形参中。 在SpringMVC中,接收页面提交的数据时,通过方法形参来接收,而不是controller类定义成员变量来接收。 流程: 客户端请求key/va 阅读全文
posted @ 2019-04-07 15:23 水痕灬 阅读(179) 评论(0) 推荐(0)
摘要:前端控制器配置,在web.xml中配置前端控制器。 配置处理器适配器:在classpath下的springmvc.xml中配置处理器映射器。 配置Handler:将编写的Handler在spring容器中加载。 配置处理器映射器:在classpath下的springmvc.xml中配置处理器映射器。 阅读全文
posted @ 2019-03-31 12:11 水痕灬 阅读(220) 评论(0) 推荐(0)
摘要:SpringMVC是Spring框架的一个模块,SpringMVC和Spring无需通过中间层进行整合。SpringMVC是一个基于MVC设计模式的一个框架。 SpringMVC框架原理: 客户端发送一个request请求到SpringMVC的前端控制器(DispatcherServlet),Dis 阅读全文
posted @ 2019-03-31 11:39 水痕灬 阅读(249) 评论(0) 推荐(0)
摘要:Mybatis和Spring整合: 持久层Mybatis的mapper.xml都需要spring进行管理,则需要spring通过单例方式管理SqlSessionFactory。spring和mybatis整合生成代理对象,使用SqlSessionFactory创建SqlSession。 整合后的原始 阅读全文
posted @ 2019-03-17 12:00 水痕灬 阅读(148) 评论(0) 推荐(0)
摘要:Mybatis提供查询缓存,用于减轻数据库压力,提高数据库性能。查询缓存分为一级缓存和二级缓存。 一级缓存是SqlSession级别的缓存。在操作数据库时需要SqlSession对象,在对象中有一个数据结构(hasmap)用于存储缓存数据。不同的SqlSession之间的缓存数据区域(hashmap 阅读全文
posted @ 2019-03-17 11:59 水痕灬 阅读(141) 评论(0) 推荐(0)
摘要:高级映射: 一对一查询:对应表t_Orders、t_User select t_orders.*,t_user.username,t_user.address from t_orders,t_user where t_orders.user_id=t_user.id resultType实现方式: 阅读全文
posted @ 2019-03-17 11:58 水痕灬 阅读(211) 评论(0) 推荐(0)
摘要:Mybatis输入映射: 通过parameterType指定输入参数的类型,类型可以是简单类型、hashmap、pojo的包装类型。 pojo的包装类型: 当完成一个功能需要传入复杂的条件时,需要使用pojo的包装类型。那么包装类型的pojo类型映射: 定义User实体类的扩展类: 在包装类型的po 阅读全文
posted @ 2019-03-17 11:56 水痕灬 阅读(188) 评论(0) 推荐(0)
摘要:SqlSession范围: 1、SqlSessionFactoryBuilder:通过SqlSessionFactoryBuilder创建会话工厂SqlSessionFactory。 将SqlSessionFactory当成一个工具类使用即可,不需要使用单例管理SqlSessionFactoryBu 阅读全文
posted @ 2019-03-17 11:53 水痕灬 阅读(181) 评论(0) 推荐(0)
摘要:原生态JDBC程序问题总结: 1、数据库连接,使用时就创建,不使用立即释放。该操作是对数据库进行频繁连接开启和关闭,造成数据库资源浪费,影响数据库性能。 解决:使用数据库连接池管理数据库连接。 2、将sql语句硬编码到java代码中,若sql语句修改,需要重新编译java代码,不利于维护。 解决:将 阅读全文
posted @ 2019-03-17 11:16 水痕灬 阅读(250) 评论(0) 推荐(0)
摘要:Maven: Maven是Apache公司开源项目。是一个项目构建工具。用来依赖管理。 同样的项目,使用Maven开发项目相对于传统方式开发项目占用的空间要小,因为Maven项目没有Jar包信息。因为Maven项目的Jar包信息都在Jar包仓库(又称Maven仓库)中。 Maven查找Jar包的过程 阅读全文
posted @ 2019-03-17 10:58 水痕灬 阅读(475) 评论(0) 推荐(0)
摘要:SSH框架: Struts2(web层)、Spring(service层)、Hibernate(dao层)整合。 ssh框架整合式两两整合,就是Struts2与Spring整合、Spring与Hibernate整合。 Struts2与Spring整合: 就是把struts2的action对象创建交给 阅读全文
posted @ 2019-03-13 22:55 水痕灬 阅读(177) 评论(0) 推荐(0)
摘要:Spring对不同持久化技术都进行封装了不同的模板类。模板类有: JDBC:org.springframework.jdbc.core.JdbcTemplate Hibernate5.0:org.springframework.orm.hibernate5.HibernateTemplate IBa 阅读全文
posted @ 2019-03-11 15:51 水痕灬 阅读(209) 评论(0) 推荐(0)
摘要:Spring的Bean操作(注解方式): 注解:代码中特殊的标记,使用注解可以完成相关功能。 @注解名称(属性名称=属性值) 注解可以使用在类、方法、属性上面。 主要用途:可以替代配置文件来创建对象和属性注入。 在做ioc基本功能时,配置文件引入的schema约束为beans约束,而在做spring 阅读全文
posted @ 2019-03-11 15:50 水痕灬 阅读(166) 评论(0) 推荐(0)
摘要:Spring概述: spring是一个一站式轻量级的开源框架。spring核心主要有两部分:AOP(面向切面)、IOC(控制反转)。 aop:卖你想切面编程。扩展功能不修改源代码实现。 ioc:控制反转。当类中有非静态方法,调用该方法时需要创建类的对象。而spring把对象的创建不是通过new的方式 阅读全文
posted @ 2019-03-11 15:49 水痕灬 阅读(337) 评论(0) 推荐(0)