沙舟狼客之JavaEE笔记.docx
- 文档编号:18538650
- 上传时间:2023-08-19
- 格式:DOCX
- 页数:25
- 大小:290.11KB
沙舟狼客之JavaEE笔记.docx
《沙舟狼客之JavaEE笔记.docx》由会员分享,可在线阅读,更多相关《沙舟狼客之JavaEE笔记.docx(25页珍藏版)》请在冰点文库上搜索。
沙舟狼客之JavaEE笔记
JavaEE笔记
——沙舟狼客著
沙舟狼客工作室出版
1、Servlet1—4
1.1、常见方法1—4
1.1.1、Init()1—4
1.1.2、doGet()1—4
1.1.3、doPost()1—4
1.1.4、destroy()1—4
1.1.5、service()1—4
1.2、post/get/put/delete>>>>>>>>>>>>>>>crease/read/update/delete1—4
1.3、生命周期1—4
1.4、url>>>>>>>>>>>>>>>>name(web.xml)<<<<<<<<<<<<<< 1.5、跳转、转发、重定向1—5 2、JSP2—6 2.1、3编译指令2—6 2.1.1、Page2—6 2.1.2、Include2—6 2.1.3、Taglib2—6 2.2、7动作指令2—6 2.2.1、Forward2—6 2.2.2、Include2—7 2.2.3、Param2—7 2.2.4、Plugin2—7 2.2.5、useBean2—7 2.2.6、setProperty2—7 2.2.7、getProperty2—7 2.3、9内置对象2—7 2.3.1、Application2—7 2.3.2、Session2—7 2.3.3、Page2—7 2.3.4、pageContext2—7 2.3.5、out2—7 2.3.6、request2—7 2.3.7、response2—8 2.3.8、exception2—8 2.3.9、config2—8 3、乱码的处理3—9 3.1、字符集3—9 3.1.1、能处理中文的编码: utf-8,GBK,GB23123—9 3.2、设置每个请求Request的编码: 3—9 3.2.1、如果是post方法(在http体: 用户设置的编码)3—9 3.2.2、如果是get(在http头: 西欧编码)3—9 3.3、设置数据库编码3—9 3.3.1、url? setEncoding=utf-83—9 4、SVN4—9 5、冲突解决4—12 5.1、人为协商解决4—12 5.2、文件锁4—12 6、ANT5—12 6.1、编译》》打包》》jar或war5—12 6.2、目录文件》》copy,delete5—12 6.3、生成文档》javaDoc5—12 6.4、测试》》Junit5—12 6.5、生成SQL测试脚本5—12 7、持续构建hudson6—12 8、项目进度7—12 8.1、时间=规模/速度7—12 8.1.1、规模=故事点数(一个相对值于第一个故事点,第一个随意定)7—12 8.1.2、速度=一个故事点的时间7—12 9、用户登录和自动登录8—13 9.1、Session对应的是一个浏览器,不是一个页面或IP8—13 9.2、Session在服务器端是一个Map对象,如下图8—13 10、Cookie有内存型(浏览器关闭会自动销毁)和持久型(可以禁用)两种;9—14 11、Form中method常用有两种: get、post10—14 11.1、Get在http协议头中10—14 11.2、Post在http协议体中10—14 12、程序员与美工合作11—14 12.1、程序员负责页面的布局,美工负责页面的美观11—14 12.2、布局尽量用div+css来代替table11—14 12.3、Html布局常识11—14 12.3.1、主要分为块元素(block: 自动换行)和行元素(inline: 不换行)11—14 12.3.2、CSS主要了解选择器,盒子模型,定位及布局11—14 13、数据库树形表建立12—14 13.1、字段,id,code,level,index12—14 13.1.1、Code可以为01,0101,0102,010201,010202,12—15 13.1.2、Jsp树生成代码12—15 14、Hibernate13—15 14.2、Hibernate常见错误问题13—18 现象13—19 原因13—19 解决方法13—19 配置找不到错误,没抛异常或空指针,每次插入数据后找不到以前的数据13—19 Cfg文件多一句话, 注释下这句、13—19 Exceptioninthread"main"org.hibernate.MappingException: Unknownentity: mode.Wife113—19 通常是找不到类对应的hbm文件,没有在cfg文件中加载13—19 在cfg文件中加入 14.3、HQL13—19 14.3.1、查询13—19 14.3.2、删除/修改》》createQuery(“deletefromUseruserwhereuser.id=10”);执行完后,须executeUpdate();13—20 1、Servlet 1.1、常见方法 1.1.1、Init() 1.1.2、doGet() 1.1.3、doPost() 1.1.4、destroy() 1.1.5、service() 1.2、post/get/put/delete>>>>>>>>>>>>>>>crease/read/update/delete 1.3、生命周期 1.4、url>>>>>>>>>>>>>>>>name(web.xml)<<<<<<<<<<<<<< 1.5、跳转、转发、重定向 1.6、Web.xml中的servlet路径: 1.6.1、http: //ip[: port]/context/url-pattern 1.6.1.1、路径: 以‘/’开头,以”/*”结束(模糊匹配) 1.6.1.2、精确: /admin(唯一确定的,只有一个) 1.6.1.3、扩展名: *.action(不能与路径滥用) 1.6.1.4、优先级: url-pattern>>>>>servlet(一对多),精确>扩展名>路径。 且以长路径优先级高 1.6.2、获得路径的常用API 1.6.2.1、getContextPath() 1.6.2.2、getServletPath() 1.6.2.3、getRequestURI() 1.6.2.4、getRequestURL() 1.6.2.5、getRealPath(“/”)获得服务器的servlet磁盘的真实路径,经常在上传时用 1.7、Listener 1.7.1、案例,在线人数统计,饭店菜品排行榜 1.7.2、主要监听: 应用,会话,请求的创建与销毁;属性的添加或移除;序列化与反序列化(集群服务器);某个特定的对象加入或移除到属性 1.8、Filter 1.8.1、用户登录判断 1.9、MD5算法(MessageDigital) 2、JSP 2.1、3编译指令 2.1.1、Page 2.1.2、Include 2.1.3、Taglib 2.2、7动作指令 2.2.1、Forward 2.2.2、Include 2.2.3、Param 2.2.4、Plugin 2.2.5、useBean 2.2.6、setProperty 2.2.7、getProperty 2.3、9内置对象 2.3.1、Application--------getServletContext 2.3.2、Session----------Session 2.3.2.1、每次请求对应一个session即JSessionID(JSP特有) 2.3.2.2、生命周期从第一次访问,到浏览器关闭之后 2.3.3、Page 2.3.4、pageContext 2.3.5、out----response.getWriter().out.(); 2.3.6、request----HttpServletRequest 2.3.7、response--------HttpServletResponse 2.3.8、exception 2.3.9、config 2.3.10、共享范围 Application>session>request 3、乱码的处理 3.1、字符集 3.1.1、能处理中文的编码: utf-8,GBK,GB2312 3.1.1.1、数据库: utf-8 3.1.1.2、JSP、html: utf-8 3.1.1.3、Java源码: utf-8 3.2、设置每个请求Request的编码: 3.2.1、如果是post方法(在http体: 用户设置的编码) 3.2.1.1、request.setCharactorEncoding(“utf-8”); 3.2.2、如果是get(在http头: 西欧编码) 3.2.2.1、Strings=newString(str.getBytes(“iso-8859-1”,”utf-8”)); 3.3、设置数据库编码 3.3.1、url? setEncoding=utf-8 4、SVN 4.1、冲突解决 4.2、人为协商解决 4.3、文件锁 5、ANT 5.1、编译》》打包》》jar或war 5.2、目录文件》》copy,delete 5.3、生成文档》javaDoc 5.4、测试》》Junit 5.5、生成SQL测试脚本 6、持续构建hudson 7、项目进度 7.1、时间=规模/速度 7.1.1、规模=故事点数(一个相对值于第一个故事点,第一个随意定) 7.1.2、速度=一个故事点的时间 8、用户登录和自动登录 8.1、Session对应的是一个浏览器,不是一个页面或IP 8.2、Session在服务器端是一个Map对象,如下图 Key Value(Map) JSESSIONID=1 String-key Object-value String-key Object-value JSESSIONID=2 String-key Object-value String-key Object-value 。 。 。 。 。 。 String-key Object-value String-key Object-value 9、Cookie有内存型(浏览器关闭会自动销毁)和持久型(可以禁用)两种; 10、Form中method常用有两种: get、post 10.1、Get在http协议头中 10.2、Post在http协议体中 11、程序员与美工合作 11.1、程序员负责页面的布局,美工负责页面的美观 11.2、布局尽量用div+css来代替table 11.3、Html布局常识 11.3.1、主要分为块元素(block: 自动换行)和行元素(inline: 不换行) 11.3.2、CSS主要了解选择器,盒子模型,定位及布局 11.4、了解fireworks网页快速布局设计 12、数据库树形表建立 12.1、字段,id,code,level,index 12.1.1、Code可以为01,0101,0102,010201,010202, 12.1.2、Jsp树生成代码 13、Hibernate 13.1.1.1、对象之间的关系有四种, 13.1.1.1.1、一对多, 13.1.1.1.2、一对一,单向(一个丈夫只能有一个妻子,一个妻子只能有一个丈夫) 13.1.1.1.2.1、主键关联 类设计 类对应文件配置 13.1.1.1.2.2、基于外键关联的单向一对一关联和单向多对一关联几乎是一样的。 唯一的不同就是单向一对一关联中的外键字段具有唯一性约束。 在数据库表中多一个字段,而这个字段是唯一的! ! 即一对多的一种特种情况 13.1.1.1.3、多对多,双向,尽量简单 13.1.1.1.4、多对一, 13.1.1.2、级联cascade 13.1.1.2.1、None 13.1.1.2.2、Delete 13.1.1.2.3、Save-update 13.1.1.2.4、All(delete+save-update) 13.1.1.3、inverse 13.1.1.3.1、数据库表中字段要允许为空 13.1.1.3.2、True有manager来维护(效率高,需要setmanager方),false自己维护 13.1.1.4、Lazy如果是true则不去查相关的集合,用的时候再查,并且session不能关闭(建义用getCurrentSession()),并且要有事务,false则查 13.2、Hibernate常见错误问题 现象 原因 解决方法 配置找不到错误,没抛异常或空指针,每次插入数据后找不到以前的数据 Cfg文件多一句话, 每次创建时,清空表 注释下这句、 Exceptioninthread"main"org.hibernate.MappingException: Unknownentity: mode.Wife1 通常是找不到类对应的hbm文件,没有在cfg文件中加载 在cfg文件中加入 13.3、HQL 13.3.1、查询 13.3.1.1、全部属性 13.3.1.1.1、From类名(区分大小写)>>List 13.3.1.2、查询某个属性 13.3.1.2.1、Select属性from类名》》》》》》》list<属性类型> 13.3.1.3、查询n个属性 13.3.1.3.1、Select属性1,属性2,。 。 。 from类名List 13.3.1.4、查询一个对象 13.3.1.4.1、SelectnewUser(name,age,sex)fromUser(必须有其相对应的构造方法)>>>List 13.3.1.5、查询两种参数写法 13.3.1.5.1、SetParameter(“别名”,true);别名在hql中写法…whereage>=: 别名 13.3.1.5.2、SetParamer(index,true);index从0开始 13.3.1.5.3、SetXXX(index/“别名”,值);XXX为参数类型 13.3.2、删除/修改》》createQuery(“deletefromUseruserwhereuser.id=10”);执行完后,须executeUpdate(); 13.3.3、分页 13.3.3.1、Query.setFirstResult();开始记录 13.3.3.2、Query.setMaxResults();每页显示的记录 13.3.3.3、Query.uniqueResult();返回的结果只有一条 13.3.4、连接(集合A,B) 13.3.4.1、内连接(A∩B) Select*fromA,B; 13.3.4.2、左外(A) Select*fromA,BwhereA.id==B.id(+) 13.3.4.3、右外(B) Select*fromA,BwhereA.id(+)==B.id 13.3.4.4、全外(A∪B) Select*fromA,B 13.3.5、聚集函数(max,count) 13.3.6、子查询 13.3.7、分组与排序(groupby,desc,asc,orderby) 14、MVC补充 15、JavaScript 15.1、引入js有两种方式: 15.1.1、 15.1.2、 15.1.3、脚本不能用时,用 15.2、数据类型: 原始类型(栈): undefined、null、boolean、number、String,引用类型(堆): Object *如果new一个对象时,该对象没有参数可以直接newObject; 15.3、类型转换: toString(2/8/16),parseInt(),parseInt() *javascript没有函数重载,就近调用 *JavaScript是一门动态语言(用java来描述卵细胞,蝌蚪,青蛙是不同的三个对象) 15.4、DOM(DocumentObjectModel) 15.4.1、Document对象的常用方法: getElementById(),getElementsByName(),getElementsByTagName(), 15.4.2、元素对象的常用方法: createElement,removeChild(node),appendChild(node),parentNode,replaceChild,insertBefore,createElement,createTextNode,lastChild,firstChile,childNodes,previousSibling,nextSibling,setArrribute,getArrribute,removeAttribute,nodeType,nodeValue,nodeName 元素 属性 文本 nodeType 1 2 3 nodeValue 属性值 文本值 nodeName 标签 属性名称 #text 15.4.3、DOM事件模型: 冒泡,捕获 15.4.3.1、事件对象 15.4.3.1.1.1、IE: window.event 15.4.3.1.1.2、DOM: event=arguments[0](方法) 15.4.3.2、事件源 15.4.3.2.1、IE: event.srcElement 15.4.3.2.2、DOM: event.target 15.4.3.3、事件类型 15.4.3.3.1、鼠标: click、dbclick,mousedown,mouseup,mouseout,mouseover,mousemove 15.4.3.3.2、键盘: keyDown,keyPress,keyUp 15.4.3.3.3、系统: load,unload,select,change,focus,blur,resize,scroll 15.4.3.3.4、停止冒泡: IE: event.cancelBubble=true;DOM: event.stopPropagation(); 15.4.3.3.5、取消默认行为,IE: event.returnValue=false;DOM: event.preventDefault(); 15.4.3.3.6、`为一个元素添加监听器: DOM: addEventsListener(事件名,事件方法,冒泡/捕获),removeEventListener,IE: attachEventListener,deleteEventListener 15.5、Jquery 15.5.1、作用: 获取元素,操作DOM,操作CSS,响应事件,Ajax,小动画 15.5.2、优势: 跨越浏览器,面向对象(集合操作),连缀
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 沙舟狼客 JavaEE 笔记