随笔分类 - 服务端开发
摘要:1. 概述 SpringMVC 是 Spring 的 Web 模块。 Spring 为展现层提供的基于 MVC 设计理念的优秀的 Web 框架,是目前最主流的 MVC 框架之一。 Spring3.0 后全面超越 Struts2,成为最优秀的 MVC 框架。 Spring MVC 通过一套 MVC 注
阅读全文
摘要:1. 引入 IOC IOC 是一个容器 容器启动的时候创建所有单实例对象 我们可以直接从容器中获取到这个对象 Spring IOC IOC 容器的启动过程?启动期间都做了什么(什么时候创建所有单实例bean) IOC 是如何创建这些单实例 bean,并如何管理的,到底保存在了那里? 2. Class
阅读全文
摘要:Spring 提供了 JdbcTemplate 以便捷地操作 DB。 1. CRUD 测试 1.1 导包 1.2 配置文件 <!-- DAO 层组件自动装配 JdbcTemplate: @Repository public class EmpDao { @Autowired JdbcTemplate
阅读全文
摘要:1. 基于 XML 的自动装配 手动赋值:通过 property 子标签 自动赋值(自动装配):通过 autowire 属性,只对自定义类型有效 ="default|no" 默认不开启,开启后若找不到则装配 null ="byName" 以属性名作为 id 去容器中找到一个组件给他赋值,car =
阅读全文
摘要:1. 框架 高度抽取可重用代码的一种设计,有高度的通用性。 框架是多个「可重用模块」的集合(半成品软件),形成一个某个领域的整体解决方案。 2. Spring 模块 Spring是一个 IOC(DI) 和 AOP 容器框架 // 容器:管理所有的组件(类) Test:Spring 的单元测试模块sp
阅读全文
摘要:MyBatis 动态 SQL 简介 动态 SQL 是 MyBatis 强大特性之一。极大的简化我们拼装 SQL 的操作 动态 SQL 元素和使用 JSTL 或其他类似基于 XML 的文本处理器相似 MyBatis 采用功能强大的基于 OGNL 的表达式来简化操作 if choose (when,ot
阅读全文
摘要:Mybatis 概述 Mybatis 是 Apache 的一个开源项目 iBatis,iBatis 3.x 正式更名为 MyBatis。 iBatis 一词来源于 "internet" 和 "abatis" 的组合,是一个基于 Java 的持久层框架。iBatis 提供的持久层框架包括 SQL Ma
阅读全文
摘要:处理 Json review Json Json 有 2 种格式 Json 对象: Json 数组:[value1, value2 …] Json 对象解析方式 对象:对象.key 数组:for 循环遍历 Java 转换 Json Bean & Map → Json 对象 Collection →
阅读全文
摘要:视图解析 概述 不论控制器返回一个 String、ModelAndView、View 都会转换为 ModelAndView 对象,由视图解析器解析视图,然后,进行页面的跳转。 重要的两个接口 视图解析的源码分析 Line 1204,Line 1225 一般情况下,控制器方法返回字符串类型的值会被当成
阅读全文
摘要:SpringMVC 概述 概述 Spring 为展现层提供了基于 MVC 设计理念的优秀的 web 框架,是目前最主流的 MVC 框架之一 Spring 3.0 后全面超越 struts2,成为最优秀的 MVC 框架 Spring MVC 通过一套 MVC 注解,让 POJO(Plain Old J
阅读全文
摘要:1. JdbcTemplate 1.1 概述 为了使 JDBC 更加易于使用,Spring 在 JDBC API 上定义了一个抽象层,以此建立一个 JDBC 存取框架。 作为 Spring JDBC 框架的核心,JDBC 模板的设计目的是为不同类型的 JDBC 操作提供模板方法,通过这种方式,可以在
阅读全文
摘要:1. 动态代理 1.1 代理模式的原理 使用一个代理将原本对象包装起来,然后用该代理对象”取代”原始对象。任何对原始对象的调用都要通过代理。代理对象决定是否以及何时将方法调用转到原始对象上。 1.2 动态代理的方式 基于接口实现动态代理: JDK 动态代理(代理对象和和被代理对象实现相同的接口) 基
阅读全文
摘要:框架:具有约束性的去支撑我们完成各种功能的半成品的项目 1. 简述 Spring 是一个 IOC(DI) 和 AOP 容器框架。 为简化企业级开发而生,使用 Spring,JavaBean 就可以实现很多以前要靠 EJB 才能实现的功能。同样的功能,在 EJB 中要通过繁琐的配置和复杂的代码才能够实
阅读全文
摘要:1. ThreadLocal 使用方法很简单: ThreadLocal<T> local = new ThreadLocal<T>(); local.set(...); local.get(); ThreadLocal 而是一个线程内部的存储类,可以在指定线程内存储数据,数据存储以后,只有指定线程可
阅读全文
摘要:文件上传 开发步骤 1. 提供表单,允许用户通过表单选择文件进行上传 表单必须是 POST 提交(表单默认为 GET 提交,请求参数不能超过 1KB) 表单输入项必须有 name 属性(虽然文件表单输入项的name到后台没啥用),一个表单输入项如果没有 name 属性,Browser 是不会把它当作
阅读全文
摘要:什么是监听器? 监听器就是一个实现特定接口的普通 Java 程序,这个程序专门用于监听另一个 Java 对象的方法调用或属性改变,当被监听对象发生上述事件后,监听器某个方法将立即被执行。 Servlet 监听器 在 Servlet 规范中定义了多种类型的监听器,它们用于监听的事件源分别为 Servl
阅读全文
摘要:数据库系统(DBS) 在 DBS 中,数据不再仅仅服务于某个程序或用户,而是按一定的结构存储在数据库,作为共享资源。由数据库管理系统(DBMS)软件管理,使得数据能为尽可能多的应用服务 敲 SQL 命令的 CMD 窗口、Navicat Premium、PL/SQL developer 这都属于客户端
阅读全文
摘要:MVC 设计模式 MVC 模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为 3 个基本部分:模型(Model)、视图(View)和控制器(Controller)。 MVC 可对程序的后期维护和扩展提供了方便,并且使程序某些部分的重用提供了方便。而且 M
阅读全文
摘要:EL 表达式 最初出现的目的是为了取代 JSP 页面中的 "脚本表达式<%= %>",格式:${...}。但随着 EL 的发展,其功能已不限于此。 获取数据 获取常量:字符串、数字、布尔类型${"root" } ${12345 } ${true } 获取域中的变量 如果表达式中写的是一个变量名,则
阅读全文
摘要:会话管理 什么是会话? Browser 开始访问网站到访问网站结束期间产生的多次请求响应组合在一起叫做一次会话 会话过程中要解决的一些问题? 每个用户在使用浏览器与服务器进行会话的过程中,不可避免各自会产生一些数据,程序要想办法为每个用户保存这些数据。 例如:用户点击超链接通过一个 BuyServl
阅读全文
