搜档网
当前位置:搜档网 › mybatis第一天课堂笔记

mybatis第一天课堂笔记

mybatis第一天课堂笔记
mybatis第一天课堂笔记

mybatis 第一天mybatis的基础知识

课程安排:

mybatis和springmvc通过订单商品案例驱动

第一天:基础知识(重点,内容量多)

对原生态jdbc程序(单独使用jdbc开发)问题总结

mybatis框架原理(掌握)

mybatis入门程序

用户的增、删、改、查

mybatis开发dao两种方法:

原始dao开发方法(程序需要编写dao接口和dao实现类)(掌握)

mybaits的mapper接口(相当于dao接口)代理开发方法(掌握)mybatis配置文件SqlMapConfig.xml

mybatis核心:

mybatis输入映射(掌握)

mybatis输出映射(掌握)

mybatis的动态sql(掌握)

第二天:高级知识

订单商品数据模型分析

高级结果集映射(一对一、一对多、多对多)

mybatis延迟加载

mybatis查询缓存(一级缓存、二级缓存)

mybaits和spring进行整合(掌握)

mybatis逆向工程

1对原生态jdbc程序中问题总结

1.1环境

java环境:jdk1.7.0_72

eclipse:indigo

mysql:5.1

1.2创建mysql数据

sql_table.sql:记录表结构

sql_data.sql:记录测试数据,在实际企业开发中,最后提供一个初始化数据脚本

1.3jdbc程序

使用jdbc查询mysql数据库中用户表的记录。

创建java工程,加入jar包:

数据库驱动包(mysql5.1)

上边的是mysql驱动。

下边的是oracle的驱动。

程序代码:

1.4问题总结

1、数据库连接,使用时就创建,不使用立即释放,对数据库进行频繁连接开启和关闭,造成数据库资源浪费,影响数据库性能。

设想:使用数据库连接池管理数据库连接。

2、将sql语句硬编码到java代码中,如果sql 语句修改,需要重新编译java代码,不利于系统维护。

设想:将sql语句配置在xml配置文件中,即使sql变化,不需要对java代码进行重新编译。

3、向preparedStatement中设置参数,对占位符号位置和设置参数值,硬编码在java代码中,不利于系统维护。设想:将sql语句及占位符号和参数全部配置在xml中。

设想:将查询的结果集,自动映射成java对象。

2mybatis框架

2.1mybatis是什么?

mybatis是一个持久层的框架,是apache下的顶级项目。

