![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
传智播客
文章平均质量分 51
tyqp183zcm
这个作者很懒,什么都没留下…
展开
-
第二十天:总结
1.JDBC代码的初步优化 (1)web层和Dao的实现层耦合 CustomerDao dao = new CustomerDaoImpl(); 如果Dao的实现类没有写,我就得不到dao,web层就写不了 我们用工厂来把他们解耦,web层和Dao实现,他俩中间加一个工厂, 让工厂横插一杠子,工厂有一个方法,用来获得Dao的具体实现类 (原创 2009-10-25 22:37:00 · 319 阅读 · 0 评论 -
第二十一天:总结
1.Oracle Server/Client 配置2.Enterprise Manager Console (1)CRUD用户 (2)创建用户时详细信息: a.概要文件:控制系统资源的使用 查看概要文件:安全性--->概要文件 默认概要文件:DEFAULT b.模式:组织相关数据库对象的一个逻辑概念原创 2009-10-25 22:41:00 · 394 阅读 · 0 评论 -
第二十一天:听课笔记
1.Oracle时代2.Oracle数据库 和 Oracle实例Oracle数据库:硬盘上实际存放数据的文件,成为一个逻辑整体Oracle实例:进程 软件 内存里的数据结构 存取数据要通过Oracle实例一个实例只能与一个数据库关联3.口令管理 截屏 将Scott解锁4.服务器 和 客户端5.客户端 管理员原创 2009-10-25 22:38:00 · 294 阅读 · 0 评论 -
第二十天:听课笔记
1.factory 和 配置文件 将Dao和web解耦UserDao dao = new UserDaoImpl(); 你看UserDaoImpl web依赖了dao的实现类,没有确定UserDao的实现类的名字 我就得不到dao我们用工厂设计模式 那个工厂会给我们UserDao的实现类为了让实现类更换时不用改程序 我们通过配置文件+反射 得到具体的实现类让工厂只有一原创 2009-10-25 22:35:00 · 266 阅读 · 0 评论 -
第十九天:听课笔记
1. JDBC快速入门 a.准备环境 建数据库、表 导入脚本source 数据库驱动 b.注册驱动 DriverManager.registerDriver(XXX); ---> Driver.class c.获得与数据库的连接 Connection conn = DriverManager.getConnection(...); url 用户名 地原创 2009-10-13 21:39:00 · 590 阅读 · 0 评论 -
第十八天:听课笔记
1.数据库时代了多练,要练2.SQLstructured query language(结构化查询语言)3.数据库简介:SQL ServerOracleMySQLDB2 银行用的很多SyBase4.MySQL配置Develop连接数端口 3306Manual UTF-8远程MySQL解压版:3306my-medium.ini 把安装目录改一下startup.batstop.bat原创 2009-10-13 21:34:00 · 301 阅读 · 0 评论 -
第十九天:总结
1.注册驱动的三种方式: DriverManager.registerDriver(new XXX.Driver()) Class.forName("....Driver"); 还有一种 用Class.forName 具体的好处,研究老张的面试题 得到数据连接放到工具类的静态代码块中2.一环套一环 a.注册驱动 b.由驱动对象得到连接对象 c.由连接对象得到SQL语句的原创 2009-10-13 21:40:00 · 609 阅读 · 0 评论 -
第十八天:总结
1.进入数据库 mysql -u 用户名 -p 密码 退出数据库 quit exit2.一个数据库服务器可以管理多个数据库 一般一个应用程序对应一个数据库 一个数据库可以管理多个表 每个表一般对应于一个实体3.CRUD数据库 创建数据库 create database mydb1 character set utf8 collate utf8_general_原创 2009-10-13 21:35:00 · 377 阅读 · 0 评论 -
第十四天:总结
1.EL表达式 a.获取request.session.application域中的数据 四种 域 ,那还有一个page获取 b.获取Bean的属性 c.获取List 结合forEach d.获取Map 结合forEach e.想它的底层原理 f.两种容易混淆的地方 域(getAttribute) 和 getXXX2.JSTL标签库 结合上面的迭代 登陆原创 2009-10-09 21:25:00 · 239 阅读 · 0 评论 -
第十六天:总结
1.用过滤器对HTML转移,扒代码,扒Tomcat例子程序util中 别人已经写好了,拿过来用就好了,有时间研究一下2.压缩 ByteArrayOutputStream 多层的包装3.动态页面静态化4.考虑:response 和 request结合 他们都过滤,是什么情况5.态度要端正:不能看小说了,努力敲代码,敲出兴趣来原创 2009-10-09 21:29:00 · 226 阅读 · 0 评论 -
第十四天:听课笔记
1.sendRedirect 和 forwardsendRedirect 是 通知浏览器访问JSPforward 是服务器自己访问JSPServlet访问JSP通过 域 传递数据 JavaBean通过forward可以 sendRedirect不行域 本质上是容器2.要是传入给JSP的是集合,那得要装Java代码美工是不干滴,看着就恶心EL JSTL 来取代脚本表达式3.E原创 2009-10-09 21:24:00 · 290 阅读 · 0 评论 -
第十五天:听课笔记
1.// --> //// path.split("////")[path.split("////").length - 1] pos = lastIndexOf("////") substring(pos) subString File2.递归 返回 结果问题要递归 你现在有返回了 下次我递归的时候我返回什么了?所以将结果装到一个容器,通过调用它的程序给它一个容器,递归的原创 2009-10-09 21:26:00 · 238 阅读 · 0 评论 -
第十七天:总结
1.J2SE中的AWT的事件监听 窗口关闭2.监听三个域对象的创建和销毁 创建 销毁 ServletContextListener //它的事件可以得到ServletContext HttpSessionListener //它的事件可以得到Session ServletRequestListener //它的事件可以得到ServletContext和Servlp原创 2009-10-09 21:31:00 · 273 阅读 · 0 评论 -
第二十二天:听课笔记
1.日期函数在日期上加上或减去一个数字为日期....2.日期函数:months_between(XXX,YYY)XXX-YYY 相差多少个月四舍五入:round()add_months(XXX,YYY):向XXX加上YYY个月next_day(XXX,YYY):指定XXX的下一个YYYlast_day(XXX):XXX月的最后一天roun原创 2009-10-25 22:42:00 · 301 阅读 · 0 评论 -
第二十二天:总结
group by理解1.分组函数:avg, min, max, sum.....分组函数作用于一组数据,并对一组数据返回一个值2.group by分组,对 表按照XXX条件,将一个表划分成YYY个较小的组,然后将YYY个组分别传递给分组函数(avg, min, max, .....),由于分组函数输入的是一组数据,原创 2009-10-25 22:49:00 · 306 阅读 · 0 评论 -
第二十八天:总结
1.传统标签 a.自定义标签: 用户自定义的一种jsp标记 。当一个含有自定义标签的jsp页面被jsp引擎编译成servlet时, tag标签被转化成了对一个称为 标签处理类 的对象的操作。于是,当jsp页面被jsp引擎转化为servlet后, 实际上tag标签被转化为了对tag处理类的操作。 Tag接口:定原创 2009-10-25 23:08:00 · 282 阅读 · 0 评论 -
第二十八天:听课笔记
1.传统标签与简单标签:2.Tag:doStartTag 是否执行标签体doEndTag 是否执行余下的JSP页面setPageContextsetParent 嵌套形式getParent 在doStartTag之前调用release 可以用来释放资源,如数据库连接,不过JSP用数据库太恐怖了3.先后顺序:实例化setP原创 2009-10-25 23:07:00 · 262 阅读 · 0 评论 -
第二十七天:总结
1)国际化(internationalization i18n) 1.对程序中固定使用的文本元素 a.资源包和资源文件 资源文件的内容:key=value 一个资源包中的所有资源文件的关键字必须相同 资源文件中的是ASCII,用中文的话用native2ascii,命令行中复制(选中,右键) b.ResourceBu原创 2009-10-25 23:06:00 · 296 阅读 · 0 评论 -
第二十七天:听课笔记
1.国际化ResourceBundlei18n2.每个资源文件都必须拥有共同的基名myproperties_zh.properties myproperties_en.properties3.IE---> 语言4.一个资源包中的所有资源文件的关键字必须相同asciinative2ascii 对非ascii编码5.ResourceBundl原创 2009-10-25 23:05:00 · 292 阅读 · 0 评论 -
第二十六天:总结
1.用JDBC操作多个实体: 1)部门和员工(一对多关系) 部门有多个员工,员工属于一个部门 员工表中有一个外键,指向部门表中的部门号 2)老师和学生(多对多关系) 一个老师教多个学生,一个学生由多个老师教 老师表 学生表 中间表:存放老师ID和学生ID原创 2009-10-25 23:04:00 · 285 阅读 · 0 评论 -
第二十六天:听课笔记
1.使用JDBC操作多个实体:java面向对象:对称的(你指向我,我指向你)department id name set employeesemployee id name department 数据库:不对称的(你指向我)department ...idemployees 外键id一 对原创 2009-10-25 23:03:00 · 290 阅读 · 0 评论 -
第二十五天:总结
1.JDBC执行存储过程 1)MySQL 2)Oracle 得到CallableStatement,调用存储过程 CallableStatement cs = conn.prepareCall(...) 设置参数,注册返回值,得到输出 cs.registerOutParameter(...); cs.execute(); cs.getXXX(原创 2009-10-25 23:02:00 · 435 阅读 · 0 评论 -
第二十五天:听课笔记
1.存储过程CallableStatement PrepareStatement的子类CallableStatement cs = conn.preparedCall(...)cs.registOutParameter(...)cs.setXXX(...)cs.execute();cs.getXXX(...)Connection ----> Statement,P原创 2009-10-25 23:01:00 · 321 阅读 · 0 评论 -
第二十四天:总结
1.视图: a.视图是从表中抽出的逻辑上相关的数据集合。 视图是一种虚表. 视图建立在已有表的基础上, 视图赖以建立的这些表称为基表。 向视图提供数据内容的语句为 SELECT 语句, 可以将视图理解为存储起来的 SELECT 语句. 视图向用户提供基表数据的另一种表现形式 b.为什么要使用视图: 控制数据访问 简化查询原创 2009-10-25 23:00:00 · 260 阅读 · 0 评论 -
第二十四天:听课笔记
1.视图:虚表控制数据访问,简化查询,避免重复访问相同的数据简单视图 复杂视图在create view中嵌入子查询 别名修改视图 or repalcedrop view XXX复杂视图:多个表,将查好的数据放到视图中with read only2.Top-N最大值或最小值的集合是Top-N关心的伪列,Oracle会为每个表增加, 可以标识行号默认原创 2009-10-25 22:59:00 · 354 阅读 · 0 评论 -
第二十三天:总结
1.子查询2.DML 除开select,其他的DML:insert,update,delete 1)insert a.除去通过子查询插入,insert语句一次只能插入一行,而其他的DML可以操作多个行 b.字符和日期数据要包含在单引号中 c.向表中插入空值:不写(不插你)或者 null(插你个null) d.插入时间:不知道数据库中时间的格式,即使知道格原创 2009-10-25 22:58:00 · 237 阅读 · 0 评论 -
第二十三天:听课笔记
1.多行子查询inall max min > 我就跟最大值比较 all和全部的值比较,所以条件最为苛刻,返回一个值 最大/最小要找个XXX条件的女的,条件苛刻any > 我就跟最小值比较 any和任意一个值比较,所以其条件最为宽松,返回所有值是个女的就可以了,条件宽松我们可以用max ,min替换all,原创 2009-10-25 22:57:00 · 323 阅读 · 0 评论 -
第十七天:听课笔记
1.Servlet监听器J2SE中的事件监听f.addWindowListener(new WindowListener() // WindowAdapter{ XXX(Event event){ f = event.getSource(); f.YYY //具体的动作,这些是事件源调用的 }});事件源调用监听器中XX原创 2009-10-09 21:30:00 · 336 阅读 · 0 评论 -
第十六天:听课笔记
1.一敲解千疑2.以后的JSP都放在WEB-INF下3.for(int i=0; roles!=null && i 就不用if(roles != null)了4.URL encode decode 空格 编码 解码5.生产环境的 .xml没变 反射 字节码 VMMachine6.导包就导所有滴7.都写/ ,我知道/代表谁8.role 注册 角色为空激活 为user原创 2009-10-09 21:28:00 · 288 阅读 · 0 评论 -
第七天:听课笔记
1.accept-language2.MIME协议是多用途网络邮件扩展协议,包括各种应用层协议在网络上传输的数据RFC3.Servlet就是运行在服务器端的Java小程序它实现了特殊的接口服务器:接受请求 响应应答接口:暴露的规则 功能扩展性 降低耦合Servlet生命周期:构造函数initservicedestorygetServletConfiggetServletInfo原创 2009-09-27 19:46:00 · 261 阅读 · 0 评论 -
第五天:听课笔记
1.W3C School 查2. .当前节点 ..父节点3.转化为String ""+ Integer.toString() String.valueOf()4.属性 元素 ---> 变量 " +XXX+ " 5.单元测试 一块一块的测试 程序大了以后,出错不好查6.删除 没有 返回没有元素的List集合健壮性判断7.查询 没有 空 NullPoi原创 2009-09-20 21:14:00 · 325 阅读 · 0 评论 -
第六天:听课笔记
1.reloadable = trueWEB-INF :classes 和 lib 改变运行上线时:将reloadable = false 效率高一些 2.目录结构:------WEB-INF -----------classes -----------lib------xxx.jsp 调用的是WEB-INF下的classes 要改一下src的编译目录到classes原创 2009-09-20 21:17:00 · 252 阅读 · 0 评论 -
第六天:总结
1.完整配置Tomcat及编程 a.按照错误信息,一步一步配置,将过程写入文档 b.查文档,看.xml配置重要标签,了解其他标签 c.两种建虚拟目录的方式:理解WEB-INF的父目录 d.手动配置一个项目访问静态HTML e.手动配置一个项目访问.jsp f.手动编写简单的Servlet在实验时,要注意虚拟路径的配置,只要在虚拟路径xml文件中稍加修改(比如空格。)服务器会指定加载原创 2009-09-20 21:18:00 · 232 阅读 · 0 评论 -
第五天:总结
1.学生管理系统 CRUD: 用面向对象的思维,想把思路写入文档然后编码,异常的处理 单元测试与Debug2.DTD Schema: DTD中:内嵌和引入 属性 元素 实体 名称空间 默认名称空间 Schema:理解名称空间 xmlns:XXX XXX是昵称3.DOM 和 SAX: JAXP: JDK中自带解析xml文件 包含原创 2009-09-20 21:15:00 · 186 阅读 · 0 评论 -
第四天:总结
1.增 a.创建document对象 b.创建根节点rootElement c.添加属性 d.添加子元素 e.给子元素节点定义内部文本 f.通过字符串的形式添加 DocumentHelper.parseText(str) g.打印xml 1)无格式的打印 document.asXML 2)有格式的打印 OuputFormat --->Quick Start Guid--原创 2009-09-16 21:29:00 · 246 阅读 · 0 评论 -
第四天:听课笔记
1.文档类型定义约束 指定XXX出现个数、次序有点像接口 定义规则 你定义规则 我就能跑你的方法2.文档注释不能嵌套3.文档主体内容:顶层元素包括:各种子元素元素属性元素文本CDATA(character data )不让XML解析,保证数据原样性4.将描述的事物描述成对象5.定义功能的时候,就想的差不多了,把想法变成注释然后才编码6.Ctrl+M 窗口最大化7.Fast原创 2009-09-16 21:28:00 · 285 阅读 · 0 评论 -
第三天:总结
1.jar包的导入与导出 自己写一个类和方法,讲.class文件导出为jar包 另建一个工程导入,并使用2.XML的规范 a.encoding引发的一系列思考 用记事本创建 保存的编码与encoding之间的联系 结论:无中文的 只要保存的编码不指定 无DOM 的 不管你encoding和保存的编码是否一致 编码是什么 有中文的 encoding="UTF-8" 保存的编码原创 2009-09-16 21:27:00 · 203 阅读 · 0 评论 -
第三天:听课笔记
1.XML中的属性和子元素2.XML中的编码 保存时 和 encoding3.CDATA 与 转义 的应用 该怎么选择避免被解析,作为数据保持,同样可以用注释来完成 但CDATA可以在浏览器中显示4.XML 是扩展的,它里面能否放HTML的标签5.XML通常承载配置信息 标记性语言6.XML中只有一个根元素,根元素下有很多子元素标签可以自定义XML的应用:框架 配置信息-->配原创 2009-09-16 21:26:00 · 257 阅读 · 0 评论 -
第二天:总结
1.注解 a.java.lang 注解类型摘要 对XXX的标记 b.java.lang.annotation 对标记的标记 掌握Retention Target 元注解 c.自定义注解 反射 x.设计注解类 y.应用了x的类 z.对y进行反射操作的类 在自定义的注解中添加基本属性 添加基本属性,有点像抽象方法的形式 value很特殊 数组类型的属性 枚举类型的属性 --->枚举和注解都是特原创 2009-09-12 22:02:00 · 190 阅读 · 0 评论 -
第二天:听课笔记
1.注解 Annotation@SuppressWarnings("deprecation"); //过时的不报警告@Deprecated //这是过时的,我规定的@Override //覆盖方法,这是很有用的,习惯! //告诉编译器 我写的这个方法是对父类某个方法的覆盖 你看对不对注解:用于告诉编译器,传达一种信息注解相当于一种标记,加了注解原创 2009-09-12 22:01:00 · 231 阅读 · 0 评论