自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(0)
  • 资源 (3)
  • 问答 (1)
  • 收藏
  • 关注

空空如也

看透springMvc源代码分析与实践

前言 第一篇 网站基础知识 第1章 网站架构及其演变过程2 1.1 软件的三大类型2 1.2 基础的结构并不简单3 1.3 架构演变的起点5 1.4 海量数据的解决方案5 1.4.1 缓存和页面静态化5 1.4.2 数据库优化6 1.4.3 分离活跃数据8 1.4.4 批量读取和延迟修改8 1.4.5 读写分离9 1.4.6 分布式数据库10 1.4.7 NoSQL和Hadoop10 1.5 高并发的解决方案11 1.5.1 应用和静态资源分离11 1.5.2 页面缓存12 1.5.3 集群与分布式12 1.5.4 反向代理13 1.5.5 CDN14 1.6 底层的优化15 1.7 小结15 第2章 常见协议和标准17 2.1 DNS协议17 2.2 TCP/IP协议与Socket18 2.3 HTTP协议20 2.4 Servlet与Java Web开发22 第3章 DNS的设置23 3.1 DNS解析23 3.2 Windows 7设置DNS服务器24 3.3 Windows设置本机域名和IP的对应关系25 第4章 Java中Socket的用法26 4.1 普通Socket的用法26 4.2 NioSocket的用法28 第5章 自己动手实现HTTP协议33 第6章 详解Servlet37 6.1 Servlet接口37 6.2 GenericServlet40 6.3 HttpServlet41 第7章 Tomcat分析44 7.1 Tomcat的顶层结构及启动过程44 7.1.1 Tomcat的顶层结构44 7.1.2 Bootstrap的启动过程45 7.1.3 Catalina的启动过程47 7.1.4 Server的启动过程48 7.1.5 Service的启动过程50 7.2 Tomcat的生命周期管理52 7.2.1 Lifecycle接口52 7.2.2 LifecycleBase53 7.3 Container分析59 7.3.1 ContainerBase的结构59 7.3.2 Container的4个子容器60 7.3.3 4种容器的配置方法60 7.3.4 Container的启动62 7.4 Pipeline-Value管道69 7.4.1 Pipeline-Value处理模式69 7.4.2 Pipeline-Value的实现方法70 7.5 Connector分析73 7.5.1 Connector的结构73 7.5.2 Connector自身类74 7.5.3 ProtocolHandler77 7.5.4 处理TCP/IP协议的Endpoint77 7.5.5 处理HTTP协议的Processor80 7.5.6 适配器Adapter81 第二篇 俯视Spring MVC 第8章 Spring MVC之初体验84 8.1 环境搭建84 8.2 Spring MVC最简单的配置84 8.2.1 在web.xml中配置Servlet85 8.2.2 创建Spring MVC的xml配置文件85 8.2.3  创建Controller和view86 8.3 关联spring源代码87 8.4 小结89 第9章 创建Spring MVC之器90 9.1 整体结构介绍90 9.2 HttpServletBean93 9.3 FrameworkServlet95 9.4 DispatcherServlet100 9.5 小结107 第10章 Spring MVC之用108 10.1 HttpServletBean108 10.2 FrameworkServlet108 10.3 DispatcherServlet114 10.4 doDispatch结构118 10.5 小结123 第三篇 Spring MVC组件分析 第11章 组件概览126 11.1 HandlerMapping126 11.2 HandlerAdapter128 11.3 HandlerExceptionResolver130 11.4 ViewResolver131 11.5 RequestToViewNameTranslator133 11.6 LocaleResolver133 11.7 ThemeResolver135 11.8 MultipartResolver137 11.9 FlashMapManager138 11.10 小结139 第12章 HandlerMapping140 12.1 AbstractHandlerMapping140 12.1.1 创建AbstractHandlerMapping之器141 12.1.2 AbstractHandlerMapping之用142 12.2 AbstractUrlHandlerMapping系列143 12.2.1 AbstractUrlHandlerMapping143 12.2.2 SimpleUrlHandlerMapping149 12.2.3 AbstractDetectingUrlHandler-Mapping150 12.3 AbstractHandlerMethodMapping系列152 12.3.1 创建AbstractHandlerMethod-Mapping系列之器153 12.3.2 AbstractHandlerMethodMapping系列之用158 12.4 小结159 第13章 HandlerAdapter161 13.1 RequestMappingHandlerAdapter概述162 13.2 RequestMappingHandlerAdapter自身结构169 13.2.1 创建RequestMappingHandler-Adapter之器169 13.2.2 RequestMappingHandlerAdapter之用173 13.2.3 小结185 13.3 ModelAndViewContainer185 13.4 SessionAttributesHandler和SessionAttributeStore188 13.5 ModelFactory192 13.5.1 初始化Model192 13.5.2 更新Model197 13.6 ServletInvocableHandlerMethod199 13.6.1 HandlerMethod199 13.6.2 InvocableHandlerMethod203 13.6.3 ServletInvocableHandler-Method205 13.7 HandlerMethodArgumentResolver207 13.8 HandlerMethodReturnValue-Handler218 13.9 小结221 第14章 ViewResolver223 14.1 ContentNegotiatingViewResolver225 14.2 AbstractCachingViewResolver系列228 UrlBasedViewResolver231 14.3 小结235 第15章 RequestToViewName-Translator237 第16章 HandlerExceptionResolver239 16.1 AbstractHandlerException-Resolver239 16.2 ExceptionHandlerException-Resolver241 16.3 DefaultHandlerExceptionResolver243 16.4 ResponseStatusExceptionResolver245 16.5 SimpleMappingExceptionResolver246 16.6 小结250 第17章 MultipartResolver251 17.1 StandardServletMultipart-Resolver251 17.2 CommonsMultipartResolver253 17.3 小结256 第18章 LocaleResolver257 第19章 ThemeResolver263 第20章 FlashMapManager266 第四篇 总结与补充 第21章 总结272 21.1 Spring MVC原理总结272 21.2 实际跟踪一个请求275 第22章 异步请求281 22.1 Servlet 3.0对异步请求的支持281 22.1.1 Servlet 3.0处理异步请求实例282 22.1.2 异步请求监听器Async-Listener284 22.2 Spring MVC中的异步请求286 22.2.1 Spring MVC中异步请求相关组件286 22.2.2 Spring MVC对异步请求的支持297 22.2.3 WebAsyncTask和Callable类型异步请求的处理过程及用法301 22.2.4 DeferredResult类型异步请求的处理过程及用法303 22.2.5 ListenableFuture类型异步请求的处理过程及用法305 22.3 小结309