mybatis托管到goolecode下,再后来托管到github下(https://https://www.sodocs.net/doc/7718213562.html,/mybatis/mybatis-3/releases)。

mybatis让程序将主要精力放在sql上,通过mybatis提供的映射方式,自由灵活生成(半自动化,大部分需要程序员编写sql)满足需要sql语句。

mybatis可以将向preparedStatement中的输入参数自动进行输入映射,将查询结果集灵活映射成java对象。(输出映射)

2.2mybatis框架

3 入门程序

3.1 需求

根据用户id (主键)查询用户信息 根据用户名称模糊查询用户信息 添加用户

更新用户

3.1环境

java环境:jdk1.7.0_72

eclipse:indigo

mysql:5.1

mybatis运行环境(jar包):

从https://https://www.sodocs.net/doc/7718213562.html,/mybatis/mybatis-3/releases下载,3.2.7版本

lib下:依赖包

mybatis-3.2.7.jar:核心包

mybatis-3.2.7.pdf,操作指南

加入mysql的驱动包

3.2log4j.properties

3.3工程结构

3.4SqlMapConfig.xml

配置mybatis的运行环境,数据源、事务等。

3.5根据用户id(主键)查询用户信息

3.5.1创建po类

3.5.2映射文件

映射文件命名:

User.xml(原始ibatis命名),mapper代理开发映射文件名称叫XXXMapper.xml,比如:UserMapper.xml、ItemsMapper.xml

在映射文件中配置sql语句。

3.5.3在SqlMapConfig.xml加载映射文件在sqlMapConfig.xml中加载User.xml:

3.5.4程序编写

3.6根据用户名称模糊查询用户信息

3.6.1映射文件

使用User.xml,添加根据用户名称模糊查询用户信息的sql语句。

3.6.2程序代码

3.7添加用户

3.7.1映射文件

在User.xml中配置添加用户的Statement

3.7.2程序代码

3.7.3自增主键返回

mysql自增主键,执行insert提交之前自动生成一个自增主键。通过mysql函数获取到刚插入记录的自增主键:

LAST_INSERT_ID()

是insert之后调用此函数。

修改insertUser定义:

3.7.4非自增主键返回(使用uuid())

使用mysql的uuid()函数生成主键,需要修改表中id字段类型为string,长度设置成35位。

执行思路:

先通过uuid()查询到主键,将主键输入到sql语句中。

执行uuid()语句顺序相对于insert语句之前执行。

通过oracle的序列生成主键:

SELECT 序列名.nextval()

insert into user(id,username,birthday,sex,address) value(#{id},#{username},#{birthday},#{sex},#{address})

3.8.1映射文件

3.8.2代码:

3.9.1映射文件

3.9.2代码

3.10总结

3.10.1p arameterType

在映射文件中通过parameterType指定输入参数的类型。

3.10.2r esultType

在映射文件中通过resultType指定输出结果的类型。

3.10.3#{}和${}

#{}表示一个占位符号,#{}接收输入参数,类型可以是简单类型,pojo、hashmap。

如果接收简单类型,#{}中可以写成value或其它名称。

#{}接收pojo对象值,通过OGNL读取对象中的属性值,通过属性.属性.属性...的方式获取对象属性值。

${}表示一个拼接符号,会引用sql注入,所以不建议使用${}。

${}接收输入参数,类型可以是简单类型,pojo、hashmap。

如果接收简单类型,${}中只能写成value。

${}接收pojo对象值,通过OGNL读取对象中的属性值,通过属性.属性.属性...的方式获取对象属性值。

3.10.4s electOne和selectList

selectOne表示查询出一条记录进行映射。如果使用selectOne可以实现使用selectList也可以实现(list中只有一个对象)。

selectList表示查询出一个列表(多条记录)进行映射。如果使用selectList查询多条记录,不能使用selectOne。

如果使用selectOne报错:

org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 4

3.11mybatis和hibernate本质区别和应用场景

hibernate:是一个标准ORM框架(对象关系映射)。入门门槛较高的,不需要程序写sql,sql语句自动生成了。对sql语句进行优化、修改比较困难的。

应用场景:

适用与需求变化不多的中小型项目,比如:后台管理系统,erp、orm、oa。。

mybatis:专注是sql本身,需要程序员自己编写sql语句,sql修改、优化比较方便。mybatis是一个不完全的ORM 框架,虽然程序员自己写sql,mybatis 也可以实现映射(输入映射、输出映射)。

应用场景:

适用与需求变化较多的项目,比如:互联网项目。

企业进行技术选型,以低成本高回报作为技术选型的原则,根据项目组的技术力量进行选择。

4mybatis开发dao的方法

4.1SqlSession使用范围

4.1.1SqlSessionFactoryBuilder

通过SqlSessionFactoryBuilder创建会话工厂SqlSessionFactory

将SqlSessionFactoryBuilder当成一个工具类使用即可,不需要使用单例管理SqlSessionFactoryBuilder。

在需要创建SqlSessionFactory时候,只需要new一次SqlSessionFactoryBuilder即可。

4.1.2SqlSessionFactory

通过SqlSessionFactory创建SqlSession,使用单例模式管理sqlSessionFactory(工厂一旦创建,使用一个实例)。

将来mybatis和spring整合后,使用单例模式管理sqlSessionFactory。

4.1.3SqlSession

SqlSession是一个面向用户(程序员)的接口。

SqlSession中提供了很多操作数据库的方法:如:selectOne(返回单个对象)、selectList(返回单个或多个对象)、。SqlSession是线程不安全的,在SqlSesion实现类中除了有接口中的方法(操作数据库的方法)还有数据域属性。SqlSession最佳应用场合在方法体内,定义成局部变量使用。

4.2原始dao开发方法(程序员需要写dao接口和dao实现类)

4.2.1思路

程序员需要写dao接口和dao实现类。

需要向dao实现类中注入SqlSessionFactory,在方法体内通过SqlSessionFactory创建SqlSession

4.2.2dao接口

4.2.3dao接口实现类

public class UserDaoImpl implements UserDao {

// 需要向dao实现类中注入SqlSessionFactory

// 这里通过构造方法注入

private SqlSessionFactory sqlSessionFactory;

public UserDaoImpl(SqlSessionFactory sqlSessionFactory) {

}

@Override

public User findUserById(int id) throws Exception {

SqlSession sqlSession = sqlSessionFactory.openSession();

User user = sqlSession.selectOne("test.findUserById", id);

// 释放资源

sqlSession.close();

return user;

}

@Override

public void insertUser(User user) throws Exception { SqlSession sqlSession = sqlSessionFactory.openSession();

//执行插入操作

sqlSession.insert("test.insertUser", user);

// 提交事务

https://www.sodocs.net/doc/7718213562.html,mit();

// 释放资源

sqlSession.close();

}

@Override

public void deleteUser(int id) throws Exception {

SqlSession sqlSession = sqlSessionFactory.openSession();

//执行插入操作

sqlSession.delete("test.deleteUser", id);

// 提交事务

https://www.sodocs.net/doc/7718213562.html,mit();

// 释放资源

sqlSession.close();

}

}

4.2.4测试代码:

4.2.5总结原始dao开发问题

1、dao接口实现类方法中存在大量模板方法,设想能否将这些代码提取出来,大大减轻程序员的工作量。

2、调用sqlsession方法时将statement的id硬编码了

3、调用sqlsession方法时传入的变量,由于sqlsession方法使用泛型,即使变量类型传入错误,在编译阶段也不报错,不利于程序员开发。

4.3mapper代理方法(程序员只需要mapper接口(相当于dao接

口))

4.3.1思路(mapper代理开发规范)

程序员还需要编写mapper.xml映射文件

程序员编写mapper接口需要遵循一些开发规范,mybatis可以自动生成mapper接口实现类代理对象。

开发规范:

1、在mapper.xml中namespace等于mapper接口地址

2、mapper.java接口中的方法名和mapper.xml中statement的id一致

3、mapper.java接口中的方法输入参数类型和mapper.xml中statement的parameterType指定的类型一致。

4、mapper.java接口中的方法返回值类型和mapper.xml中statement的resultType指定的类型一致。

总结:

以上开发规范主要是对下边的代码进行统一生成:

User user = sqlSession.selectOne("test.findUserById", id);

sqlSession.insert("test.insertUser", user);

。。。。

4.3.2mapper.java

4.3.3mapper.xml

4.3.4在SqlMapConfig.xml中加载mapper.xml

4.3.5测试

4.3.6一些问题总结

4.3.6.1代理对象内部调用selectOne或selectList

PS课堂笔记

巴洛克----------------艺术流派 威廉.莫里斯------代设计理论开创者 达达主义--- 构成主义--------李捷斯基(俄国),形象美,节奏美,抽象美,开创现代版面构成先河 包豪斯(德国格罗佩斯创立包豪斯学校) 版式设计功能:1.作为信息发布的重要媒介 2.让读者通过版面的阅读产生美的遐想与共鸣,让设计师的观点与涵养进入读者的心灵。 文字的编排与设计:有效的形式语言与表现手段 基本要素:书眉+页码标题(位置,强度)引文(内容提要,引向正文)中标题,小标题(正文的向导)正文(版面构成的设计基础)注释,图版说明,解说词(版面变化的技巧) 文字群体的四中特性:字体字的大小,变形字距,字母间距行距 文字群体的四种类型:左右均取齐行首取齐,行尾听其自然中间取齐饶图排文 版式纸:栏(网格)竖排(通栏,双栏,三栏,四栏)横排(同上)栏的突破 图版的编排与设计:视觉效果,导读效果 版式设计的原则:图的面积(显示其重要程度)/数量(阅读兴趣的影响)/形式(方形图版,出血图版,退底图版,化网图版,特殊图版,绘制图形)/组合(块状组合,散点组合,)/位置(关系到版面的构图布局)/方向(方向强弱的视觉攻击) 版式造型原理:对比(大小,质感,直线和曲线,明暗,位置,动与静)均衡(平衡,融合----统一,主与从----明确基本主从关系,导线----脸的方向与形体方向)对称(强调中心是高格调的表现)节奏(重复产生的形状)比例(支配形象的程度,向心扩散---寻找中心,形态的形象---锐角,直角正与负----造成不寻常的空间,水平线----静止时间的表现,垂直线-------坚硬的形象,斜线-----动感,)重点() 构成种类:上下左右(黑白相间由大到小—蜗形)中心分割对角远近

敬伟PS学习笔记

制作文化衫 填充前景色的快捷键Alt+Delete 填充背景色的快捷键Ctrl+Delete 蚂蚁线内的区域叫做选区按住shift键画椭圆时画出的是正圆 做填充时候也要新建一个图层 简单的合成(抠图换背景) 快速选择工具 放大Ctrl+ 缩小Ctrl- 平移空格键 撤销上一步Ctrl+Alt+z 返撤销上一步shift+Alt+z 先用较小的比例来画,放大了处理一些边缘。 快捷键Alt键可以快速的将添加模式切换为减去模式 调整优化选区调整边缘平滑7 羽化2 对比度12 移动边缘-24 输出到新建图层 调整图片的大小编辑自由变换按住shift来调整图片的大小不会使比例走形 换脸 在图层蒙版里面白色代表显示,黑色代表消失在蒙版里面也可以选定一个区域填充白色或黑色让它显示或消失编辑》自由变换》可以改变图片的大小与方向 把不透明度调低一点来调整图片的大小与角度 擦脸的时候画笔硬度0要选择比较软的画笔 色 RGB颜色模式(红绿蓝) 夏天变秋天图像》调整》色相|饱和度把绿色的色相变为黄色 画优酷图标 描边是从边缘向里面延伸的宽度 画有颜色的三角形圆形矩形用形状工具 居中的时候把所有的全选然后点击两个居中 画圆环的时候用描边工具画实心圆的时候用填充工具 复制:拖拽这个图层到新建图层的图标上 W和H之间的图标是用来锁定长宽比例的 高光+蒙版+黑白渐变工具做出立体的感觉 黑白渐变:从黑到白的渐变就是一个从遮挡到不遮挡的一个过程 渐变工具+shift键可以画一个垂直方向的渐变 画两个同心圆环(小圆环在大圆环里面)的方法:1画出第一个再复制它2改变大小再做两个对齐3改变描边的大小 海报 网页的头图大海报,950x480像素 做彩带的步骤:先缩小文档再用椭圆工具填充,再移动椭圆,按delete键删除重合的那一部分,可以使用自由变换工具调整一下彩带。按住Alt键再复制一条,然后使用填充改变一下他的颜色。填充的时候按一下锁定后面的第一个按钮,就可以只填充这个蓝色条,否则就

mybatis面试题

1、Mybatis基础: #{...} 和${...} 的区别 MyBatis将#{…} 解释为JDBC prepared statement 的一个参数标记。而将${…} 解释为字符串替换。理解这两者的区别是很有用的, 因为在某些SQL语句中并不能使用参数标记(parameter markers)。 比如,我们不能在表名(table name)的位置使用参数标记。 假设有下面的代码: 01.Mapparms = new HashMap(); 02.parms.put("table", "foo"); // 表名 03.parms.put("criteria", 37); // 查询过滤条件 04.List rows = mapper.generalSelect(parms); 01. MyBatis生成的SQL语句(prepared statement)如下所示: 01.select * from foo where col1 = ? 重要提示: 请注意,使用$ {…} (字符串替换)时可能会有SQL注入攻击的风险。另外,字符串替换在处理复杂类型也可能常常发生问题,如日期类型。由于这些因素,我们建议您尽可能地使用#{…} 这种方式。 要使用LIKE语句该怎么写? 2、有两种使用LIKE的方法。(推荐使用)第一种方法是,在Java代码中添加SQL通配符。 示例一: 01.StringwildcardName = "%Smi%"; 02.List names = mapper.selectLike(wildcardName); 01.

云计算教学笔记

云计算 1云计算相关概念 云计算概念是由Google提出的,这是一个美丽的网络应用模式。狭义云计算是指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需的资源;广义云计算是指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需的服务。这种服务可以是IT和软件、互联网相关的,也可以是任意其他的服务,它具有超大规模、虚拟化、可靠安全等独特功效 定义 长定义是:“云计算是一种商业计算模型。它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。” 短定义是:“云计算是通过网络按需提供可动态伸缩的廉价计算服务。” ? 计算资源包括:CPU运算资源、存储资源、网络带宽等 云计算是并行计算、分布式计算和网格计算的发展,是这些计算机科学概念的商业实现。 云计算是虚拟化(Virtualization)、效用计算(Utility Computing)、IaaS(基础设施即服务)、PaaS(平台即服务)、SaaS(软件即服务)等概念混合演进并跃升的结果。 2云计算特点 超大规模:服务器群 虚拟化:可以看作是一片用于计算的云 高可靠性:冗余副本、负载均衡 通用性:支撑千变万化的实际应用 高可扩展性:灵活、动态伸缩 按需服务:按需购买 极其廉价:不再需要一次性购买超级电脑 安全:摆脱数据丢失、病毒入侵 方便:支持多终端、数据共享 (1) 超大规模。“云”具有相当的规模,Google云计算已经拥有100多万台服务器,Amazon、IBM、微软、Yahoo等的“云”均拥有几十万台服务器。企业私有云一般拥有数百上千台服务器。“云”能赋予用户前所未有的计算能力。 (2) 虚拟化。云计算支持用户在任意位置、使用各种终端获取应用服务。所请求的资源

企业级JAVA高级开发技术实战

关于举办企业级JAVA高级开发技术实战 培训班的通知 一、培训收益 通过此次课程培训,可使学习者获得如下收益: 1.掌握JavaSE的异常处理方法; 2.掌握多线程基础知识; 3.掌握IO系统、网络编程、Java反射机制、JVM性能调优; 4.理解JavaEE,EJB、JMS,Java语言的高级特征; 5.了解GoF的设计模式、Spring AOP、WebService与CXF。 二、培训特色 1.理论与实践相结合、案例分析与行业应用穿插进行; 2.专家精彩内容解析、学员专题讨论、分组研究; 3.通过全面知识理解、专题技能和实践结合的授课方式。

四、授课专家 刘老师有15年JAVA开发经验,9年授课经验. 精通J2EE多层架构和多种设计模式,熟悉Struts、MyBatis、Hibernate、Spring、Spring MVC、Android、H5、Jquery Mobile、AngularJS、Bootstrap等多种开源框架, 对源码有一定的理解. 熟悉 WebLogic, JBoss 容器并发集群的使用, 熟悉WebService、CXF、RESFul、UML、SVN、EasyUI、Flex、Lucene 等技术。长期专注于J2EE系统的分析与设计,亲身参与多个J2EE项目研发和应用系统升级,并主导系统架构设计,有着丰富的系统分析设计工作经验 张老师天津大学软件工程硕士,10多年的IT领域相关技术研究和项目开发工作,在长期软件领域工作过程中,对软件企业运作模式有深入研究,熟悉软件质量保障标准ISO9003和软件过程改进模型CMM/CMMI,在具体项目实施过程中总结经验,有深刻认识。通晓多种软件设计和开发工具。对软件开发整个流程非常熟悉,能根据项目特点定制具体软件过程,并进行项目管理和监控,有很强的软件项目组织管理能力。对C/C++ 、HTML 5、Hadoop、java、java EE、android、IOS、大数据、云计算有比较深入的理解和应用,具有较强的移动互联网应用需求分析和系统设计能力,熟悉Android框架、IOS框架等技术,了解各种设计模式,能在具体项目中灵活运用。 龚老师企业级J2EE专家,博士,北京理工大学软件研究所计算机应用技术专业。在软件行业工作近二十年,近50多个大中型项目的主持、管理、开发经验。主要学术成果: 近年来先后在国内外重要刊物发表论文20多篇,多篇被EI收录,出版著作4部。参与完成自然科学基金项目2项,参与纵向课题5项,主持横向科研项目5项。

传智播客 十天PS公开课课堂笔记

疯狂十天PS公开课课堂笔记分享 第一天: 界面构成 1 菜单栏 2 工具箱 3 工具属性栏 4 悬浮面板 5 画布 ctrl + N 新建对话框(针对画布进行设置) 打开对话框:ctrl + O (字母) 画布三种显示方式切换:F 隐藏工具箱,工具属性栏,悬浮面板:TAB 缩放工具:Z 切换到: 暂时切换到 满画面显示:ctrl + 0 (数字) 按住空格:暂时切换到抓手(移动画布) LOGO:标志 效果分析思路: 1 构图 2 配色 网格:ctrl + " (参考线的单位,必须和画面的单位统一) 调节网格大小:ctrl +K (首选项) ---- ctrl + 6 (参考线网格和切片)调出辅助线:ctrl +R(标尺) --- 鼠标左键按住拖拽得到辅助线

移动工具:V 选区:控制操作的范围。 ctrl + TAB: 切换当前软件中所打开的画布。 规则选区: 矩形选框工具(椭圆选框工具)M 调出隐藏工具的方法:在相应有隐藏工具的工具上--- 按鼠标右键调出。1:用shift可以约束到正方形or 正圆。 2:以鼠标落点为中心:alt 1 + 2 = 绘制以鼠标落点为中心正方形or 正圆。 快捷键切换隐藏工具:shift + 相应工具的快捷键 前景色:alt + 回格(退格) 背景色:ctrl+ 回格 恢复到默认的前景色背景色:D 前景色和背景色之间进行切换:X ctrl + alt + Z: 撤销操作 取消选择:ctrl + D 隐藏辅助线:ctrl + ; 裁剪工具:C 色彩的三大要素:色相,饱和度,明度。 第二天: 新建图层的快捷键: ctrl + shift + alt + N 切换隐藏工具: shift + 相应工具组的快捷键。 删除图层的方法: 1 :直接拖拽要删除的图层到图层面板右下角的垃圾桶位置,直接删除。

新手photoshop知识归纳总结 笔记一(初学者的宝典)

一、快捷键 全部快捷键 Ctl+鼠标左键移动选定区域 Ctl+A选择整体图片 Ctl+B 色彩平衡 Ctl+D 取消选择 Ctl+E 向下合并一个图层 Ctl+F 重复使用上一个滤镜 Ctl+J 复制图层 Ctl+L 色阶 Ctl+N 新建文件 Ctl+O 打开 Ctl+T 自由变换 Ctl+shfit+I 反选 Ctl+shfit+D 反选 Ctl+shfit+N 新建透明图层 Ctl+shfit+E 合并可见图层 Ctl+Shift+T 复制一个选区内容并变换选区 Ctl+U 色相/饱和度 Ctl+R 调出标尺 Ctl+I 反向 Ctl+“+”放大屏幕图像(等同于Ctl+空格,配合鼠标)Ctl+“-”缩小屏幕图像(等同于Alt+空格,配合鼠标)Ctl+【当前图层上翻一页 Ctl+】当前图层上翻一页 Ctl+Enter 将路径变为选区 Ctl+shift+Alt+B 调整为黑白模式 Alt+Delete 填充前景色 Ctl +Delete 填充背景色 Ctl+Alt+A羽化 Ctl+Alt+Z 多步返回 Ctl+Alt+W 关闭全部窗口 Ctl+shift+M 进入IR中编辑 Shift+E 向下合并一个图层 Shift+Tab 隐藏出工具栏外的所有调板 Ctl+1 红通道 Ctl+2 绿通道 Ctl+3 蓝通道 快捷键整理

选择:Ctl+A选择整体图片 Ctl+D 取消选择 Ctl+shfit+I 反选 Ctl+Alt+~ 选择高光区域 Ctl+Alt+0 显示照片的实际尺寸 Ctl+Alt+鼠标拖动复制当前层或选取内容 Ctl+shfit+ Alt+E 实现印盖命令 单键键整理 Home 定位图片左上角 End 定位图片右下角 Pg up/dn 将定位上翻和下翻 A路径选择 B 画笔 C 剪裁 D 默认前景和背景 E 画笔 F 窗口放大和缩小 G 油漆桶 H 抓手工具 I 取样点 J 橡皮擦 K 切片 L 套索 M 羽化 N 注释工具 O 加深或减淡 P 钢笔(caps lock 可以出现十字定位光标) Q 快速进入/退出模板 R 模糊和锐化 S 图章 T 文字 U 度量 V 移动 W 魔术棒 X 前景和背景互换 Y历史画笔 Z 放大或缩小 二、概念论述 图像的模式? 灰度模式:扔掉颜色信息的一种模式,是有损的。

对PHOTOSHOP的整体认识

对PHOTOSHOP的整体认识 Photoshop是一个平面的二维的图像合成软件,“合成”就是在已有的素材基础上进行艺术再加工。PHOTOSHOP不是用来画画的,如果有一个教程说用它来画一个蜻蜓,你看都不要看,因为没有意义。画得再逼真,也不如拿相机去拍一张好了。PHOTOSHOP最强大的在于它的合成与再加工。 开PHOTOSHOP软件之前要知道三个问题:颜色,分辨率,图层。 2、光与色及色彩模式 颜色的三个属性:色相,也称为色彩相貌,色彩名称,英文缩写是H;饱和度,也称为纯度,英文缩写是S;明度,英文缩写是B。除了HSB模式,PS的色彩模式还有RGB,CMY等。 饱和度与明度都是按百分比来划分的,S是按度数划分的。 每种颜色模式都有一个对应的媒介,HSB模式对应的媒介就是人眼的感受细胞,是基于人眼视觉接受体系的一个色彩空间描述。RGB(红绿蓝,光的三原色)对应的媒介是光色,发光物体。CMY(青品[也称为

品红或洋红]黄,色[印刷]的三原色)模式对应的是油墨的印刷色。 黑色白色是没有色相的,要想在黑白色上着色,只能调成灰度才成,只有灰度的才有色相的变化。 黑色的RGB数值是:0,0,0;白色的是:255,255,255,我们把三个颜色值的最大值255,255,255得到一个白光称为加色模式。即RGB是加色模式。 三个色值相同的是灰色,数量越低越是深灰,越高越是浅灰。 CMY是用百分比来表现颜色的浓淡。 白色的CMY色值是0,0,0;理论上黑色的是100,100,100。 实际上油墨不可能合成黑色的。因此单生产一种油墨是纯黑色的,用K来表示。所以实际的黑色的CMYK 色值是0,0,0,100。CMY模式是三个色值的最大值勤得到一个黑色,这称之为减色模式。 RGB是加色模式。CMY是减色模式。两个加色相加得到一个减色。 对立的两个颜色称之为互补色。如:红与青,绿与品,蓝与黄。互补色会互相完全吸收对方。

ps课堂笔记总结

一、Photoshop 1、由美国Adobe公司生产的专业图像处理及图像合成软件 二、基本术语 1、图像与图形 -图像:由像素点组成 分辨率:表示像素的密度 (网页,显示器)72像素/英寸,300像素/英寸(平面设计、打印)-图形:由数学公式表示的线条 特点:放大后清楚 矢量图制作软件:illustrator 2、颜色模式 -一种模式对应一种媒介 -HSB:基于人眼 H:表示色向 S:表示饱和度 B:表示明暗度 -RGB:基于显示器、发光体 R:红、G:绿、B:蓝 三原色分别有0~255种级别的强弱 红=绿=蓝0 黑255 白其它不同级别的灰 255最大级的情况下:红+绿=?红+蓝=?绿+蓝=?

-CMYK:基于油墨 洋红、黄、青三种油墨K表示黑色 三、启动软件 四、界面介绍 1、标题栏 2、工具栏(放置常用工具) 3、属性栏(不同工具属性不同) 4、工作区 缩放:Ctrl+加号/减号 抓手:空格+拖动鼠标(移动视图) 5、浮动面板 窗口/工作区/……还原默认工作区 6、常用快捷键 -Tab:显示及隐藏工具栏和浮动面板 -F:全屏切换 五、选区、图层、蒙板?** 1、选区:选框以内,注:所有操作均在选区内实现 2、图层:上下层叠关系的透明纸张 注:有在新层中作图的好习惯 3、蒙板:选区以外为蒙板 ——————————————————————————————————一、文件命令 1、新建

设置对应的纸张大小、颜色模式等 2、打开 直接将文件拖入窗口中即可打开 双击界面空白处选择文件进行打开 3、保存文件 常见格式: PSD:PS源文件,默认格式,信息全,方便于备份 Jpg:通用有损压缩格式 Tif:质量好,信息全,适用于要求高的作品 Png:质量好,支持透明 二、选区的创建* 技巧: 配合Shift定比例、配合Alt定中心、配合空格固化1、规则类 -矩形、椭圆形、单行、单列 拖动即可创建 2、不规则类 -套索工具组 *套索工具:拖动鼠标任意绘制选区 *多边形套索工具:单击定点连直线、双击首尾迸连 Detele:删除最近点、ESC:取消所有 注:配合缩放和抓手工具进行抠图

mybatis中文版教程

MyBatis Spring1.0.0-RC3 参考文档 MyBatis 社区(https://www.sodocs.net/doc/7718213562.html,) Copyright ? 2010 本文档的拷贝仅允许您个人使用或分发给其他用户,但是不能收取任何费用,后期的发布无论是印刷版或电子版,也会进行版权声明。 本文档由南磊(nanlei1987@https://www.sodocs.net/doc/7718213562.html,)翻译

目录 第一章介绍 (3) 1.1 整合动机 (3) 1.2 要求 (3) 1.3 感谢 (3) 第二章入门 (4) 2.1 安装 (4) 2.2 快速创建 (4) 第三章SqlSessionFactoryBean (6) 3.1 创建 (6) 3.2 属性 (6) 第四章事务 (8) 4.1 标准配置 (8) 4.2 容器管理事务 (8) 第五章使用SqlSession (9) 5.1 SqlSessionSupport (9) 5.2 SqlSessionTemplate (9) 第六章MapperFactoryBean (11) 6.1 创建 (11) 6.2 注入映射器 (11) 6.3 自动配置 (12) 第七章使用MyBatis API (13) 第八章示例代码 (14)

第一章介绍 1.1 整合动机 正如第二版,Spring仅支持iBatis2。那么我们就想将MyBatis3的支持加入到Spring3.0(参考Spring的Jira的问题)中。不幸的是,Spring 3.0的开发在MyBatis 3.0官方发布前就结束了。因为Spring开发团队不想发布一个基于非发行版的MyBatis的整合支持,那么Spring 官方的支持就不得不等到至少3.1版本了。要在Spring中支持MyBatis,MyBatis社区认为现在应该是自己团结贡献者和有兴趣的人一起来开始进行Spring和MyBatis整合的时候了。 这个小类库就来创建丢失的粘贴Spring和MyBtatis这两个流行框架的胶水。减少用户不得不来配置MyBatis和Spring 3.X上下文环境的样板和冗余代码。它还透明地增加了Spring 对MyBatis事务的支持。 1.2 要求 在开始阅读本手册之前,很重要的一点是你要熟悉Spring和MyBatis这两个框架还有和它们有关的术语,本手册不会提供二者的背景内容,基本安装和配置教程。 和MyBatis一样,MyBatis-Spring也需要Java 5或更高版本。 1.3 感谢 非常感谢那些使得本项目成为现实的人们(按字母顺序排序)。Eduardo Macarron,Hunter Presnall和Putthibong Boonbong的编码工作,测试和文档修改;Andrius Juozapaitis,Giovanni Cuccu,Raj Nagappan和Tomas Pinos的贡献;而Simone Tripodi发现了这些人并把他们带入项目之中。没有他们的努力,这个项目是不可能存在的。

MyBatis学习 之三动态SQL语句

MyBatis学习之三动态SQL语句 三、动态SQL语句 MyBatis学习之一、MyBatis简介与配置MyBatis+Spring+MySql MyBatis学习之二、SQL语句映射文件(1)resultMap MyBatis学习之二、SQL语句映射文件(2)增删改查、参数、缓存 MyBatis学习之三、动态SQL语句 MyBatis学习之四、MyBatis配置文件 有些时候,sql语句where条件中,需要一些安全判断,例如按某一条件查询时如果传入的参数是空,此时查询出的结果很可能是空的,也许我们需要参数为空时,是查出全部的信息。使用Oracle的序列、mysql的函数生成Id。这时我们可以使用动态sql。 下文均采用mysql语法和函数(例如字符串链接函数CONCAT)。 3.1 selectKey 标签 在insert语句中,在Oracle经常使用序列、在MySQL中使用函数来自动生成插入表的主键,而且需要方法能返回这个生成主键。使用myBatis的selectKey标签可以实现这个效果。 下面例子,使用mysql数据库自定义函数nextval('student'),用来生成一个key,并把他设置到传入的实体类中的studentId属性上。所以在执行完此方法后,边可以通过这个实体类获取生成的key。 select nextval('student') INSERT INTO STUDENT_TBL(STUDENT_ID, STUDENT_NAME, STUDENT_SEX, STUDENT_BIRTHDAY, STUDENT_PHOTO, CLASS_ID, PLACE_ID) V ALUES (#{studentId}, #{studentName}, #{studentSex}, #{studentBirthday}, #{studentPhoto, javaType=byte[], jdbcType=BLOB, typeHandler=org.apache.ibatis.type.BlobTypeHandler}, #{classId}, #{placeId}) 调用接口方法,和获取自动生成key StudentEntity entity = new StudentEntity(); entity.setStudentName("黎明你好"); entity.setStudentSex(1); entity.setStudentBirthday(DateUtil.parse("1985-05-28")); entity.setClassId("20000001"); entity.setPlaceId("70000001"); this.dynamicSqlMapper.createStudentAutoKey(entity); System.out.println("新增学生ID: " + entity.getStudentId()); selectKey语句属性配置细节: 属性描述取值keyProper ty selectKey 语句生成结果需要设置的属性。 resultTyp e 生成结果类型,MyBatis 允许使用基本的数据类型,包括String 、int 类型。 order 1:BEFORE,会先选择主键,然后设置keyProperty,再执行insert 语句; 2:AFTER,就先运行insert 语句再运行selectKey 语句。 BEFORE AFTER

李涛PS教程(提高篇)整理后笔记

一、画笔 1.理解画笔重要的参数:间距!所有绘画中的线都是用点构成的。形状动态、散度、平滑,是画笔调整面板中使用最广的参数之三。形态中,角度抖动中的根据方向抖动很重要,会根据画笔的方向来抖动。散度,基本上用两轴选项。 2.在使用橡皮图章工具进行修复图片时,为了保持不破坏原始素材,则可以新建图层,然后勾选样本-当前和下方图层,即可在新建的透明图层上绘制了。画笔加橡皮图章工具,可以做出很酷的纹理的效果感。调间距,开形态,定义压力,角度抖动为方向,开散布 3.画笔中,白就是透明的,灰色是半透明度的。 4.图层编组:ctrl+G。曲线,上弦往上拉是亮度,下弦往下是暗度。 5.阴影要做到两层或三层才比较逼真。选中主体形状然后填充黑色,按照需要的光源做斜切和透视,然后利用高斯模糊来虚化。下层阴影高斯模糊小一些,上层大一些。 6.通过正反打对画面主体做聚焦,四角暗淡的做法(突出主体),先做选区,新建调整图层-曲线,上弦曲线打亮主体正打,然后选中蒙版,执行滤镜-模糊-高斯模糊,半径选到最大或是稍微小一点;然后再反打(即变暗),同样曲线命令做下弦,可以选择直接将正打蒙版复制过来,然后ctrl+i反向命令。替换图层蒙版:先选中源蒙版,再按alt建,移动到目标位置。复制+替换:则是先按alt 健。 二、抠像 1.绝大多数是时候,通道是用来抠像的。抠像,大致分三个情况。1st,从清晰轮廓中抠出;2nd,复杂轮廓中抠出;3rd,从半透明中抠出。 2.针对清晰轮廓的抠像方法:上等方法为:用路径+混合剪贴法;中等方法用路径、画笔、调整轮廓灯;下等方法是用选择工具。复杂轮廓:上等方法:通道+混合剪贴法;中等方法是用调整边缘的;下等方法用选择工具。半透明工具:上等方法通道+画笔+混合剪贴法;中等调整边缘;下等方法用选择工具。混合剪贴法可去除时间一切杂边。 3.调整边缘是抽出滤镜的升级啊。所有选择工具都有这条命令。建立选区之后,才能使用调整边缘命令。调整边缘面板,半径是指边缘线的内外半径值。建议打开智能半径,以避免让清晰轮廓处出现半透明状态。平滑,控制线条。在像素低的时候,可以用羽化。减少原片环境光时,可以调低移动边缘命令,叫收边。再勾选净化颜色。可以再黑白通道中,看到细节。灰色显示有半透明的地方(本不该有)则生成带通道的图层蒙版,在蒙版中(按住Alt键进入蒙版编辑模式)用画笔(白色)去修改。修改后删除蒙版,则保存了透明层,然后锁定透明图层,用黑色画笔刷边缘,则可把毛发刷出来。之后,可新建图层,用1px画笔添加头发丝。

黑马程序员mybatis教程第二天:延迟加载

延迟加载 什么是延迟加载 resultMap可以实现高级映射(使用association、collection实现一对一及一对多映射),association、collection具备延迟加载功能。 需求: 如果查询订单并且关联查询用户信息。如果先查询订单信息即可满足要求,当我们需要查询用户信息时再查询用户信息。把对用户信息的按需去查询就是延迟加载。 延迟加载:先从单表查询、需要时再从关联表去关联查询,大大提高数据库性能,因为查询单表要比关联查询多张表速度要快。 使用association实现延迟加载 需求 查询订单并且关联查询用户信息 mapper.xml 需要定义两个mapper的方法对应的statement。 1、只查询订单信息 SELECT * FROM orders 在查询订单的statement中使用association去延迟加载(执行)下边的satatement(关联查询用户信息) 2、关联查询用户信息 通过上边查询到的订单信息中user_id去关联查询用户信息

使用UserMapper.xml中的findUserById 上边先去执行findOrdersUserLazyLoading,当需要去查询用户的时候再去执行findUserById,通过resultMap的定义将延迟加载执行配置起来。 延迟加载resultMap 使用association中的select指定延迟加载去执行的statement的id。

Photoshop教学笔记

第一课 主要内容:Photoshop工作界面、新建画布对话框、文件的管理、矩形选框工具组、图层使用。 相关应用的实例:简易八卦图禁烟标志交通标志 快捷键介绍:Ctrl+N(新建) Ctrl+O(打开) Ctrl+Atl+O( 打开为) Ctrl+S( 存储) Ctrl+Atl+S(存储为) Atl+Delete或Atl+BackSpace(填充前景色) Ctrl+Delete或Ctrl+BackSpace(填充背景色) 一、Photoshop7.0的性质与功能 Photoshop7.0是当前最流行的图像处理类软件 功能:图形绘制、图像处理排版 二、工作界面:标题栏、菜单栏、工具选项栏或工具属性栏、工具箱、浮动面板、状态栏 三画布内容 : 文件→新建(画布Photoshop文档的名称)新建画布对话框。 1.名称:画布名称。 2.图像大小:图像所存储占有空间。 3.预设:画布大小一些预置设定。 自定义:用户自已设定画布大小。 4.高度:画布垂直方向上的大小。 宽度:画布水平方向上的大小。 5.分辨率包括以下几点: 图像分辨率:是指每单位长度显示像素点个数的多少(点阵图与矢量图)。 显示器分辨率:是指单位长度在显示器上能显示像素点个数的多少。 打印机分辨率:指每英寸长度内能喷射墨点个数的多少。 6.模式:色彩的显示方式或颜色的表达方式。 (1)(RGB模式:R红、G绿、B蓝,色光三原色用以屏幕显视 (2)CMYK模式:C青、M洋红、Y黄、K黑色、四色油墨用以打印输出 (3)灰度黑——白(256度灰阶) 7.画布内容 白色 背景色:工具箱中背景色 透明:画布没有像素,默认用灰白的相间的方格表示透明,可以另设(编辑→预设→显示) 三文件菜单 1.新建 2.打开 3.打开为Atl+Ctrl+O用户以指定格式打开文件 4.最近打开文件,列出最近打开过的十个文档。 5.关闭 Ctrl+W 6.存储Ctrl+S 7.存储为Ctrl+Atl+S 8.存储为Wed所用格式 9.恢复:将修改恢复到上一次保存效果,使图像可以重新修改。 10.置入:指其他应用软件的图像如 PDE AI EPS 等格式置入Photoshop. 11.导入:导入PDF图像章注释、WIV支持 12.输出:Photoshop路径转换成Adobe Illustrator软件文件格式。

PS笔记完整版

基本: 1.画布比较小的时候,分辨率改成300而不是70,使画面更精细。 2.1英寸=2.54厘米 30像素/英寸:1英寸长度内包含了30个像素点即1平方英寸内包含了900 个像素点 3.宣传页一般300分辨率。做展板等大东西不要太高分辨率,否则运行慢 4.位图(点阵图)放大会模糊,但是很逼真,矢量图虽然不会模糊但是不逼真 填色: 1.填充前景色的快捷键Alt+Delete或退格 2.选好背景色Ctrl+Delete或退格 3.X键前景色背景色切换 4.D键前景色和背景色回到默认前黑后白 羽化: 1.羽化值必须在划选区之前设置好,已经画好了选区,再换羽化值是没用的,除非用”选择-修改-羽化”(此处为叠加值,即之前如果选了30羽化,这次再选10羽化,那就是40羽化),快捷键shift+F6。 存储选区: 1.点“从选区中减去“按钮,制造月牙 2.移动的时候按着空格(此时移动鼠标,第二选区会移动但不会变大小),松开鼠标会得到月牙 3.“选择-存储选区(alt+s+v)-命名“可以ctrl+D取消选区 4.“选择-载入选区(alt+s+o)”勾选“反相”的话会出现保存的选区的反选 5.Ctrl+shift+I 反选 画笔 1.正片叠底直接在背景上话有叠加效果 2.画笔是前景色 3.颜色替换笔能替换背景图的部分颜色 4.用历史记录画笔可以把图片抹回最初状态 5.历史记录艺术画笔是用照片原本的颜色进行涂抹 图层的复制、自由变化

1.ctrl+r 标尺可以拖动出标尺线 2.shift正圆 alt从圆心开始画圆 3.画第二个圆的时候,鼠标对着圆心,但出现的不是在圆心的圆,这时候先画,在按一次shift+alt,圆 会自动到圆心且为正圆 4.画完可以把标尺导线拉回去(shift+ctrl) 5.创建新图层后在填色不要直接填在背景里 6.拖住往创建图层一放完成复制或者ctrl+j 7.以上是原位复制。移动复制为alt+拖动鼠标 8.自由变换ctrl+t 9.高级复制:原位复制后,点ctrl+t 移动或缩小。按shift+alt+ctrl+t可以按轨迹(移动和缩小的轨迹)复 制多个 仿制图章 1.打开一个图片,编辑-定义图案,就可以把它变成图章,在其他图片上涂抹 画图形 1.移动选区:按住空格调 2.Shift 加选 3.Shift+alt 交集 魔棒 1.容差:色彩的容差,数值越大,容忍色彩差异越大 2.连续:勾选之后只能选取连成一片的,不勾选的话可以选图片上所有的即使分离的块 3.要加选(按shift)的时候,被加选的相较于之前的,与周围色块颜色差异较小时,需要把容差调小 再选 橡皮擦 1.抹到历史记录,则可以还原被擦的 2.背景橡皮擦:选好不想被擦除的(前景)和想被擦除的(背景),选好容差,再擦 吸管 1.右击吸管选标尺拉一条线在图边缘按图像-旋转图像-任意角度把图转回正的(以前是歪的)自由变换 1.ctrl+e 向下合并图层 2.自由变换时可以斜切缩放做立方体 3.变换右键选垂直翻转再调整做倒影(倒影通过调整图层不透明度实现),选择倒影的顶端一部分 做羽化使之更逼真

mybatis教程从入门到精通

mybatis教程从入门到精通 什么是mybatis MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis使用简单的XML或注解用于配置和原始映射,将接口和Java的POJOs(Plan Old Java Objects,普通的Java对象)映射成数据库中的记录. orm工具的基本思想 无论是用过的hibernate,mybatis,你都可以法相他们有一个共同点: 1. 从配置文件(通常是XML配置文件中)得到sessionfactory. 2. 由sessionfactory 产生session 3. 在session 中完成对数据的增删改查和事务提交等. 4. 在用完之后关闭session 。 5. 在java 对象和数据库之间有做mapping 的配置文件,也通常是xml 文件。 mybatis实战教程(mybatis in action)之一:开发环境搭建 mybatis 的开发环境搭建,选择: eclipse j2ee 版本,mysql 5.1 ,jdk 1.7,mybatis3.2.0.jar包。这些软件工具均可以到各自的官方网站上下载。 首先建立一个名字为MyBaits 的dynamic web project 1. 现阶段,你可以直接建立java 工程,但一般都是开发web项目,这个系列教程最后也是web的,所以一开始就建立web工程。 2. 将mybatis- 3.2.0-SNAPSHOT.jar,mysql-connector-java-5.1.22-bin.jar 拷贝到web工程的lib 目录. 3. 创建mysql 测试数据库和用户表,注意,这里采用的是utf-8 编码 创建用户表,并插入一条测试数据 程序代码程序代码 Create TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `userName` varchar(50) DEFAULT NULL, `userAge` int(11) DEFAULT NULL, `userAddress` varchar(200) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8; Insert INTO `user` VALUES ('1', 'summer', '100', 'shanghai,pudong'); 到此为止,前期准备工作就完成了。下面开始真正配置mybatis项目了。 1. 在MyBatis 里面创建两个源码目录,分别为src_user,test_src, 用如下方式建立,鼠标右键点击JavaResource. 2. 设置mybatis 配置文件:Configuration.xml, 在src_user目录下建立此文件,内容如下:

MyBatis基础知识

1、#{}和${}的区别是什么? #{}是预编译处理,${}是字符串替换。 #{}是sql的参数占位符,Mybatis在处理#{}时,会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值; ${}是Properties文件中的变量占位符,Mybatis在处理${}时,就是把${}替换成变量的值。使用#{}可以有效的防止SQL注入,提高系统安全性。 2、MyBatis是如何进行分页的? Mybatis使用RowBounds对象进行分页,它是针对ResultSet结果集执行的内存分页,而非物理分页,可以在sql内直接书写带有物理分页的参数来完成物理分页功能,也可以使用分页插件来完成物理分页。 分页插件的基本原理是使用Mybatis提供的插件接口,实现自定义插件,在插件的拦截方法内拦截待执行的sql,然后重写sql,根据dialect方言,添加对应的物理分页语句和物理分页参数。 举例:select * from student,拦截sql后重写为:select t.* from (select * from student)t limit 0,10 3、在mapper中如何传递多个参数? 第一种:使用#{0},#{1}... mapper层: public selectUser(String username, String password); mapper.xml层: //对应的xml,#{0}代表接收的是dao层中的第一个参数,#{1}代表dao层中第二参数,更多参数一致往后加即可。 第二种:使用@param注解: mapper层: public selectUser(@param("username")String username,@param("password")String password); mapper.xml层: 4、Mybatis都有哪些Executor执行器?它们之间的区别是什么? Mybatis有三种基本的Executor执行器,SimpleExecutor、ReuseExecutor、BatchExecutor。 SimpleExecutor:每执行一次update或select,就开启一个Statement对象,用完立刻关闭Statement对象。

《Photoshop高手之路》视频教程李涛主讲学习笔记

《Photoshop高手之路》李涛·主讲 ——学习笔记 第一讲光和色的关系 <概念> ·photoshop:是一个平面的二维的图像合成软件。 ·合成:在已有的基础上进行艺术的再加工。 ·颜色三属性:色相-色彩名称(相貌),用“H”表示,黑白色无色相;饱和度(纯度)-用“S”表示;明度-用“B”表示。 ·“HSB”颜色模式-基于人眼视觉接受体系的色彩空间的描述。此模式用于调色。 ·“RGB”颜色模式:基于光。红(R)、绿(G)、蓝(B)三色(光的三原色),每个颜色有0-255种显示效果,总共可以显示1678万种颜色显示效果。白色值(255,255,255),黑色值(0,0,0,),三个数值相等时,显示的是灰度色。RGB是加色模式。

是印刷用色,减色模式。白色值(0,0,0,0),黑色值(0,0,0,100)。 <应用> ·色相环中相对的两种色是互补色,互补色之间会完全吸收。 ·RGB调CMY颜色:R+G=Y,G+B=C,R+B=M。 第二讲色彩模式及图像分辨率 <概念> ·lab颜色模式:基于大自然,由一个亮度和两种颜色分量组成,是一种理论推算出来的颜色模式,可能不存在。 ·溢色:CMYK中可以看到但无法被印出来的颜色。 ·像素:构成图像的最小单位,基本单位是1像素,像素是正方形的。 <应用> ·网页图像的像素一般是72ppi(每英寸),即每英寸有5184个像素。印刷图像一般是

·重订图案像素,在显示器上显示,图像尺寸会变化,容量会变化,清晰也会变化。 ·重订图案像素有三种算法:“临近”、“两次线性”、“两次立方”;“临近”算法计算速度最快,“两次立方”算法效果最好,但是灰度图用“临近”算法比“两次立方”算法效果好。 ·常识:印刷作品每个边都要留3毫米的出血。 第三讲通道和蒙版 <概念> ·图层:比喻为一层形象的玻璃纸。 ·通道特点:(1)只有三类颜色:黑、白、灰;(2)在后台工作,影响前台。 ·通道作用:记录颜色信息,红、绿、蓝三个通道每个记录0-255一共256个颜色值,三通道合并后还原图像颜色; ·通道分类:(1)原色通道;(2)Alpha通道;(3)专色通道(印刷图像用)。