第3章--SQL注入与防范 SQL注入与防范 经常遇到的问题:数据安全问题,尤其是sql注入导致的数据库的安全漏洞 国内著名漏洞曝光平台:WooYun.org 数据库泄露的风险:用户信息.交易信息的泄露等 什么是SQL数据库注入? Web应用下,终端用户是无法直接访问数据库的,他们必须通过发送http请求到Java服务器,由Java服务器访问后端数据库.因此,恶意用户想要获取数据库中的数据,必须通过Java服务器来访问后端数据库而无法绕行.他们的唯一途径就是利用应用程序的漏洞,伪装自己的请求,欺…
期末考试 编程题 本编程题包含4个小题,覆盖知识点从基础的JDBC.连接池到MyBatis. 1(10分) 有一款在线教育产品“天天向上”主要实现了在手机上查看课程表的功能.该产品的后端系统有一张保存了所有客户课程信息的数据库表,表结构如下: 请使用JDBC编写一段程序,实现读取用户名为“ZhangSan”的同学的所有课程名称,输出到控制台终端. 答: 数据库: /usr/local/mysql/bin ./mysql -u root -p mysql> CREATE DATABASE fina…
第1章--JDBC JDBC基础 通过Java Database Connectivity可以实现Java程序对后端数据库的访问 一个完整的数据库部署架构,通常是由客户端和服务器端两部分组成 客户端封装数据库请求,并发送给服务器端,服务器端执行完毕后将结果返回给客户端 常见客户端工具: MySQL Workbench(图形化工具操作简单,但只能实现简单的查询) JDBC(驱动程序jar包) 命令行工具(直接敲入SQL语句进行查询) 市面上多种数据库不尽相同,学习成本高,数据库迁移的移植性 --…
第5章--MyBatis MyBatis入门 Abstract: 数据库框架的工作原理和使用方法(以MyBatis为例) 面向对象的世界与关系型数据库的鸿沟: 面向对象世界中的数据是对象: 关系型数据库中的数据是以行.列表示的二元表. 什么映射技术能实现对象和二元表之间的自动转换呢? --ORM (Object Relation Mapping) 持久化类与数据库表之间的映射关系:对持久化对象的操作自动转换成对关系数据库操作. 关系数据库的每一行映射为每一个对象:关系数据库的每一列映射为对象的一…
第4章--事务 事务原理与开发 事务Transaction: 什么是事务? 事务是并发控制的基本单位,指作为单个逻辑工作单元执行的一系列操作,且逻辑工作单元需满足ACID特性. i.e. 银行转账:开始交易:张三账户扣除100元:李四账户增加100元:结束交易. 事务的特性:ACID 原子性 Atomicity:整个交易必须作为一个整体来执行.(要么全部执行,要么全部不执行) 一致性 Consistency:整个交易总体资金不变 隔离性 Isolation: case1: 若张三给李四转账过程中…
第2章--数据库连接池 数据库连接池 一般而言,在实际开发中,往往不是直接使用JDBC访问后端数据库,而是使用数据库连接池的机制去管理数据库连接,来实现对后端数据库的访问. 建立Java应用程序到后端数据库的物理连接:conn = DriverManager.getConnection(...); 虽然这只是一个方法调用,但是在JDBC的驱动中,就已经完成了大量客户端与服务器端的交互 这里以MySQL数据库为例(MySQL客户端和MySQL服务器端的交互): 1. 客户端发送给服务器端TCP请求…
Servlet课程考试 Servlet课程考试 Servlet课程考试 总分:55分 限定时间:120分钟 进入考试 答案已成功提交!请耐心等待成绩公布 Servlet课程考试: 1(12分) 简单谈一下你理解的Servlet是什么,以及Servlet的工作原理. Servlet即Server Applet,是在服务器端运行的程序.一个Servlet对象实际上就是一个Java类. 浏览器在与服务器通信时,浏览器先向服务器发出请求,该请求被Servlet容器解析并发送给对应Servlet对象后,由…
Spring框架客观题 Spring框架编程题 http://blog.csdn.net/sinoacc/article/details/51702458 1 (25分) 假设有如下数据表: create table Blog( blogId int auto_increment primary key comment "博客Id", blogTitle varchar(10) comment "博客标题", blogContent varchar(100) com…
第6章--蜂巢 蜂巢简介 网站开发完,就需要测试.部署.在服务器上运行. 网易蜂巢: 采用Docker容器化技术的云计算平台 https://c.163.com 容器管理:容器可被视作为云主机的服务器 服务管理:服务可由多个容器组成,可以有多个副本 镜像仓库:可快速创建容器和服务 后端服务:blahblahblah 特点: 保证环境一致: 实际中开发环境.测试环境.生产环境等会不大相同 环境差异可能会导致业务代码运行得到不同结果 蜂巢底层采用Docker容器:把业务代码和运行环境打包成为一个镜像…
第1章--Web应用开发概述 Web应用开发概述 浏览器-服务器架构(BS-architecture) browser/ App    ---- request ---->    server (database) <- response/data -- protocol: HTTP(Hyper-Text Transfer Protocol) have a try: cmd: sudo nc -l 80  -- listen at the port of 80(port 80 is used…