2017-01-22

疯狂Java实战演义(PDF和源代码)

第1章 控制台五子棋 1 1.1 引言 2 1.1.1 五子棋介绍 2 1.1.2 输入输出约定 2 1.2 游戏流程描述 3 1.2.1 玩家输入坐标 3 1.2.2 “电脑”下棋 4 1.3 创建游戏的各个对象 4 1.3.1 Chessboard类 5 1.3.2 Chessman类 6 1.3.3 GobangGame类 6 1.4 棋盘类实现 7 1.4.1 初始化棋盘 7 1.4.2 输出棋盘 8 1.4.3 获取棋盘 9 1.5 棋子枚举类实现 9 1.6 游戏类实现 11 1.6.1 使用BufferedReader获取键盘输入 11 1.6.2 验证玩家输入字符串的合法性 12 1.6.3 判断输赢 13 1.6.4 “电脑”随机下棋 15 1.6.5 是否重新游戏 16 1.6.6 游戏过程实现 16 1.7 本章小结 18 第2章 仿Windows计算器 19 2.1 仿Windows计算器概述 20 2.1.1 数学符号与其他符号介绍 20 2.1.2 界面说明 21 2.2 流程描述 21 2.3 建立计算器对象 22 2.3.1 MyMath工具类 22 2.3.2 CalService类 23 2.3.3 CalFrame类 24 2.4 MyMath工具类实现 24 2.5 计算器主界面 25 2.5.1 初始化界面(initialize()方法) 26 2.5.2 创建运算键 28 2.5.3 创建操作按键 29 2.5.4 增加事件监听器 30 2.6 计算业务处理 31 2.6.1 计算四则运算结果 31 2.6.2 存储操作 33 2.6.3 实现开方、求倒数等 34 2.6.4 实现回退操作 35 2.6.5 清除计算结果 35 2.6.6 实现中转方法(callMethod) 35 2.7 本章小结 36 第3章 图片浏览器 37 3.1 图片浏览器概述 38 3.2 创建图片浏览器的相关对象 38 3.2.1 文件过滤器 39 3.2.2 文件对话框 39 3.2.3 主界面类 40 3.2.4 业务处理类 40 3.2.5 操作处理类 40 3.3 创建主界面 41 3.3.1 初始化界面(init()方法) 41 3.3.2 创建菜单栏 41 3.3.3 创建工具栏 43 3.4 实现图片浏览的操作 44 3.4.1 实现工具栏单击 44 3.4.2 实现菜单的单击 47 3.4.3 打开图片 48 3.4.4 放大或者缩小图片 49 3.4.5 浏览“上一张”或“下一张” 1.6.1 图片 49 3.5 文件选择与过滤 50 3.6 本章小结 51 第4章 桌面弹球 52 4.1 桌面弹球概述 53 4.1.1 动画原理 53 4.1.2 小球反弹的方向 53 4.2 流程描述 54 4.3 创建游戏对象 54 4.3.1 基类BallComponent 55 4.3.2 砖块类(Brick) 56 4.3.3 道具类及其子类(Magic) 57 4.3.4 挡板类(Stick) 57 4.3.5 小球类(Ball) 57 4.3.6 业务处理类(BallService) 58 4.3.7 主界面类(BallFrame) 59 4.4 主界面实现 59 4.4.1 初始化界面(initialize()方法) 60 4.4.2 单态模式简介 61 4.4.3 运行效果 61 4.4.4 监听器与Timer 62 4.5 挡板、小球、砖块、道具 63 4.5.1 挡板(Stick类) 63 4.5.2 小球(Ball类) 65 4.5.3 道具(Magic及其子类) 66 4.5.4 砖块(Brick类) 67 4.6 BallService类实现 68 4.6.1 创建与设置砖块 68 4.6.2 设置挡板的位置(移动挡板) 70 4.6.3 小球与砖块碰撞 71 4.6.4 小球、道具与挡板碰撞 73 4.6.5 道具的移动 73 4.6.6 改变挡板的长度(道具的作用) 74 4.6.7 判断是否已经通关 75 4.7 功能改进设计 76 4.7.1 关卡 77 4.7.2 计分 77 4.7.3 道具 77 4.8 本章小结 78 第5章 单机俄罗斯方块 79 5.1 俄罗斯方块简介 80 5.2 建立界面 80 5.2.1 方块堆砌界面 80 5.2.2 游戏界面 80 5.3 创建游戏对象 82 5.3.1 设计小方块对象 82 5.3.2 设计大方块对象 83 5.4 创建与显示大方块 86 5.4.1 随机读取小方块图片 86 5.4.2 创建大方块对象 87 5.4.3 显示当前方块 89 5.5 处理方块的行为 91 5.5.1 方块变化 91 5.5.2 方块的左移和右移 93 5.5.3 方块下降 94 5.5.4 方块快速下降 95 5.5.5 判断是否停止下降 96 5.5.6 创建界面的二维数组 96 5.5.7 判断是否遇到障碍 98 5.5.8 方块结束下降 100 5.6 消除行、计分与级别的提升 100 5.6.1 消除行 100 5.6.2 加入分数计算与级别提升 102 5.7 游戏操作 103 5.7.1 游戏的暂停 103 5.7.2 游戏的继续 104 5.7.3 判断游戏失败 104 5.8 本章小结 104 第6章 仿Windows画图 105 6.1 画图软件概述 106 6.2 画图工具原理 106 6.2.1 画线 106 6.2.2 其他画图功能 107 6.2.3 保存图片功能 107 6.3 创建画图工具的各个对象 107 6.3.1 工具接口Tool 108 6.3.2 Tool的实现类AbstractTool 109 6.3.3 AbstractTool的子类 110 6.3.4 界面类ImageFrame 110 6.3.5 业务逻辑类ImageService 111 6.3.6 文件选择类 6.3.6 ImageFileChooser 111 6.4 主界面实现 112 6.4.1 初始化界面(init()方法) 112 6.4.2 获取画板 114 6.4.3 创建菜单 114 6.4.4 创建画图工具栏 116 6.4.5 创建颜色选择面板 118 6.5 工具实现 119 6.5.1 实现拖动边框改变画布大小 120 6.5.2 实现父类的画图方法 121 6.5.3 鼠标移动时改变指针 122 6.5.4 记录鼠标按下的位置 123 6.5.5 重绘图片 123 6.5.6 铅笔工具 124 6.5.7 直线工具、矩形工具、椭圆工具和圆角矩形工具 124 6.5.8 多边形工具 126 6.5.9 刷子与橡皮擦 128 6.5.10 喷枪工具 129 6.6 ImageService类的实现 130 6.6.1 打开图片文件 130 6.6.2 保存图片 131 6.6.3 新建图片 132 6.6.4 颜色剪辑器 133 6.6.5 文件过滤 133 6.6.6 根据对菜单的单击调用相应 1.6.1 的方法 134 6.6.7 判断图片是否已经保存 135 6.7 本章小结 135 第7章 单机连连看 136 7.1 连连看游戏简介 137 7.2 连连看游戏原理 137 7.3 创建游戏界面与游戏区域 137 7.3.1 创建游戏界面 137 7.3.2 游戏区域实现原理 138 7.3.3 创建图片方块对象 138 7.3.4 创建游戏处理类 140 7.3.5 图片的读取 140 7.3.6 创建游戏区域图片数组 143 7.3.7 根据数组画游戏区域 144 7.3.8 随机初始化游戏 145 7.4 实现连接程序 147 7.4.1 图片选择 147 7.4.2 创建连接的相关对象 149 7.4.3 准备获取通道的工具方法 151 7.4.4 没有转折点的横向连接 152 7.4.5 没有转折点的纵向连接 154 7.4.6 一个转折点的连接 155 7.4.7 两个转折点的连接 157 7.4.8 找出最短距离 162 7.4.9 画上连接线 164 7.5 加入计分与计时功能 165 7.5.1 加入计分功能 165 7.5.2 加入计时功能与游戏的胜利、失败 166 7.6 本章小结 168 第8章 简单Java IDE工具 169 8.1 IDE工具简介 170 8.2 Java IDE的主要功能 170 8.3 建立界面 170 8.3.1 建立主编辑区和信息显示区 171 8.3.2 建立项目显示区 172 8.3.3 添加菜单和工具栏 173 8.3.4 建立工作空间选择界面 176 8.3.5 建立文件、目录和项目添加界面 177 8.4 实现工作空间选择功能 178 8.4.1 实现目录选择功能 178 8.4.2 实现工作空间选择的确定按钮 181 8.5 创建项目树 182 8.5.1 创建树的各个对象 182 8.5.2 实现创建项目树的功能 184 8.5.3 设置树的外观 188 8.5.4 实现树节点的选择事件 190 8.6 实现文件操作功能 192 8.6.1 新建文件 192 8.6.2 新建目录 197 8.6.3 新建项目 198 8.6.4 策略模式 201 8.6.5 文件打开 201 8.6.6 显示行数与高亮 211 8.6.7 文件的保存功能 216 8.6.8 运行Java文件 221 8.7 实现文本操作 223 8.8 本章小结 223 第9章 图书进销存系统 224 9.1 项目简介 225 9.2 建立界面 225 9.2.1 登录界面 225 9.2.2 销售管理界面 225 9.2.3 入库管理界面 227 9.2.4 书本管理界面 227 9.2.5 种类管理界面 228 9.2.6 出版社管理界面 229 9.2.7 修改界面代码 230 9.3 设计系统数据库 233 9.3.1 设计出版社表 233 9.3.2 设计种类表 234 9.3.3 设计书表 234 9.3.4 设计入库记录表 235 9.3.5 设计销售记录表 236 9.4 开发前的准备工作 237 9.4.1 设计表的对应类 237 9.4.2 编写配置读取类 239 9.4.3 编写JDBC操作类 240 9.4.4 创建数据转换工具类 243 9.5 出版社管理功能 244 9.5.1 分层结构 244 9.5.2 获取全部出版社 245 9.5.3 模糊查询 248 9.5.4 查看出版社 250 9.5.5 新增出版社 252 9.5.6 修改出版社 255 9.6 书本管理功能 256 9.6.1 获取全部书 256 9.6.2 查看书本 258 9.6.3 新增书本 260 9.6.4 图片上传功能 261 9.7 销售管理功能 264 9.7.1 销售记录列表 264 9.7.2 查看交易记录 267 9.7.3 实现新增交易记录功能 270 9.8 本章小结 273 第10章 事务跟踪系统 274 10.1 确定系统需求 275 10.2 建立界面 275 10.2.1 登录界面 275 10.2.2 我的事务界面 276 10.2.3 事务的完成、暂时不做、不做 10.2.3 的处理界面 277 10.2.4 事务转发界面 278 10.2.5 事务管理界面 278 10.2.6 新建事务界面 279 10.2.7 用户选择界面 280 10.2.8 用户管理界面 281 10.2.9 新建用户界面 282 10.3 开发准备 282 10.3.1 数据转换工具类 282 10.3.2 数据库执行类 284 10.3.3 DAO层的基类 285 10.3.4 值对象基类 285 10.4 用户管理 286 10.4.1 设计用户管理的相关对象 286 10.4.2 用户登录 287 10.4.3 查找全部用户 290 10.4.4 新增用户功能 292 10.4.5 删除用户 293 10.4.6 查询用户 293 10.5 事务管理 294 10.5.1 设计事务对象 294 10.5.2 根据发起人查找事务 295 10.5.3 新建事务 297 10.5.4 催办事务 298 10.5.5 将事务置为无效 300 10.6 我的事务 301 10.6.1 设计其他对象 301 10.6.2 将事务设为“暂时不做”状态 302 10.6.3 将事务置为“不做”状态 305 10.6.4 完成事务 306 10.6.5 转发事务 307 10.6.6 查看事务 308 10.6.7 查询事务 310 10.7 本章小结 311 第11章 多线程下载工具 312 11.1 多线程下载工具简介 313 11.2 建立下载工具的界面 313 11.2.1 主界面 313 11.2.2 导航树 314 11.2.3 资源列表 316 11.2.4 资源信息显示 318 11.2.5 新建下载任务界面 319 11.2.6 悬浮窗口 319 11.2.7 任务栏图标 322 11.3 设计下载的相关对象 322 11.3.1 资源状态对象 322 11.3.2 块对象 323 11.3.3 资源对象 324 11.3.4 上下文对象 327 11.4 下载资源 329 11.4.1 界面新增下载资源 329 11.4.2 建立下载线程 331 11.4.3 进行文件分割 333 11.4.4 文件合并 336 11.4.5 暂停下载 337 11.4.6 继续下载 337 11.5 保存下载信息 339 11.5.1 进行序列化保存对象 339 11.5.2 反序列化 340 11.6 其他操作 341 11.6.1 查看任务 341 11.6.2 删除任务 342 11.6.3 删除已经完成的任务 343 11.6.4 开始全部任务 343 11.6.5 暂停全部任务 344 11.6.6 节点的单击 344 11.6.7 打开/关闭主窗口 345 11.7 本章小结 345 第12章 邮件客户端 346 12.1 本章涉及的技术 347 12.1.1 JavaMail简介 347 12.1.2 SMTP简介 347 12.1.3 POP3简介 347 12.1.4 XStream简介 347 12.2 建立界面 348 12.2.1 登录界面 348 12.2.2 客户端主界面 348 12.2.3 配置界面 352 12.2.4 邮件编写界面 353 12.3 创建客户端的基础对象 354 12.3.1 创建邮箱上下文对象 355 12.3.2 创建邮件对象 356 12.4 用户登录与用户配置 358 12.4.1 实现用户登录 358 12.4.2 实现用户信息配置 360 12.5 接收邮件 362 12.5.1 接收邮件 362 12.5.2 获取邮件的正文 364 12.5.3 获取邮件的收件人 365 12.5.4 获取邮件的发件人 365 12.5.5 获取邮件的发送日期 366 12.5.6 获取邮件的大小 366 12.5.7 获取邮件的抄送地址 366 12.5.8 获取附件并存放到本地的目录中 367 12.5.9 将Message封装为Mail 368 12.5.10 对邮件进行排序 369 12.5.11 删除邮件服务器上的邮件 370 12.5.12 将Mail对象转换成XML 12.5.11 文件并保存到本地目录中 371 12.5.13 在界面中显示邮件 372 12.5.14 编写任务调度器接收邮件 375 12.6 初始化界面数据 376 12.6.1 将XML文件转换为Mail对象 376 12.6.2 在各个Box间切换 378 12.7 操作邮件 380 12.7.1 查看邮件 380 12.7.2 查看附件 382 12.7.3 删除邮件 385 12.7.4 彻底删除邮件 385 12.7.5 还原邮件 386 12.8 发送邮件 387 12.8.1 实现发送邮件的功能 388 12.8.2 界面封装Mail对象进行发送 390 12.8.3 处理邮件附件 391 12.8.4 测试发送邮件功能 392 12.8.5 处理邮件的其他功能 393 12.9 本章小结 393 第13章 MySQL管理器 394 13.1 MySQL管理器原理 395 13.2 建立界面 395 13.2.1 MySQL安装目录选择界面 396 13.2.2 主界面 396 13.2.3 数据显示界面 401 13.2.4 创建连接界面 403 13.2.5 创建表界面 404 13.2.6 视图界面 407 13.2.7 存储过程界面 407 13.2.8 查询界面 408 13.2.9 树节点右键菜单 408 13.2.10 数据列表右键菜单 408 13.3 实现MySQL安装目录选择功能 410 13.3.1 实现目录选择 410 13.3.2 读取和保存安装目录路径 411 13.3.3 读取连接信息 411 13.4 连接管理 413 13.4.1 创建连接节点 413 13.4.2 打开连接 414 13.4.3 新建连接 417 13.4.4 删除连接 419 13.4.5 关闭连接 420 13.5 数据库管理 420 13.5.1 打开数据库 421 13.5.2 新建数据库 422 13.5.3 删除数据库 423 13.5.4 关闭数据库 423 13.6 视图管理 424 13.6.1 读取视图列表 424 13.6.2 新建视图 426 13.6.3 修改视图与删除视图 427 13.7 存储过程与函数管理 427 13.7.1 新增存储过程和函数 427 13.7.2 修改存储过程与函数 428 13.8 表管理 429 13.8.1 新字段 430 13.8.2 插入字段与删除字段 431 13.8.3 编辑字段 432 13.8.4 设置默认值与自动增长 434 13.8.5 新外键 435 13.8.6 删除一个外键 436 13.8.7 查询字段信息 436 13.8.8 查询外键信息 437 13.8.9 新建表 439 13.8.10 修改表 440 13.8.11 删除表 442 13.9 数据浏览 442 13.9.1 浏览数据 443 13.9.2 刷新数据 445 13.9.3 数据排序 445 13.10 执行SQL语句 446 13.10.1 运行SQL语句 446 13.10.2 保存SQL语句 447 13.11 SQL文件的导入与导出 447 13.11.1 执行SQL文件 447 13.11.2 导出数据库与表 448 13.12 本章小结 449 第14章 自己开发IoC容器 450 14.1 IoC简介 451 14.2 使用技术简介 451 14.2.1 Java反射简介 451 14.2.2 Dom4j 452 14.2.3 JUnit 452 14.3 确定配置文件内容、编写DTD 452 14.3.1 声明bean 452 14.3.2 声明单态的bean 453 14.3.3 声明延迟加载 453 14.3.4 声明设值注入到bean的属性 453 14.3.5 声明构造注入到bean的属性 454 14.3.6 自动装配 455 14.3.7 准备DTD文件 455 14.4 读取XML文件 457 14.4.1 加载XML文件 457 14.4.2 读取Element 460 14.4.3 解析Element 462 14.4.4 实现isLazy方法 464 14.4.5 实现getConstructorElements方法 465 14.4.6 实现getAttribute和isSingleton方法 465 14.4.7 实现getAutowire方法 466 14.4.8 实现getConstructorValue和getPropertyValue方法 466 14.5 使用构造注入创建实例 468 14.5.1 构造注入简介 468 14.5.2 使用无参数的构造器创建实例 468 14.5.3 使用有参数的构造器创建实例 469 14.6 实现设值注入 473 14.6.1 实现非自动装配的设值注入 473 14.6.2 实现根据名字自动装配 478 14.7 实现IoC容器 480 14.7.1 定义接口方法 481 14.7.2 实现containsBean方法和isSingleton方法 482 14.7.3 实现getBean方法 483 14.7.4 为AbstractApplicationContext添加子类 488 14.7.5 测试IoC容器的创建 490 14.8 IoC与图书进销存系统的整合 495 14.8.1 需要管理的对象 495 14.8.2 创建数据访问层的bean 496 14.8.3 创建业务层的bean 497 14.8.4 创建视图层的bean 499 14.9 本章小结 502 第15章 仿QQ游戏大厅 503 15.1 游戏大厅简介 504 15.2 编写游戏大厅框架 504 15.2.1 确定传输格式 504 15.2.2 建立处理类接口 506 15.2.3 建立玩家类与游戏接口 506 15.2.4 编写框架服务器 507 15.2.5 编写框架客户端 509 15.2.6 建立登录界面 509 15.2.7 实现登录功能 511 15.3 建立五子棋游戏大厅 512 15.3.1 编写游戏大厅的对象 512 15.3.2 服务器创建游戏大厅数组 514 15.3.3 玩家进入游戏大厅 515 15.3.4 创建游戏大厅界面 516 15.3.5 创建玩家列表与聊天界面 519 15.3.6 使用服务器的数据创建游戏大厅 520 15.4 实现聊天功能 522 15.4.1 发送聊天信息 522 15.4.2 接收聊天信息 524 15.5 启动游戏 524 15.5.1 建立游戏界面 525 15.5.2 玩家坐下 526 15.5.3 实现游戏聊天 531 15.6 开始游戏 532 15.6.1 游戏准备 532 15.6.2 玩家下棋 536 15.6.3 逃跑与认输 539 15.6.4 请求和棋 540 15.7 五子棋游戏大厅总结 541 15.8 编写一个测试聊天室 542 15.8.1 建立聊天室界面 542 15.8.2 实现聊天室 543 15.8.3 将聊天室放置到框架中测试 543 15.9 本章小结 544

2017-01-03

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除