编程开发 > JAVA > 文章内容

java基础知识总结(156)

2016-9-24编辑:ljnbset

1、dao的改进

         step1 实体类

         step2 dao接口

         step3 dao实现

         step4 工厂

                   工厂是什么?

                            工厂类将一个对象的创建过程对外屏蔽,调用者

                   不需要了解对象的创建过程,只需要调用工厂类

                   的相应方法就可获得符合相应接口规范要求的

                   对象。

                   类的加载:

                            jvm会将内存空间划分成三部分,分别是

                   堆、栈、方法区。

                            jvm在执行java代码时,如果碰到一个类型

                   ,比如Student,会先检查方法区当中,有没

                   有Student class对象。如果没有,则调用

                   ClassLoader(类加载器),ClassLoader会依据

                   classpath搜索Student.class文件,将该文件转换

                   成方法区中的一个对象(即Student class对象)。

2、将中文参数值保存到数据库

         step1

                   html文件,添加

content="text/html; charset=UTF-8">

                   表单要采用post方式提交。

         step2 在servlet类当中,添加

         request.setCharacterEncoding("utf-8");

         step3 将连接数据库的url改成:

         jdbc:mysql://localhost:3306/jd1202db?

         useUnicode=true&characterEncoding=utf8

         明确告诉jdbc驱动程序,保存在数据库中的数据

         的编码格式是什么。

3、一个servlet如何处理多个不同的请求。     

         1)servlet容器(tomcat)如何处理请求资源路径?

         比如,在浏览器地址栏输入

         http://ip:port/appname/abc.html,浏览器会将

         "/appname/abc.html"作为请求资源路径放到

         请求数据包里面,发送给servlet容器(tomcat)。

                   step1 查找webapps下的appname文件夹,找到

                   web.xml文件,然后比较"/abc.html"与

                   的配置。

                   step2 按照如下方式比较:

                            精确匹配: 要求必须也是/abc.html。

                            通配符匹配: 使用"*"代表任意的字符。

                                     /*

                            后缀匹配: 使用*.任意的字符串。

                                     比如:

                                     *.do

                            表示所有以.do结尾的请求资源路径都匹配。

                   step3 容器会将请求资源当作是一件静态资源,

                   查找对应的资源文件是否存在,存在,则返回,

                   不存在,返回404。

         2)      让一个servlet处理多个请求.

                   step1 该servlet使用后缀匹配模式。

                   step2 在servlet的service方法里面,分析

                   请求资源路径,依据分析结果采取不同的处理。//返回请求资源路径

                            String request.getRequestURI();

         练习:

                    使用一个servlet(ActionServlet)来实现学生信息

                   管理。

4、servlet的生命周期及相关的核心类与接口

         1)核心类与接口

                   a,Servlet接口

                            init(ServletConfig config):容器

                            在创建一个servlet对象之后,会立即调用

                            该方法。容器在调用init方法之前,会先

                            创建一个ServletConfig对象。也就是说,

                            ServletConfig对象会作为参数传递给servlet

                            对象。

                            service(ServletRequest request,

                            ServletResponse response):容器收到客户端的

                            请求之后,会调用该方法来处理请求。

                            destroy(): 容器在销毁servlet对象之前,会调用

                            该方法。

                   b,GenericServlet抽象类(实现了Servlet

                   接口中的init,destroy方法)

                   c,HttpServlet抽象类(继承GenericServlet,

                   实现了service方法)

                   d,ServletConfig接口:

                            //访问servlet的初始化参数,在web.xml文件当中

                            //使用配置的参数。

                            String getInitParamter(String paraName);

                            如何配置servlet初始化参数?

                                     web.xml中,添加

                                    

                                            author

                                            tarena

                                  

                   e,ServletRequest是HttpServletRequest的父接口。

                   ServletResponse是HttpServletResponse的父接口。

         2)生命周期

                   servlet容器如何创建servlet对象,然后分配

         其资源,调用其方法完成请求处理,最后销

         毁servlet对象的整个过程。

                   第一阶段: 实例化

                            当请求到达容器时,容器会先检查对应的

                            servlet对象是否存在,如果不存在,则

                            创建servlet对象,如果存在,不再创建。

                   第二阶段: 初始化

                            容器接下来,会调用servlet对象的init方法。

                            该方法只会执行一次,用于初始化。

                            init方法可以override,建议

                            override init()。

                            而不是override init(ServletConfig)

                   第三阶段:就绪

                            容器调用servlet对象的service方法来处理请求。

                   第四阶段:销毁

java基础知识总结(155)

热点推荐

登录注册
触屏版电脑版网站地图