目录
第一章服务器环境搭建 (2)
1.Tomcat服务器环境搭建 (2)
2. tomcat文件结构 (2)
第二章Servlet (3)
1.定义: (3)
2.servlet的生命周期 (3)
3.使用MyEclipse创建servlet流程 (3)
4.Web Project文档目录说明 (4)
5.web.xml的配置归纳 (4)
[1]配置servlet类 (4)
[2]配置Servlet的实例化顺序: (5)
[3]配置初始化参数 (5)
[4]配置ServletContext (5)
[5]配置Session有效时间 (6)
6. doget()和dopost()向servlet发送请求的区别 (6)
7.servlet的类和接口 (6)
7.1javax.servlet包: (7)
(1)Servlet接口: (7)
(2)ServletConfig接口:servlet 配置对象 (7)
(3)ServletContext接口:ServletContext(服务器-公共空间) (8)
(4) ServletRequest接口: (9)
(5)ServletResponse接口: (10)
(6) Filter接口:过滤器 (10)
(7) ServletContextListener接口:监听器 (12)
7.2javax.servlet.http包: (14)
(1) HttpSession接口:session(服务器-浏览器空间) (14)
(2)HttpServletRequest接口 (15)
(3)HttpServletResponse接口 (15)
(4) HttpServlet类 (15)
(5) Cookie类 (16)
第三章常用技术归纳 (17)
1.参数传递归纳: (17)
2.在Servlet中操作数据库 (18)
3.分页显示技术 (18)
4.数据库连接池技术 (18)
第一章服务器环境搭建
1.Tomcat服务器环境搭建
(1)环境变量配置
①java-path: //配置JDK
②tomcat-path: //配置服务器主目录
(2)服务器端口配置
在server.xml文件中Connector标签:四位数,最多65523,但一般网络用80开头
(3)启动服务启:执行Bin目录下的startup.bat脚本文件。
(4)浏览器中进入服务器
localhost:8080 //本机服务器
127.0.0.1:8080 //本机服务器
192.168.1.216:8080 //服务器ip地址:端口号
2.tomcat文件结构
(1)在tomcat文件目录中新建项目
tomcat->webapps下新建项目文件夹
WEB-INF的文件结构
/classes:servlet的class文件
/lib:jar包
web.xml:Servlet的配置文件
web.xml的全部内容
第二章Servlet
1.定义:
服务端的java程序。
servlet只有一个对象。支持多线程,无成员属性,不会资源不一致。
方法变量属于各线程计数器管理。
2.servlet的生命周期
①浏览器:http请求->服务器:查找web.xml
②-->无Servlet对象就实例化Servlet->调用init()方法初始化->service()方法
有Servlet对象->调用service()方法(判断请求的类型,调用对应的方法)
③-->response()方法响应浏览器
④-->关闭服务器,调用destroy(),销毁对象。
3.使用MyEclipse创建servlet流程
①将Tomcat服务器添加到MyEclipse
Servers选项卡-Configure Servers Connector
选择自己的服务器类型,指定路径,完成添加。
②创建web_project
java EE version :JavaEE 6 -web3.0
Java version :1.7
③创建Servlet继承HttpServlet,重写doGet()和doPost方法
④配置web.xml
servlet的名称、bao.类;
servlet映射的名称、路径
⑤发布程序到服务器
Deploy MyEclipse J2EE Project to Server
⑥在浏览器发送请求
http://localhost:8001/Servlet/test1
地址:端口/项目名/类名
4.Web Project文档目录说明
webRoot根目录
META-INF:配置文件
WEB-INF->
/lib:jar包
web.xml:将覆盖Tomcat服务器中的web.xml
5.web.xml的配置归纳
[1]配置servlet类
①servlet的名称、bao.类;②servlet映射的名称、路径
[2]配置Servlet的实例化顺序:
n为正整数:在服务器启动的时候实例化该Servlet,
n为负整数:在第一次请求的时候实例化该Servlet(默认)。加载顺序:越大越先加载。
[3]配置初始化参数
[4]配置ServletContext
[5]配置Session有效时间
6. doget()和dopost()向servlet发送请求的区别
表单可以使用get和post请求,其余控件如超链接都是使用get请求。
3、在scr目录下的com.ht.servlet编写AcountBean.java文件,代码如下:package com.ht.servlet; public class AccountBean { private String username = ""; private String password = ""; public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getUsername() { return username; } public void setUsername(String username) { https://www.doczj.com/doc/35670312.html,ername = username; } } 4、在scr目录下的com.ht.servlet编写servlet类CheckAccount.java文件,代码如下: package com.ht.servlet; import java.io.IOException;第一、二课 所需jar包,本次使用版本是spring3.2.3 Ps:spring的文件用上面的基本够了,但是整个过程可能需要很多的commons 软件,如fileupload,io,lang包 SpringMVC demo案例 1、加入相关jar包 2、web.xml配置
3、springMVC-servlet.xml
1 课程回顾 Servlet编程 1)Servlet生命周期(重点) 构造方法:创建servlet对象。默认情况下,第一次访问servlet对象时。只调用1次。 init方法(有参):创建完servlet对象后调用。只调用1次。 注意:会调用无参的init方法。 service方法:servlet提供服务的方法。每次发出请求调用。 注意:request对象,response对象 destroy方法:tomcat服务器停止或web应用重新部署,servlet对象销毁,destroy方法被调用。 2)ServletConfig对象 获取servlet的初始化参数: getInitParameter("name "); getInitParameterNames(); 3)ServletContext对象 得到web应用路径: context.getContextPath(); request.getContextPath(); 等价于上面的代码 得到web应用参数: context.getInitParameter("name"); context.getInitParameterNames(); 域对象: context.setAttribute("name",Object): 保存数据 context.getAttribute("name") 得到数据 context.removeAttribue("name") 清除数据 转发 context.getRequestDispatcher("路径").forward(request,response); request.getRequestDispacher("路径").forward(request,response); 等价于上面的代码得到web应用中的资源文件 context.getRealPath("路径") context.getResourceAsStream("路径"); 今天的目标:会话管理 2. 会话管理入门 2.1 生活中会话 我:小张,你会跳小苹果码? 小张:会,怎么了? 我:公司年会上要表演节目,你教教我把 小张:没问题,一顿饭而已。 我:OK。 。。。。。。。。
第一课 第二课tomcat 简单模拟
package com.my.first; import java.io.*; import https://www.doczj.com/doc/35670312.html,.*; publicclass Mytomcat { /** * @param args */ publicstaticvoid main(String[] args) throws Exception { ServerSocketss = new ServerSocket(9999); Socket s = ss.accept(); System.out.println("在9999上等待。。。"); OutputStreamos =s.getOutputStream(); BufferedReaderbr = new BufferedReader(new FileReader("f:\\hello.html")); String str=""; while((str = br.readLine())!=null){ os.write(str.getBytes()); } br.close(); os.close(); s.close(); // ss.close(); } } 在浏览器中输入 http://localhost:9999 就会出现“hello world” 第三课 启动tomcat 各种问题总结
第四课
第五课 虚拟目录 如在f盘存放着各种web应用,但是空间不够了,这是我在d盘弄个文件当做该web应用的文件。但是要在server.xml中指定一下。 步骤:1、在那个磁盘下建立“f:\web2”,并建立相关的资源文件 2、在server.xml中配置
JSP基础语法 一、 JSP基础语法 (5) 1. JSP注释 (5) (1) (5) (2) <% //注释 %> (5) (3) <%-- 注释 --%> (5) 2. JSP脚本代码 (5) (1) 定义全局变量、方法、类 (5) (2) 定义局部变量、或编写Java语句 (5) (3) 输出语句 (5) 3. page指令 (5) (1) page指令语法 (5) (2) page指令例子 (5) ● 设置MIME类型(contentType属性) (6) ● 设置编码(pageEncoding属性) (6) ● 错误页的设置(errorPage属性) (6) ● 导包操作(import属性) (6) 4. JSP动作指令 (6) (1) JSP的7个动作指令 (6) (2) 跳转指令(jsp:forward) (6) ● jsp:forward语法 (6) ● 例子 (6) (3) 参数传递指令(jsp:param) (6) ● jsp:param语法 (6) ● jsp:param指令的作用 (6) (4) 包含指令(jsp:include) (6) ● 静态包含(include不常用) (6) ● jsp:include语法 (6) ● 动态包含(
Struts1 (1) Struts1和Servlet的关系 (1) 创建第一个Struts1项目 (1) 例子1: (3) 总结重点:struts1的工作流程(基于MVC模式的) (7) 一.普通的Servlet的工作流程 (7) 二.Structs1的工作流程(和上面的对比记忆) (8) Struts标签 (9) Bean标签 (9) html标签 (10) logic标签(逻辑标记) (12) i18n(国际化) (13) Struts1 Struts1和Servlet的关系 Jsp+Servlet+Javabean ActionForm和VO的区别: 一样的内容,不一样的作用 ActionForm只接收前台表单传来的数据 VO是conga后台提取的数据向前台传递 创建第一个Struts1项目 新建一个web项目,选择1.4即可 右键----MyEclipse----Add Struts Capacity
---------------Struts控制文件的路径 TLD(标签) 1) 2)
①spring是什么? struts 是 web 框架 (jsp/action/actionfrom) hibernate 是 orm框架,处于持久层. spring 是容器框架,用于配置bean,并维护bean之间关系的框架 ?spring中有一个非常概念: bean (是java中的任何一种对象javabean/service/action/数据源./dao, ioc(控制反转inverse of control) di( dependency injection 依赖注入) ?画一个框架图 快速入门 开发一个spring项目. 1.引入spring的开发包(最小配置该包把常用的jar都包括, 还要写日志包 2.创建spring的一个核心文件 , [hibernate有核心 struts核心文件 ], 该文件一般 放在src目录下,该文件中引入 xsd文件: 可以从给出的案例中拷贝一份. 3.配置bean
J2EE学习笔记 注:框架可以用Word菜单中的“视图/文档结构图”看到 J2EE模式 Value Object(值对象) 用于把数据从某个对象/层传递到其他对象/层的任意Java对象。通常不包含任何业务方法。 也许设计有公共属性,或者提供可以获取属性值的get方法。 JSP 1.JSP的基础知识 __ _____ | directive (指令) | |-- scripting (脚本) JSP -------| |__ action (动作) | |_____Template data :除JSP语法外,JSP引擎不能解读的东西 1)在JSP中使用的directive(指令)主要有三个: a)page指令 b)include指令 c)taglib指令 在JSP的任何地方,以任何顺序,一个页面可以包含任意数量的page指令 2)Scripting(脚本)包括三种类型 a)<%!declaraction %> b)<% scriptlet %> c)<%= expression %> 3)action(动作) 标准的动作类型有: a)
e)
1.Java语言中,字符串是对象类型,而字符是数据类型。 2.一旦使用了关键是strictfp来申明某个类、接口或者方法时,那么在这个关键字所声明 的范围内所有浮点运算都是精确的,符合IEEE-754规定的。如果一个类被声明为strictfp,那么该类中所有的方法都是strictfp。 3.String s1 = new String(“abc”) 该语句创建了两个对象。”abc”被创建与文字池中,s1在堆中被创建。 4.数组不能直接指定列数或者行数,应在创建对象时指定。Int iArray[][] = new int[3][4]。 5.请描述Java Servlet API中forward()与redirect()的区别? 答:前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址。 后者则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。所以,前者更加高效,在前者可以满足需要时,尽量使用forward()方法,并且,这样也有助于隐藏实际的链接。在有些情况下,比如,需要跳转到一个其他服务器上的资源,则必须使用sendRedirect()方法。 6.JSP和Servlet有哪些相同点和不同点?它们之间的联系是什么? 答:JSP是Servlet技术的扩展,本质上是Servlet的简易方式,更强调应用的外表表达。 JSP编译后是”类Servlet”。Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离出来。而JSP的情况是Java和HTML 可以组合在一个扩展名为.jsp的文件。JSP侧重于视图,Servlet主要用于控制逻辑。 7.Servlet执行时一般实现哪几个方法? 答:public void init(ServletConfig config) Public ServletConfig getServletConfig() Pubic String getServletInfo() Public void service(ServletRequest request, ServletResponse response) Public void destroy() 8.请简介依赖注入机制。 答:所谓依赖注入,是指程序运行过程中,如果需要调用另一个对象协助,无须在代码中创建被调用者,而是依赖于外部的注入。Spring的依赖注入对调用者和被调用者几乎没有任何要求,完全支持对POJO之间的依赖关系的管理。依赖注入通常有两种:设值注入和构造注入。 9.Hibernate的优点是什么? 答:Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲地使用对象编程思维来操纵数据库。Hibernate 可以应用在任何使用JDBC的场合,既可以在Java的客户端使用,也可以在Servlet/Jsp 的Web应用中使用。最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据库持久化的任务。 10.Session和Cookie的区别和联系。 答:cookie机制采用的是在客户保持状态的方案,而session机制采用的是在服务器端保持状态的方案。
Java: Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。 Java JDK 9学习笔记: 《Java JDK 9学习笔记》是作者多年来教学实践经验的总结,汇集了学员在学习Java 或认证考试时遇到的概念、操作、应用等问题及解决方案。 基本信息: 《Java JDK 9学习笔记》是作者多年来教学实践经验的总结,汇集了学员在学习Java 或认证考试时遇到的概念、操作、应用等问题及解决方案。《Java JDK 9学习笔记》针对Java SE 9 新功能全面改版,无论是章节架构或范例程序代码,都做了重新编写与全面翻新,并详细介绍了Java 9 的模块化,JVM、JRE、Java SE API、JDK 与IDE 之间的对照关系。必要时可从Java SE API 的源代码分析,了解各种语法在Java SE API 中如何应用。对于建议练习的范例提供了Lab 文档,以突出练习重点。此外,《Java JDK 9学习笔记》还将IDE 操作纳为教学内容之一,让读者能与实践相结合,轻松快速掌握Java 编程技巧。《Java JDK 9学习笔记》适合Java 的初、中级读者以及广大Java 应用开发人员阅读。 作者简介: 林信良(网名:良葛格),毕业于台湾大学电机工程学系。擅长
技术写作、翻译与教育培训。喜好研究程序语言、框架、社群,从中学习设计、典范及文化,并利用闲暇之余记录所学技术,涵盖C/C++、Java、Ruby/Rails、Python、JavaScript、Haskell、OpenSCAD 等领域。目前出版的著作有《JSP & Servlet学习笔记(第2版)》《Spring技术手册》《Java JDK 8 学习笔记》等,译作有《Ajax实战手册》《jQuery实战手册(第2版)》。
weblogic培训笔记(转载) 上一篇/ 下一篇 2009-05-21 16:29:55 / 个人分类:服务配置 查看( 97 ) / 评论( 0 ) / 评分( 0 / 0 ) weblogic Server内部结构和相关的配置 weblogic Server内部结构图: (一) 原理简单说明 服务器启动,就会绑定到相应的端口,并为一个端口分配一个线程以接受连接请求,一旦服务器接受到连接请求并建立好连接以后,监听线程将处理权交给套接字复用器,套接字复用器进行一定的处理,并会负责选择利用那个执行队列并将请求置入其中。当有一个请求进入执行队列,就会有一个空闲的执行县城从该队列里面取走并向调用者返回结果。 (二) 执行队列和执行线程的相关配置 执行线程数量有一定的限制,在服务器启动的时候,就已经形成了一个含有一定数量执行线程的池,执行线程可能跨servlet,ejb和jdbc等,由于执行线程仅当程序成功结束或者出现异常才能被释放继续处理其他请求,所以如果执行线程执行的不够快,而请求又多的情况下,就会造成执行队列的阻塞。 相关的配置信息有:
server菜单—〉configuration页---〉高级配置---〉Config Execute Queues中的配置项如下: 1、Queue Length队列长度,执行队列的长度 2、Queue Length Threshold Percent 一个百分数,当request的数量达到队列长度的这个比例的时候,weblogic会发出overflow的标志信息。 3、Thread Count 服务器初始创建的执行线程的数量 4、Thread Increase 如果weblogic发出overflow的标志信息,weblogic会尝试增加这个数量的执行线程,以解决处理矛盾。 5、Threads Maximum最大执行线程数 6、Threads Minimum最小执行线程数 7、Thread Priority线程优先级 另外server菜单—〉configuration页---〉tuning子页中还有一些相关的配置: 1、 Stuck Thread Max Time 黏联线程时间,超过这个时间没有返回的执行线程,系统将认为是黏联线程。 2、 Stuck Thread Timer Interval 系统检查黏联线程的时间间隔 如果weblogic认为某个队列中的所有的线程全部黏联的话,weblogic将会增加执行线程的数量。 注意:执行线程的数量一旦增加,目前weblogic不会去减少他,如果增加了一些线程以后再次出现overflow 的警告,weblogic会继续增加执行线程的数量,一直到达到上限为止。 (三) 套接字复用器的相关配置
韩顺平jsp学习笔记 jsp u j2ee核心13种技术: 程序员必须掌握的技术:java,servlet,jsp。 13种技术规范. u j2ee程序员修炼成精法门 u jsp 版本的用户管理系统:将servlet版本改为jsp版本,只使用jsp技术完成(modle1模式开发) 并且在后面可通过jsp版的用户管理系统的改写,非常自然过渡到mv设计模式,更进一步到mvc设计模式 开发工具:myeclipse u jsp概述: jsp是servlet技术的补充,访问jsp的过程:如果是第一次访问,jsp文件被服务器翻译成一个对应的java文件(servlet),然后,再被编译成.class文件并加载到内存中。如果是以后访问jsp,那就直接调用内存中的jsp实例,所以,第一次访问jsp慢,后面访问jsp的速度就会变快了。(hello.jsp来说明运行原理:tomcat下的work下有将jsp转换为servlet的代码) 1. 为什么出现:程序员在开发过程中,发现servlet做
界面非常不好,jsp对servlet的补充(对界面的补充,jsp界面好做) 2. jsp=html+java片段+jsp标签(语法)+javascript(css):综合 3. jsp功能的强大是因为可以与javabean结合使用(即:jsp作前台(界面),javabean作后台(逻辑层))。 4. Jsp是什么:1.jsp运行在服务器,2.jsp(java server page)3。Jsp基础是servlet(相当于对servlet的包装)4.jsp 是综合技术:一个公式:jsp=html+java代码+jsp标签 +javascript(css) 比较综合5.jsp无需配置,直接使用,如果你修改了jsp文件,不需要重新reload web应用6.jsp如何访问:http://ip:8088/web应用名.jsp路径u jsp的概述:元素 1. 指令元素 2. 脚本元素 3. 动作元素 u jsp与servlet的关系: 1. jsp与servlet是对应关系 2. jsp是以servlet为基础的 u 编写一个计算器的实例: 1. 表单提交处理的jsp页面为:<form action=”chuli.jsp”>
1、02_尚学堂马士兵_Struts2_Struts2_HelloWorld_2.avi 指定Tomcat的目录,指定JDK搭建开发环境(拷贝jar包,复制struts.xml 文件此文件不要放在WEB-INF下面,应该放到src下面),在web.xml文件中:
java基础学习心得 java基础 1.java程序是由1个或者n个class组成的程序 2.编写---javac进行编译------java进行执行 3.类名的命名:规范:第一个字母要大写第一字母必须是字母下划线美圆符号人民币符号// 4.不是第一个字母的话可以是数字 5.文件名和类名的关系如果class前面没有public 是可以不一样的但是如果有的话必须一样 6.两个byte short类型进行加减乘除的时候返回的结果是int类型 /* 需求:定义一个hello world小程序。 步骤: 1,通过class关键字定义一个类。将代码都编写到该类中。 2,为了保证该的独立运行。在类中定义个主函数。格式public static void main(string args) 3,保存成一个扩展名为java的文件。 4,在dos控制台中通过javac工具对java文件进行编译。 5,在通过java命令对生成的class文件进行执行。 */ class demo//定义一个类。 { //主函数。 public static void main(string args) { //输出语句。 system.out.println(); } } 6.字符串数据和任何数据使用+都是相连接,最终都会变成字符串。 system.out.println(+(5+5));// 转义字符:通过来转变后面字母或者符号的含义。 n:换行。 b:退格。相当于backspace。
r:按下回车键。window系统,回车符是由两个字符来表示rn. t:制表符。相当于tab键。 7.if else 结构简写格式:变量 = (条件表达式)?表达式1:表达式2; 三元运算符: 好处:可以简化if else代码。 弊端:因为是一个运算符,所以运算完必须要有一个结果。 class operatedemo { public static void main(string args) { int x= 7; //逻辑运算符用于连接boolean类型的表达式。 //x>3 & x第三篇:java学习心得笔记 j2ee学习笔记 注:框架可以用word菜单中的“视图/文档结构图” 看到 j2ee模式 value object(值对象)用于把数据从某个对象/层传递到其他对象/层的任意java对象。 通常不包含任何业务方法。 也许设计有公共属性,或者提供可以获取属性值的get方法。 jsp 1.jsp的基础知识 __ _____ |directive(指令) | |-- script(敬请期待好范文网更好文章:https://www.doczj.com/doc/35670312.html,)ing jsp -------| |__ action | |_____template data :除jsp语法外,jsp引擎不能解读的东西 1)在jsp中使用的directive(指令)主要有三个: a) page指令 b) include指令 c) taglib指令 在jsp的任何地方,以任何顺序,一个页面可以包含任意数量的page指令 2)scripting包括三种类型
JSP 期末考试题 程序员笔记精华 针对以下题目请选择正确的答案(每道题目有一个或多哥正确的答案)。每一道题目,所有答案都选对,则该题加分,所选答案错误或不能选出所有正确答案,则该题不得分。 1)在JSP中,要定义一个方法,需要用到以下()元素。(选择一项) a) <%= %> b) <% %> c) <%! %> d) <%@ %> 2)JSP页面经过编译之后,将创建一个()。(选择一项) a) applet b) servlet c) application d) exe文件 3)当JSP页面执行自定义标签,遇到结束标签时将调用()方法执行处理。(选择一项) a) doStartTag() b) doEndTag() c) doInitBody() d) doAfterBody() 4) 在J2EE中,test.jsp文件中有如下一行代码:(选择一项)
! Struts视频笔记: Struts是一个开源的web框架,框架提高了程序的规范的同时也约束了程序员的自由 为什么会有struts: 因为我们队mvc理解的不同,可能造成不同公司写程序的时候,规范不统一,这样不利于程序的维护和扩展,所以我们有必要用一个统一的规范来开发项目(struts) Struts 的好处: 程序更加规范化,开发效率提高了,可读性增加了,程序的可维护性增加了 ^ 运行原理: 一个请求从浏览器发送给web服务器,,web服务器首先解析主机然后解析web应用的名称 在解析出资源名转发给总司令ActionServlet(该类由struts框架提供给我们的无需编写,只需配置)ActionServlet有一个文件,该文件配置了表单actionForm(军火库),还配置了action,以及他们之间的对应关系,当ActionServlet拿到命令后它会查询文件去填充数据,把用户的数据填充到表单里边,下个动作就是去调用指定的action(小队长),action去从表单中读取数据,调用某个model(士兵,如service)完成任务,完成任务把结果返回给ActionServlet总司令(返回一个执行的结果),-->总司令又去查询文件,决定跳转到哪个jsp页面,返回一个执行结果(形成静态html文件)直接返回给web服务器服务器再把静态页面以h ttp响应给浏览器 ,登录小项目过程步骤: 新建web工程导入struts包编写编写actionForm和action 配置编写和配置测试 中的