10 2017 档案
摘要:1. 传递依赖冲突 1.1 传递依赖:A(项目)依赖B,B依赖C(1.1版本),B是A的直接依赖,C是A的传递依赖; A(项目)又依赖D,D依赖C(1.2版本),此时,C有两个版本,产生冲突; 1.2 Maven 的调解原则 第一声明者优先原则: 谁先定义,就用谁的传递依赖; 路径近者优先原则: 直
阅读全文
摘要:1. 搭建Struts2 环境 1. 创建 struts2 的配置文件: struts.xml; 2. 在 web.xml 中配置 struts2 的核心过滤器; 2. 搭建 Spring 环境 1. 创建 spring 配置文件: applicationContext.xml; 2. 在 web.
阅读全文
摘要:参考资料 "Maven 入门" "How to override the managed version of dependencies in Spring Boot"
阅读全文
摘要:1. 概述 1. Maven 项目中需要某一个jar包,只需要在maven项目中配置所需jar包信息;maven程序根据jar包坐标信息 去 jar包仓库中查找jar包; 2. jar包坐标,以 为例 Apache(公司名称)+struts2(项目名称)+2.3.24(版本信息); 2. Maven
阅读全文
摘要:1. 需求: 集成公网手机号归属地查询服务; 对外发布自己的手机号归属地查询服务; 提供查询界面 参考资料 "CXF 框架发布REST服务"
阅读全文
摘要:1. 搭建服务端(查询天气) 2. 生成客户端(接收天气) 1. 命令是CXF提供的生成客户端工具,与wsimport类似,可以根据 WSDL 生成客户端代码; 2. 常用参数: : 指定输出目录; : 指定包名,如果不指定该参数,默认包名是 WSDL 的命名空间倒序; 3. Wsdl2java 支
阅读全文
摘要:1. 远程调用技术 2. WebService 概述 WebService 是使用 Http 发送 SOAP 协议数据的一种远程调用技术; WebService 需要开发客户端; WebService 需要开发服务端; SOAP,简单对象访问协议,用来描述传递信息的格式; WSDL,WebServi
阅读全文
摘要:1. 客户端注意事项 `` 2. 文件上传 1. Struts2 框架使用拦截器来完成文件上传,并且底层使用的也是 FileUpload 组件; 2. FileUpload 拦截器默认在 dafaultStack 栈中,默认会执行的; 3. 文件上传时,需要在 Action 类中定义三个属性: ,
阅读全文
摘要:1. SVN 体系结构 2. 创建 SVN 的仓库 1. 在任意目录下,手动创建文件夹,例如: 2. 把 Repositories 文件夹当作仓库,在使用命令创建多个子文件夹,代表不同的项目: 3. 仓库目录结构: :配置文件 : SVN的配置文件; : 用户名和密码; : 权限认证的文件; : 版
阅读全文
摘要:异常: 解决方案 需要在 struts2 的核心过滤器之前,再配置一个Srping 框架提供的过滤器, 该过滤器让 session 对象 在 WEB 层就创建, 在 WEB 层销毁; 参考资料 "Spring 入门视频"
阅读全文
摘要:1. Spring 框架整合 Struts2 框架 2. Spring 框架整合 Hibernate 框架 参考资料 "Spring 入门视频"
阅读全文
摘要:1. Spring 框架的事务管理相关的类和API : 平台事务管理器(真正管理事务的类); : 事务定义信息(事务的隔离级别,传播行为,超时,只读等); : 事务的状态; 平台事务管理器真正管理事务对象,根据事务定义信息( )进行事务管理,在管理事务 中产生的一些状态记录到 中; 1.1 接口中实
阅读全文
摘要:``` ```
阅读全文
摘要:1. 概述 Spring 框架提供了很多持久层的模板类来简化编程; Spring 框架提供的JDBC模板类: ; Spring 框架提供的整合 Hibernate 框架的模板类: 2. 环境搭建 2.1 创建数据库表结构 2.2 导入 jar 包 Spring 框架的基本开发包(6个); Sprin
阅读全文
摘要:1. 环境搭建 1.1 导入 jar 包 Spring 框架的基本开发包(6个); Spring 的传统AOP的开发包 (在 Spring 依赖包中) aspectJ 的开发包 (在 Spring 依赖包中) 1.2 编写 applicationContext.xml 配置文件 1.3 创建包结构,
阅读全文
摘要:1. AOP 的概述 AOP, Aspect Oriented Programming, 面向切面编程; 通过预编译方式和运行期动态代理实现程序功能的统一维护的技术; AOP 采取横向抽取机制,取代了传统纵向继承体系重复性代码(性能监视,事务管理,安全检查,缓存); AOP 可以在不修改源代码的前提
阅读全文
摘要:参考资料 "Spring 入门视频"
阅读全文
摘要:1. 环境搭建 1.1 导入所需 jar 包 引入 IOC 容器必须的6个jar包; , Spring 框架的AOP的jar包; 1.2 创建对应的包结构,编写Java的类 : 接口; : 具体的实现类; 1.3 在src目录下,创建 applicationContext.xml 配置文件 1.4
阅读全文
摘要:1. Spring 入门 1.1 概述 Spring 是一个分层的 JavaEE 轻量级开源框架; Spring 的核心是控制反转(IOC)和面向切面(AOP); 1.2 特点 方便解耦,简化开发; AOP 编程的支持; 声明式事务的支持; 方便程序的测试; 方便集成各种优秀框架; 降低 JavaE
阅读全文
摘要:1. OGNL 表达式 1.1 概述 OGNL(Object Graphic Navigation Language),即对象图导航语言; 所谓对象图,即以任意一个对象为根,通过OGNL可以访问与这个对象关联的其它对象; 通过OGNL表达式,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构
阅读全文
摘要:1. Struts2 框架中使用 Servlet 的 API 来操作数据 1.1 完全解耦合的方式 1. Struts2 框架中提供了一个 ActionContext 类,该类中提供了一些方法: : 获取 ActionContext 对象实例; : 获取请求参数, 相当于 ; : 获取代表 sess
阅读全文
摘要:1. Struts2.0 概述 Struts 2.0 是以 WebWork 为核心,采用拦截器的机制来处理用户的请求; Struts 2.0 是一个基于 MVC 设计模式的 Web 层框架; Struts 2.0 本质上相当于一个 servlet; 1.1 Web 层框架的特点 前端控制器模式; S
阅读全文
摘要:1. Hibernate 框架的查询方式 唯一标识OID的检索方式: 对象导航的方式; HQL 检索方式; QBC 检索方式; SQL 检索方式 2. HQL 检索方式 2.1 HQL 与 SQL 的关系 HQL: Hibernate Query Language; 使用的是 Query 接口; H
阅读全文
摘要:1. 一对多映射 1.1 JavaWeb 一对多建表原则 多方表的外键指向一方表的主键; 1.2 编写一对多的 JavaBean 1.3 编写一对多的映射配置文件 2. 保存客户和联系人的数据 2.1 双向关联的方式保存数据 2.2 级联保存 级联保存:保存一方,同时可以把关联的对象也保存到数据库中
阅读全文
摘要:1. Hibernate 的持久化类 1.1 什么是持久化类 持久化类: 就是一个 Java 类(JavaBean),这个 Java类与表建立了映射关系就可以是持久化类; 持久化类 = JavaBean + xxx.hbm.xml; 1.2 持久化类的编写规则 提供一个无参数的构造方法,因为底层需要
阅读全文
摘要:1. SSH Web 层: Struts2 业务层: Spring 持久层: Hibernate 2. Hibernate 概述 1. 概述 Hibernate 是一个对象关系映射框架(ORM 框架); 对 JDBC 访问数据库的代码做了封装,简化了开发; 可以通过操作对象的方式来操作数据库表记录;
阅读全文
摘要:1. 概述 PL/SQL(Procedure Language/SQL)是 Oracle 对 sql 语言的过程化扩展,指在 SQL 命令语言中增加了 过程处理语句(如分支,循环等),使 SQL 语言具有过程处理能力. 2. 语法 2.1 变量和常量 2.2 IF 语句 2.3 循环 2.4 游标(
阅读全文
摘要:1. 基本查询 1. 字段(列)控制 a) 查询所有列 : b) 查询指定列 : c) 完全重复的记录只显示一次 : 当查询结果中的多行记录一模一样时,只显示一行. 一般查询所有列时很少会有这种情况, 但只查询一列(或几列)时,这种可能就大了!!(不会对源表产生影响, 只是在显示的时候, 不显示)
阅读全文
摘要:1. 环境信息 Mac OS X 10.11.1 Homebrew 2. brew 常用命令(以 mysql 为例) : 搜索具体的程序包 : 安装具体的程序包 : 查看具体程序的信息 : 卸载具体的应用 3. 安装 1. 2. 安装完以后,终端输出的内容包括: : 配置文件路径 : 服务器默认路径
阅读全文
摘要:1. 选择最有效率的表名顺序 数据库的解析器按照从右到左的顺序处理FROM子句中的表名, FROM子句中写在最后的表将被最先处理, 在FROM子句中包含多个表的情况下,若这些表之间不存在关系,可以选择将记录条数最少的表放在最后; 如果有3个以上的表连接查询,那就需要选择那个被其他表所引用的表放在最后
阅读全文
摘要:1. 类加载器概述 1.1 类加载器的作用 把 .class 文件加载到 JVM 的方法区中,变成一个 Class 对象! 1.2 类加载器分类 1. 类加载器也是一个类: ; 2. Java 提供了三种类加载器: 引导类加载器, 加载 java 自己的类库, 即 rt.jar 中的类; 扩展类加载
阅读全文
摘要:1. 一个方法 1. 该方法的作用: 在运行时, 动态创建一组指定接口的实现类对象! 2. 动态代理的作用:学习 AOP(面向切面编程) 3. JavaSE 包 2. InvocationHandler 接口 1. 该接口只有一个 invoke 方法. 调用代理对象所实现接口中的方法,就是调用 in
阅读全文
摘要:1. 概述 注解代替 web.xml 配置文件 异步处理 对上传的支持 2. 注解代替 web.xml 配置文件 1. 使用方法 在 Servlet 类上添加 在 Filter 类上添加 在 Listener 类上添加 2. 优缺点 优点:配置信息较少. 缺点:不方便修改. 3. 异步处理 1. 什
阅读全文
摘要:1. 反射泛型信息 2. 反射注解 2.1 要求 注解的保留策略必须是 2.2 反射注解需要从作用目标上返回 类上的注解,需要使用 来获取; 方法上的注解, 需要使用 来获取; 构造器上的注解,需要使用 来获取; 成员上的注解,需要使用 来获取. 其中 有共同的父类 . 3. 反射泛型和注解的应用(
阅读全文
摘要:1.什么是注解 1. 注解的语法: ; 2. 注解的作用: 用来替代 xml 配置文件; 在 Servlet 3.0 中就可以使用注解来代替配置文件; 3. 注解是由框架来读取使用的; 4. 所有的注解都是 Annotation 的子类; 5. 简单说, 注解是给程序(框架)看到, 而注释是给人看的
阅读全文
摘要:参考资料: "省市联动" "省市联动 JSON"
阅读全文
摘要:1. JQuery UI 概述 1.1 JQuery UI 主要分为三部分: 交互部件(interactions):是一些与鼠标交互相关的内容; 小部件(widgets): 主要是一些页面的扩展; 效果库(effects):用于提供丰富的动画效果; 2. 交互部件 3. 小部件 :可折叠显示; :
阅读全文
摘要:1. JQuery 库概述 1. JQuery 库包含的功能 HTML 元素选取 HTML 元素操作 CSS 操作 HTML 事件函数 JavaScript 特效和动画 HTML DOM 遍历和修改 AJAX 工具类 2. JQuery 语法 2.1 "$":定义 JQuery; "selector
阅读全文
摘要:1. 什么是 JSON JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. JSON 是用字符串来表示 JavaScript 对象, 例如可以在 Servlet 中发送一个 JSON 格式的字符串给 客户端 JavaScript, JavaScript 可
阅读全文
摘要:1. XStream 作用 可以把 JavaBean 转换为(序列化) xml; 2. XStream 相关 jar 包 核心 jar 包: ; 必须依赖包: (XML Pull Parser, 一款速度很快的 XML 解析器); 3. 使用步骤: 参考资料: "JavaWeb 视频教程"
阅读全文
摘要:1. 同步交互与异步交互 1.1 同步交互 客户端发送一个请求, 需要等待服务器的响应结束,才能发送第二个请求! 刷新的是整个页面. 1.2 异步交互 客户端发送一个请求,无需等待服务器的响应,然后就可以发送第二个请求! 可以使用 js 接收服务器的响应,然后使用 js 来局部刷新. 2. AJAX
阅读全文
摘要:1. 邮件协议概述 SMTP(Simple Mail Transfer Protocol, 简单邮件传输协议) 发邮件协议; POP3(Post Office Protocol Version 3, 邮局协议第3版) 收邮件协议; IMAP(Internet Message Access Proto
阅读全文
摘要:1. 下载概述 下载就是向客户端响应字节数据! 将一个文件变成字节数组, 使用 来响应给浏览器!! 2. 下载要求 1. 两个头一个流 : 传递给客户端的文件的 MIME 类型; 可以使用文件名称调用 ServletContext 的 getMimeType() 方法, 得到 MIME 类型! :
阅读全文
摘要:1. 文件上传的要求 1.1 上传对表单的限制 ; ; 表单中需要添加文件表单项: ``. 1.2 上传对 Servlet 的限制 方法返回的是字符串类型, 所以在表单中有 时, 该方法作废了, 因为它永远都返回 null. 应该使用 , 返回结果中包含整个请求体. 上传不能使用 BaseServl
阅读全文
摘要:页面静态化是把servlet请求的资源所做输出保存到html中, 然后重定向到 html 页面, 二次访问时,这个html已经存在,那么直接重定向,不用再去访问servlet! 参考资料: "JavaWeb 视频教程"
阅读全文
摘要:1. 什么是过滤器 Servlet 是用来处理请求的, 过滤器是用来拦截请求的. 当用户请求某个 Servlet 时,会先执行部署在这个请求上的 Filter, 而 Filter 决定是否调用 Servlet. 当执行 Servlet 代码完成后, 还会执行 Filter 后面的代码!! 它会在一组
阅读全文
摘要:1. JavaWeb 监听器概述 在 JavaWeb 被监听的事件源为: ServletContext, HttpSession, ServletRequest, 即三大域对象. 监听域对象"创建"与"销毁"的监听器; 监听域对象"操作域属性"的监听器; 监听 HttpSession 的监听器; J
阅读全文
摘要:1. 分页的优点 只查询一页,不用查询所有页!有利于提高效率. 2. 分页数据 1. 页面的数据都是由 Servlet 传递过来的. Servlet 需要给页面提供 2. 当前页: pageCode, 简写 pc 如果页面没有传递当前页码, 那么 Servlet 默认是第一页, 否则,以页面传递的为
阅读全文
摘要:1. 目录结构 Unix 和 Linux 的设计初衷就是多用户操作系统,多个用户共同享用系统的全部硬件和软件资源。 root : 超级管理员目录; etc : 存放配置文件; usr : 存放系统配置文件; (unix shared resource); 2. Terminal 快捷方式 commo
阅读全文
摘要:1. DAO 事务 2. Service 才是处理事务的地方 DAO 中不是处理事务的地方,因为 DAO 中的每个方法都是对数据库的一次操作, 而 Service 中的方法才是 对应一个业务逻辑,也就是我们需要在 Service 中的一方法中调用 DAO 的多个方法,而这些方法应该在一个 事务中.
阅读全文
摘要:1. BaseServlet 的作用 让一个Servlet可以处理多种不同的请求,不同的请求调用Servlet的不同方法. 2. 实现原理 客户端发送请求时, 必须多给出一个参数, 用来说明要调用的方法!! 这样,BaseServlet 通过该参数来 调用目标方法. 请求处理方法的签名必须与 ser
阅读全文
摘要:1. 导包: 2. 核心类: 3. 常用方法: 4. ResultSetHandler 接口的实现类 单行结果: , 构造器需要一个 Class 类型的参数, 用来把一行结果转换成指定类型的 javaBean 对象; 多行结果: , 构造器需要一个 Class 类型的参数, 用来把一行结果转换成一个
阅读全文
摘要:DBUtils 工具类的使用 参考资料: "JavaWeb 视频教程"
阅读全文
摘要:1. ThreadLocal 内部其实是用 Map 集合来保存数据.其中键为当前线程. 2. ThreadLocal 类只有三个方法: : 保存值; : 获取值; : 移除值; 参考资料: "JavaWeb 视频教程"
阅读全文
摘要:1. Tomcat 配置 JNDI 资源 JNDI(Java Naming and Directory Interface), Java 命名和目录接口; JNDI 作用: 在服务器上配置资源, 然后通过统一的方式来获取配置的资源. 这里需要配置的资源是连接池. 2. 获取资源 参考资料: "Jav
阅读全文
摘要:1. 概念 数据库连接池用来管理 Connection, 这样可以重复使用 Connection. 有了池, 所以我们就不用自己来创建 Connection 对象, 而是通过池来获取 Connection 对象. 当使用完 Connection 后, 调用 Connection 的 close()
阅读全文
摘要:1. 对象增强的手段 继承 装饰者模式 动态代理(AOP) 2. 继承 2.1 特点 增强的内容是固定的. 被增强的对象也是固定的. 3. 装饰者模式 3.1 特点 增强的内容是固定的. 被增强的对象可以是任意的. 3.2 使用场景 1. 不知道被增强对象的具体类型时,可以使用!! 2. 是你还有你
阅读全文
摘要:什么是事务? 事务就是逻辑上的一组操作,组成事务的各个执行单元,操作要么全部成功,要么全部失败. 以转账为例: 张三给李四转账,张三扣1000,李四加1000; 加钱和扣钱两个操作组成了一个事务. 1. 事务的四大特性 原子性(Atomicity): 事务中所有操作是不可再分割的原子单位. 事务中所
阅读全文
摘要:1. 批处理 批处理只针对更新(增,删,改)语句. MySql 的批处理默认是关闭的, 需要在 url 中配置参数: 2. PreparedStatement 批处理 PreparedStatement 对象内部有集合. 使用循环疯狂的向 pstmt 中添加 sql 参数, 使用一组参数与模板就可以
阅读全文
摘要:1. 什么是大数据 1. 所谓大数据, 就是大的字节数据,或大的字符数据. 2. 标准 SQL 中提供了如下类型来保存大数据类型: 字节数据类型: 字符数据类型: 3. MySql 中处理字符的数据类型名称与 SQL 标准不同: 字符数据类型: // 示例: 把 mp3 保存到数据库中 // 需要在
阅读全文
摘要:Java 中的类型 1. java.sql 包下给出三个数据库相关的日期时间类型,分别是 , 表示日期,只有年月日,没有时分秒. , 表示时间, 只有时分秒,没有年月日. , 表示时间戳,有年月日时分秒,以及毫秒. 2. java.util 包下给出的三个与时间相关的类型, 分别是: , 表示日期,
阅读全文
摘要:1. DAO 模式 DAO 模式就是写一个类,把访问数据库的代码封装起来. DAO 在数据库与业务逻辑(Service)之间. 换句话说, java.sql 包下的内容不能出现在 DAO 层以外. 实体域, 即操作的对象, 例如我们操作的表是 user 表, 那么就需要写一个 User 类; DAO
阅读全文
摘要:1. JDBC 简介 JDBC (Java DataBase Connectivity) 就是 Java 数据库连接, 说白了就是用 Java 语言向 数据库发送 SQL 语句. JDBC 其实是访问数据库的规范(就是一组接口). 而驱动就是该接口的实现类. 2. java 代码操作数据库步骤: 导
阅读全文
摘要:1. 多表查询分类: 合并结果集(了解) 连接查询 子查询 2. 合并结果集 要求被合并的表中, 列的类型和列数相同. : 去除重复行. : 不去除重复行. 3. 连接查询(一次查询多张表) 1. 分类: 内连接 外连接(左外连接, 右外连接, 全外连接(MySQL 不支持)) 自然连接(属于一种简
阅读全文
摘要:约束是添加在列上, 用来约束列的! 1. 主键约束(表中的某行的唯一标识) 1. 主键的特点: 非空 唯一 被引用 2. 创建表时, 指定主键的两种方式: 3. 修改表时,指定主键: 4. 删除主键: 2. 主键自增长 1. 因为主键列的特性是: 必须唯一, 不能为空, 所以我们通常会指定主键类型为
阅读全文
摘要:1. 数据库导出 SQL 脚本 1. 示例: 备份的是数据库内容, 不是备份数据库. 末尾不要打分号, 不要登录mysql, 直接在 bin 目录下运行. 生成的脚本文件中不包含 create database 语句. 2. 导入 SQL 脚本 前提: 进入 mysql 的bin目录: 1. 第一种
阅读全文
摘要:1. 查看 MySql 数据库编码 2. 编码解释 : MySQL 使用该编码来解读客户端发送过来的数据. : MySQL 会把数据转换成该编码后, 再发送给客户端. 参考资料: "JavaWeb 视频教程"
阅读全文
摘要:1. SQL 语言概述 SQL : 结构化查询语言, Structured Query Language; SQL 的作用: 客户端使用 SQL 来操作服务器; SQL 标准, 对 DBMS 的同一操作方式; SQL 方言, 某种 DBMS 自己所独有的语法. 例如, limit 语句只在 MySQ
阅读全文