摘要:Jersey 简介 Jersey 是开源的 RESTful 框架,实现了 JAX-RS 规范,提供了更多的特性和工具, 可以进一步地简化 RESTful service 和 client 开发,与 Struts 类似,它同样可以和 Hibernate、Spring 框架整合。此处使用它实现文件上传功 阅读全文
posted @ 2021-07-27 16:50 彭楷淳 阅读(19) 评论(0) 推荐(0) 编辑
摘要:docker 中的容器就是一个轻量级的虚拟机,是镜像运行起来的一个状态,本文就先来看看容器的基本操作。镜像就像是一个安装程序,而容器则是程序运行时的一个状态。 查看容器 启动 docker 后,使用 docker ps 命令可以查看当前正在运行的容器: $ docker ps 查看所有容器 上面这条 阅读全文
posted @ 2021-02-04 20:05 彭楷淳 阅读(7) 评论(0) 推荐(0) 编辑
摘要:什么是 Docker Docker 是一个虚拟化容器引擎,完全使用沙箱隔离机制,较传统的 VM 虚拟机有很大优势。 传统虚拟机(VM)和虚拟化容器(Docker)的区别: 传统的 VM 虚拟机不能共享资源 , 比如在 VMWare 中安装了一个内存为 4GB 的 Linux 操作系统 , 意味着该L 阅读全文
posted @ 2021-02-04 20:02 彭楷淳 阅读(15) 评论(0) 推荐(0) 编辑
摘要:系统服务管理 systemctl systemctl命令是service和chkconfig命令的组合体,可用于管理系统。 输出系统中各个服务的状态: $ systemctl list-units --type=serviceCopy to clipboardErrorCopied 查看服务的运行状 阅读全文
posted @ 2021-02-04 18:56 彭楷淳 阅读(8) 评论(0) 推荐(0) 编辑
摘要:下载 Ubuntu 官网下载 简介 Linux 是一种自由和开放源码的类 UNIX 操作系统,使用 Linux 内核。通常情况下,Linux 被打包成供桌上型电脑和服务器使用的 Linux 发行版本,Ubuntu 就是 Linux 的发行版本之一,目前比较流行知名的 Linux 发行版有:Ubunt 阅读全文
posted @ 2021-02-04 17:07 彭楷淳 阅读(9) 评论(0) 推荐(0) 编辑
摘要:下载项目 已上传至百度网盘 网盘链接:https://pan.baidu.com/s/1m2YcxD6hGp6rQrGNhAEjYw 提取码:iu9y 生成代码 由于使用数据表时,我们需要给每一个表都创建对应的实体类,每个实体类都有对应的 Mapper 接口和 Mapper.xml 文件,这些其实都 阅读全文
posted @ 2021-02-04 13:58 彭楷淳 阅读(11) 评论(0) 推荐(0) 编辑
摘要:一对一查询 在实际开发中,经常会遇到一对一查询,一对多查询等。这里我们先来看一对一查询。例如:每本书都有一个作者,作者都有自己的属性,根据这个,我来定义两个实体类: public class Book { private Integer id; private String name; privat 阅读全文
posted @ 2021-02-04 13:57 彭楷淳 阅读(14) 评论(0) 推荐(0) 编辑
摘要:前面文章所写的增删改查是存在问题的。主要问题就是冗余代码过多,模板化代码过多。 例如,我想开发一个 UserDao,可能是下面这样。此时,我们分析这个 UserDao,发现它有很多可以优化的地方。每个方法中都要获取 SqlSession,涉及到增删改的方法,还需要 commit,SqlSession 阅读全文
posted @ 2021-02-04 13:56 彭楷淳 阅读(12) 评论(0) 推荐(0) 编辑
摘要:mapper 映射文件,是 MyBatis 中最重要的部分,涉及到的细节也是非常非常多。 parameterType 这个表示输入的参数类型。 $ 和 # 这是一个非常非常高频的面试题,虽然很简单。在面试中,如果涉及到 MyBatis,一般情况下,都是这个问题。在 MyBatis 中,我们在 map 阅读全文
posted @ 2021-02-04 13:55 彭楷淳 阅读(15) 评论(0) 推荐(0) 编辑
摘要:全局配置中的属性非常多,主要有如下几方面: properties(属性) settings(全局配置参数) typeAliases(类型别名) typeHandlers(类型处理器) objectFactory(对象工厂) plugins(插件) environments(环境集合属性对象) env 阅读全文
posted @ 2021-02-04 13:53 彭楷淳 阅读(10) 评论(0) 推荐(0) 编辑
摘要:JDBC 存在的问题 数据库连接创建、释放频繁造成系统资源浪费从而影响系统性能,如果使用数据库连接池可解决此问题。 Sql 语句在代码中硬编码,造成代码不易维护,实际应用 sql 变化的可能较大,sql 变动需要改变 java 代码。 使用 preparedStatement 向占位符号传参数存在硬 阅读全文
posted @ 2021-02-04 13:33 彭楷淳 阅读(33) 评论(0) 推荐(0) 编辑
摘要:@ControllerAdvice,顾名思义,这是一个增强的 Controller。使用这个 Controller ,可以实现三个方面的功能: 全局异常处理 全局数据绑定 全局数据预处理 全局异常处理 使用 @ControllerAdvice 实现全局异常处理,只需要定义类,添加该注解即可定义方式如 阅读全文
posted @ 2021-02-04 13:16 彭楷淳 阅读(10) 评论(0) 推荐(0) 编辑
摘要:Spring MVC 的处理器拦截器,类似于 Servlet 开发中的过滤器 Filter,用于对处理器进行预处理和后处理。 应用场景 日志记录:记录请求信息的日志,以便进行信息监控、信息统计、计算 PV 等。 权限检查:如登录检测,进入处理器检测检测是否登录,如果没有直接返回到登录页面。 性能监控 阅读全文
posted @ 2021-02-04 11:45 彭楷淳 阅读(14) 评论(0) 推荐(0) 编辑
摘要:B/S 系统中对 http 请求数据的校验多数在客户端进行,这也是出于简单及用户体验性上考虑,但是在一些安全性要求高的系统中服务端校验是不可缺少的,实际上,几乎所有的系统,凡是涉及到数据校验,都需要在服务端进行二次校验。为什么要在服务端进行二次校验呢?这需要理解客户端校验和服务端校验各自的目的。 客 阅读全文
posted @ 2021-02-04 11:41 彭楷淳 阅读(7) 评论(0) 推荐(0) 编辑
摘要:SpringMVC 中对文件上传做了封装,我们可以更加方便的实现文件上传。从 Spring3.1 开始,对于文件上传,提供了两个处理器: CommonsMultipartResolver StandardServletMultipartResolver· 第一个处理器兼容性较好,可以兼容 Servl 阅读全文
posted @ 2021-02-04 11:18 彭楷淳 阅读(11) 评论(0) 推荐(0) 编辑
摘要:@RequestMapping 这个注解用来标记一个接口,这算是我们在接口开发中,使用最多的注解之一。 请求 URL 标记请求 URL 很简单,只需要在相应的方法上添加该注解即可: @Controller public class HelloController { @RequestMapping( 阅读全文
posted @ 2021-02-04 08:52 彭楷淳 阅读(15) 评论(0) 推荐(0) 编辑
摘要:DispatcherServlet 作用 DispatcherServlet 是前端控制器设计模式的实现,提供 Spring Web MVC 的集中访问点,而且负责职责的分派,而且与 Spring IoC 容器无缝集成,从而可以获得 Spring 的所有好处。DispatcherServlet 主要 阅读全文
posted @ 2021-02-04 08:50 彭楷淳 阅读(10) 评论(0) 推荐(0) 编辑
摘要:Spring MVC 概述 Spring MVC 也叫 Spring Web MVC ,属于展示层框架,是 Spring 框架的一部分。 MVC 模式作用在于分离应用程序的不同方面(业务逻辑、 UI 逻辑、输入逻辑),而 Spring MVC 框架分别对应为其提供了 模型(Model)、视图(Vie 阅读全文
posted @ 2021-02-04 08:47 彭楷淳 阅读(11) 评论(0) 推荐(0) 编辑
摘要:Spring 中的事务主要是利用 Aop 思想,简化事务的配置,可以通过 Java 配置也可以通过 XML 配置。 我们通过一个转账操作来看下 Spring 中的事务配置。 准备工作 创建数据库 CREATE DATABASE /*!32312 IF NOT EXISTS*/`test01` /*! 阅读全文
posted @ 2021-02-04 08:46 彭楷淳 阅读(8) 评论(0) 推荐(0) 编辑
摘要:JdbcTemplate 是 Spring 利用 Aop 思想封装的 JDBC 操作工具。 准备工作 引入依赖 创建一个新项目,添加如下依赖: <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context 阅读全文
posted @ 2021-02-04 08:43 彭楷淳 阅读(17) 评论(0) 推荐(0) 编辑