于笑扬java综合知识点总结 必背
更新时间:2023-12-01 08:18:01 阅读量: 教育文库 文档下载
- 于笑扬 java推荐度:
- 相关推荐
目录
目录.............................................................................................................................. 1 基础篇.......................................................................................................................... 3
一、JDK常用的包 ................................................................................................ 3 二、 Get和Post的区别 ..................................................................................... 4 三、 Java多态的具体体现 ................................................................................. 4 四、 StringBuffer StringBuilder String 区别 ....................................................... 4 五、 Hashtable与HashMap的区别 .................................................................. 5 六、 九大隐式对象............................................................................................. 5 七、 Forword(请求转发)与Redirect(重定向) .................................................... 5 八、JQurey总结 .................................................................................................. 5 九、 XML和Json的特点 ................................................................................... 5 十request.getSession() reqeust.getSession(false)和request.getSession(true) .. 6 十一、 Page和PageContext的区别 ................................................................. 6 十二、 Ajax总结 ................................................................................................. 6 十三、JSP9大隐视对象中四个作用域的大小与作用范围 .............................. 7 十四、 List,Set,Collection,Collections ................................................................. 7 十五、 java的基本数据类型 ............................................................................. 7 十六、 冒泡排序................................................................................................. 7 十七、二分查找法............................................................................................... 8 十八、时间类型转换........................................................................................... 8 十九、 阶乘......................................................................................................... 9 二十、UE和UI的区别 ....................................................................................... 9 二十一、osi七层模型 ......................................................................................... 9 二十二、线程和进程的区别............................................................................... 9 二十三、jvm的内存结构 ................................................................................ 10 二十四、内存泄露和内存溢出....................................................................... 10 二十五、单例................................................................................................... 10 二十六、解析xml文件的几种技术 ............................................................... 11 二十七、项目的生命周期............................................................................... 12 二十八、OSCache的判断 ............................................................................... 12 二十九、经常访问的技术网站....................................................................... 13 三十、项目团队中交流的工具....................................................................... 13 三十一、平时浏览的书籍............................................................................... 13 三十二、java Exception体系结构 .................................................................. 13 三十三、session和cookie的区别 ................................................................. 14 三十四、字节流与字符流的区别................................................................... 14 三十五、final,finally,finalize 三者区别 .......................................................... 15 三十六、Io流的层次结构 .............................................................................. 15 三十七、JAVA: .................................................................................................. 16 三十八、JavaSE JavaEE JavaME区别 .............................................................. 16
1
三十九、JDK JRE JVM的区别: ............................................................... 17 四十、报错的状态码:................................................................................... 17 四十一、协议以及默认的端口号................................................................... 17 四十二、抽象类与接口的区别....................................................................... 18 四十三、修饰符的作用................................................................................... 18 框架篇...................................................................................................................... 19
一、 Struts1的运行原理 ................................................................................ 20 二、 Struts2的运行原理 ................................................................................ 20 三、 struts2的体系结构 ................................................................................ 20 四、 Spring MVC运行原理 ............................................................................. 21 五、 Struts1.x与Struts2.x的区别 ................................................................. 22 六、 Spring MVC、struts1和struts2区别 .................................................... 22 七、 Struts2中result中的type类型............................................................ 23 八、 Struts2标签 ............................................................................................ 23 九、 SSI整合 ................................................................................................... 23 十、 SSH整合 ................................................................................................. 24 十、 Spring MVC整合 ..................................................................................... 24 十一、Hibernate 中get 和 load的区别 ...................................................... 25 十二、 Hibernate、Ibatis、Jdbc三者的区别 ............................................... 25 十三、 Hibernate的运行原理 ....................................................................... 25 十四、 Hibernate五大核心(类/接口)简述 .............................................. 25 十五、 Hibernate与JDBC的区别 ................................................................. 26 十六、Hibernate中的两大配置文件 ............................................................. 26 十七、 Hibernate事务处理 ........................................................................... 26 十八、 Hibernate的三种状态以及状态的转换 ........................................... 26 十九、 分页步骤............................................................................................. 27 二十、hibernate缓存概述 .............................................................................. 27 二十一、Ssh的概述: .................................................................................... 27 二十二、防止表单重复提交........................................................................... 28 二十三、JSP标签: ........................................................................................ 28 二十四、过滤器............................................................................................... 29 二十五、拦截器的理解................................................................................... 29 二十六、Spring融入框架 ............................................................................... 30 数据库篇.................................................................................................................. 30
一、 JDBC连接数据库步骤(以MYSQL为例)................................................ 30 二、 数据库连接池......................................................................................... 31 三、 mysql的数据库导入导出 ...................................................................... 31 四、 jdbc分段批量提交的时候出现异常怎么处理? ................................... 32 五、 jdbc批量处理数据 ................................................................................. 32 六、 Oracle分页 ............................................................................................. 33 七、 Oracle的基本数据类型 ......................................................................... 33 八、 id、rowid、rownum的区别.................................................................. 34 九、 主键和唯一索引的区别?..................................................................... 34 十、 Preparedstatement和statement的区别 .............................................. 34
2
十一、 数据库三范式..................................................................................... 34 十二、 视图概述............................................................................................. 35 十三、 存储过程概述..................................................................................... 35 十四、 索引概述............................................................................................. 36 十五、 必背的sql语句 .................................................................................. 37 业务场景篇.............................................................................................................. 40
一、 Spring的概述 ......................................................................................... 40 二、 事务概述................................................................................................. 41 三、 权限概述................................................................................................. 42 四、 OSCache业务场景 ................................................................................. 43 五、 线程概述................................................................................................. 43 六、 Ajax请求Session超时问题 ................................................................... 44 七:java线程池概述 ....................................................................................... 44 八、 OSCache概述 ......................................................................................... 45 九、 OSCache+autocomplete+单例业务场景 ................................................ 46 十、 缓存概述................................................................................................. 46 十一、 实现页面静态化业务场景................................................................. 47 十二、 servlet线程安全描述 ........................................................................ 47 十三、 (jbpm4)工作流引擎描述:................................................................... 48 十四、 JPBM业务场景 ................................................................................... 49 十五、 Ant描述 .............................................................................................. 49 十六、 FreeMarker描述 ................................................................................. 50 十七、 webService描述 ................................................................................. 50 十八、 oracle索引概述 .................................................................................. 52 十九、 oracle存储过程 .................................................................................. 52 二十、Junit 业务场景 ..................................................................................... 53 二十一、Apache+Tomcat 实现负载均衡及seesion复制 ............................ 53 二十二、Ant业务场景 .................................................................................... 54 二十三、maven业务场景 ............................................................................... 54 二十四、Servlet的概述: .............................................................................. 55 优化篇...................................................................................................................... 61
一、 代码优化................................................................................................. 61 二、 业务优化................................................................................................. 62 三、 sql优化 ................................................................................................... 62 四、 防sql注入 .............................................................................................. 65
基础篇
一、JDK常用的包
java.lang: 这个是系统的基础类,比如String、Math、Integer、System和Thread, 提供常用功能。
3
java.io: 这里面是所有输入输出有关的类,比如文件操作等
java.net: 这里面是与网络有关的类,比如URL,URLConnection等。 java.util : 这个是系统辅助类,特别是集合类Collection,List,Map等。 java.sql: 这个是数据库操作的类,Connection, Statememt,ResultSet等
二、Get和Post的区别
1.get是从服务器上获取数据,post是向服务器传送数据, 2.get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。 3.get安全性非常低,post安全性较高。但是执行效率却比Post方法好。 4.在进行文件上传时只能使用post而不能是get。
三、Java多态的具体体现
面向对象编程有四个特征:抽象,封装,继承,多态。
多态有四种体现形式:
1. 接口和接口的继承。 2. 类和类的继承。 3. 重载。 4. 重写。
其中重载和重写为核心。
重载:重载发生在同一个类中,在该类中如果存在多个同名方 法,但是方法的参数类型和个数不一样,那么说明该方法被重 载了。
重写:重写发生在子类继承父类的关系中,父类中的方法被子 类继承,方法名,返回值类型,参数完全一样,但是方法体不 一样,那么说明父类中的该方法被子类重写了。
四、StringBuffer StringBuilder String 区别
String 字符串常量 不可变 使用字符串拼接时是不同的2个空间 StringBuffer 字符串变量 可变 线程安全 字符串拼接直接在字符串后追加 StringBuilder 字符串变量 可变 非线程安全 字符串拼接直接在字符串后追加
1.执行效率:StringBuilder>StringBuffer>String.
2.String是一个常量,是不可变的,所以对于每一次+=赋值都会创建一个新的对象,StringBuffer和StringBuilder都是可变的,当进行字符串拼接时采用append方法,在原来的基础上进行追加,所以性能比String要高,又因为StringBuffer是线程安全的而StringBuilder是线程非安全的,所以StringBuilder的效率高于StringBuffer.
3.对于大数据量的字符串的拼接,采用StringBuffer,StringBuilder.
4
五、Hashtable与HashMap的区别
HashMap不是线程安全的,HashTable是线程安全。 HashMap允许空(null)的键和值(key),HashTable则不允许。 HashMap性能优于Hashtable。 Map
1.Map是一个以键值对存储的接口。Map下有两个具体的实现,分别是HashMap和HashTable.
2.HashMap是线程非安全的,HashTable是线程安全的,所以HashMap的效率高于HashTable.
3.HashMap允许键或值为空,而HashTable不允许键或值为空.
六、九大隐式对象
输入/输出对象: request response out
作用域通信对象: session application pageContext Servlet 对象: page config 错误对象: exception
七、Forword(请求转发)与Redirect(重定向)
1、从数据共享上
Forword是一个请求的延续,可以共享request的数据 Redirect开启一个新的请求,不可以共享request的数据 2、从地址栏
Forword转发地址栏不发生变化 Redirect转发地址栏发生变化
八、JQurey总结
jquery是一个轻量级的js框架,具有跨浏览器的特性,兼容性好, 并且封装了很多工具,方便使用。
常用的有: 选择器 ,dom操作 ,ajax(ajax不能跨域) ,特效,工具类九、XML和Json的特点
Xml特点:
1、有且只有一个根节点; 2、数据传输的载体
3、所有的标签都需要自定义 4、是纯文本文件
Json(JavaScript Object Notation)特点: json分为两种格式:
5
private static Singleton2 single=null; public tatic Singleton2 getInstance() { if (single == null) {
single = new Singleton2(); }
return single; } }
线程安全:
public class Singleton3 { private Singleton3() {} private static Singleton3 single ; public static Singleton3 getInstance() { if(null == single){ synchronized(single ){ if(null == single){ single = new Singleton3(); } } } return single; } }
参考:
通过双重判断来保证单列设计模式在多线程中的安全性,并且它在性能方面提高了很多。 synchronized在方法上加锁 (同步锁)
synchronized在代码块内部加锁 (同步代码块) synchronized(同步锁)
使用synchronized如何解决线程安全的问题? 1.synchronized在方法上加锁 2.synchronized在代码块内部加锁 1.懒汉 2.饿汉 3.双重判断 二十六、解析xml文件的几种技术 1、 解析xml的几种技术 1.dom4j 2.sax 3.jaxb 4.jdom 5.dom
1.dom4j
11
dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。dom4j是一个非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件。
2.sax
SAX(simple API for XML)是一种XML解析的替代方法。相比于DOM,SAX是一种速度更快,更有效的方法。它逐行扫描文档,一边扫描一边解析。而且相比于DOM,SAX可以在解析文档的任意时刻停止解析,但任何事物都有其相反的一面,对于SAX来说就是操作复杂。 3.jaxb
JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项可以根据XML Schema产生Java类的技术。该过程中,JAXB也提供了将XML实例文档反向生成Java对象树的方法,并能将Java对象树的内容重新写到XML实例文档。从另一方面来讲,JAXB提供了快速而简便的方法将XML模式绑定到Java表示,从而使得Java开发者在Java应用程序中能方便地结合XML数据和处理函数。
2、dom4j 与 sax 之间的对比:【注:必须掌握!】
dom4j不适合大文件的解析,因为它是一下子将文件加载到内存中,所以有可能出现内存溢出, sax是基于事件来对xml进行解析的,所以他可以解析大文件的xml 也正是因为如此,所以dom4j可以对xml进行灵活的增删改查和导航,而sax没有这么强的灵活性 所以sax经常是用来解析大型xml文件,而要对xml文件进行一些灵活(crud)操作就用dom4j
二十七、项目的生命周期
1.需求分析 2.概要设计 3.详细设计(用例图,流程图,类图) 4.数据库设计(powerdesigner) 5.代码开发(编写) 6.单元测试(junit 白盒测试)(开发人员) svn版本管理工具(提交,更新代码,文档) 7.集成测试 (黑盒测试,loadrunner(编写测试脚本)(高级测试)) 8.上线试运行 (用户自己体验) 9.压力测试(loadrunner) 10.正式上线 11.维护
二十八、OSCache的判断
12
Object obj = CacheManager.getInstance().getObj(\
//从缓存中取数据 if (null == obj) { obj = brandDao.getBrandList();
//如果为空再从数据库获取数据
//获取之后放入缓存中 CacheManager.getInstance().putObj(\ } return (List
二十九、经常访问的技术网站
1.csdn(详细步骤的描述) 2.iteye(详细步骤的描述)
3.oschina(开源中国获取java开源方面的信息技术)
4.java开源大全 www.open-open.com(获取java开源方面的信息技术) 5.infoq(对java,php,.net等这些语言的一些最新消息的报道)
三十、项目团队中交流的工具
飞秋(局域网) qq(局域网,外网)
RTX(局域网,外网) 邮箱 (局域网,外网)
三十一、平时浏览的书籍
实战经验:
*** in action(实战) *** 深入浅出 *** 入门指南 思想基础:
大话设计模式 重构
三十二、java Exception体系结构
java 异常是程序运行过程中出现的错误。Java把异常当作对象来处理,并定义一个基类java.lang.Throwable作为所有异常的超类。在Java API中定义了许多异常类,分为两大类,错误Error和异常Exception。其中异常类Exception又分为运行时异常(RuntimeException)和非运行时异常(非runtimeException),也称之为不检查异常(Unchecked Exception)和检查异常(Checked Exception)。 1、Error与Exception Error是程序无法处理的错误,比如OutOfMemoryError、ThreadDeath等。 这些异常发生时,Java虚拟机(JVM)一般会选择线程终止。 Exception是程序本身可以处理的异常,这种异常分两大类运行时异常和非运行时异常。程序中应当尽可能去处理这些异常。 2、运行时异常和非运行时异常
13
运行时异常: 都是RuntimeException类及其子类异常: IndexOutOfBoundsException 索引越界异常 ArithmeticException:数学计算异常 NullPointerException:空指针异常 ArrayOutOfBoundsException:数组索引越界异常 ClassNotFoundException:类文件未找到异常 ClassCastException:造型异常(类型转换异常) 这些异常是不检查异常(Unchecked Exception),程序中可以选择捕获处理,也可以不处理。这些异常一般是由程序逻辑错误引起的。 非运行时异常:是RuntimeException以外的异常,类型上都属于Exception类及其子类。从程序语法角度讲是必须进行处理的异常,如果不处理,程序就不能编译通过。如: IOException、文件读写异常 FileNotFoundException:文件未找到异常 EOFException:读写文件尾异常 MalformedURLException:URL格式错误异常 SocketException:Socket异常 SQLException:SQL数据库异常
三十三、session和cookie的区别
session是存储在服务器端,cookie是存储在客户端的,所以安全来讲session的安全性要比cookie高,然后我们获取session里的信息是通过存放在会话cookie里的sessionid获取的。又由于session是存放在服务器的内存中,所以session里的东西不断增加会造成服务器的负担,所以会把很重要的信息存储在session中,而把一些次要东西存储在客户端的cookie里,然后cookie确切的说分为两大类分为会话cookie和持久化cookie,会话cookie确切的说是,存放在客户端浏览器的内存中,所以说他的生命周期和浏览器是一致的,浏览器关了会话cookie也就消失了,然而持久化cookie是存放在客户端硬盘中,而持久化cookie的生命周期就是我们在设置cookie时候设置的那个保存时间,然后我们考虑一问题当浏览器关闭时session会不会丢失,从上面叙述分析session的信息是通过会话cookie的sessionid获取的,当浏览器关闭的时候会话cookie消失所以我们的sessionid也就消失了,但是session的信息还存在服务器端,这时我们只是查不到所谓的session但它并不是不存在。那么,session在什么情况下丢失,就是在服务器关闭的时候,或者是session过期(默认时间是30分钟),再或者调用了invalidate()的或者是我们想要session中的某一条数据消失调用session.removeAttribute()方法,然后session在什么时候被创建呢,确切的说是通过调用getsession()来创建,这就是session与cookie的区别.
访问HTML页面是不会创建session,但是访问index.JSP时会创建session(JSP实际上是一个Servlet, Servlet中有getSession方法) 三十四、字节流与字符流的区别
stream结尾都是字节流,reader和writer结尾都是字符流
14
两者的区别就是读写的时候一个是按字节读写,一个是按字符。 实际使用通常差不多。
在读写文件需要对内容按行处理,比如比较特定字符,处理某一行数据的时候一般会选择字符流。
只是读写文件,和文件内容无关的,一般选择字节流。
三十五、final,finally,finalize 三者区别 Final是一个修饰符:
当final修饰一个变量的时候,变量变成一个常量,它不能被二次赋值
当final修饰的变量为静态变量(即由static修饰)时,必须在声明这个变 量的时候给它赋值
当final修饰方法时,该方法不能被重写 当final修饰类时,该类不能被继承
Final不能修饰抽象类,因为抽象类中会有需要子类实现的抽 象方法,(抽 象类中可以有抽象方法,也可以有普通方法,当一个抽象类中没有抽象方 法时,这个抽象类也就没有了它存在的必要)
Final不能修饰接口,因为接口中有需要其实现类来实现的方法 Finally:
Finally只能与try/catch语句结合使用,finally语句块中的语句一定会执行, 并且会在return,continue,break关键字之前执行 finalize:
Finalize是一个方法,属于java.lang.Object类,finalize()方法是GC (garbage collector垃圾回收)运行机制的一部分,finalize()方法是在 GC清理它所从 属的对象时被调用的
三十六、Io流的层次结构
从流的方向
输入流 输出流 从流的类型上 字符流 字节流
inputstream和outputstream都是抽象类 它们下面的实现包括
FileInputStream,BufferedInputStream FileOutputStream,BufferedOutputStream reader 和 writer
FileReader,BufferedReader,StringReader
FileWriter,BufferedWriter,StringWriter,PrintWriter
15
三十七、JAVA:
Java是面向对象的,跨平台的,它通过java虚拟机来进行跨平台操作,它可以进行自动垃圾回收的【c语言是通过人工进行垃圾回收】,java还会进行自动分配内存。【c语言是通过指定进行分配内存的】,只需要new一个对象,这个对象占用了多少空间,不需要我们来管,java虚拟机负责管这些,用完之后也不需要我们来释放,java虚拟机会自动释放
三十八、JavaSE JavaEE JavaME区别
是什么:
Java SE=Java Standard Edition=j2se = java 标准版 Java EE=Java Enterprise Edition=j2ee= java 企业版 Java ME=Java Mobile Edition=j2me = java移动版 特点:
16
SE主要用于桌面程序(swing),控制台开发(main程序)。 EE企业级开发(JSP,EJB,Spring MVC,Struts,hibernate,ibatis等), 用于企业级软件开发,网络开发,web开发。
ME嵌入式开发(手机,小家电,PDA)。[苹果的ios,黑莓] 三者之间的关系:
Java SE(Java Platform, Standard Edition,Java标准版)就是基于JDK和JRE的。 Java SE为Java EE提供了基础。
Java EE除了基于我们这个所谓的Java SE外,还新加了企业应用所需的类库
三十九、JDK JRE JVM的区别:
Jdk【Java Development ToolKit】就是java开发工具箱, JDK是整个JAVA的核心里边包含了jre,它除了包含jre之外还包含了一些javac的工具类,把java源文件编译成class文件,java文件是用来运行这个程序的,除此之外,里边还包含了java源生的API,java.lang.integer在rt的jar包里边【可以在项目中看到】,通过rt这个jar包来调用我们的这些io流写入写出等
JDK有以下三种版本:
J2SE,standard edition,标准版,是我们通常用的一个版本
J2EE,enterpsise edtion,企业版,使用这种JDK开发J2EE应用程序
J2ME,micro edtion,主要用于移动设备、嵌入式设备上的java应用程序 Jre【Java Runtime Enviromental】是java运行时环境,那么所谓的java运行时环境,就是为了保证java程序能够运行时,所必备的一基础环境,也就是它只是保证java程序运行的,不能用来开发,而jdk才是用来开发的,所有的Java程序都要在JRE下才能运行。
包括JVM和JAVA核心类库和支持文件。与JDK相比,它不包含开发工具——编译器、调试器和其它工具。
Jre里边包含jvm Jvm:【Java Virtual Mechinal】因为jre是java运行时环境,java运行靠什么运行,而底层就是依赖于jvm,即java虚拟机,java虚拟机用来加载类文件,java中之所以有跨平台的作用,就是因为我们的jvm
关系:
J2se是基于jdk和jre,
JDK是整个JAVA的核心里边包含了jre, Jre里边包含jvm
四十、报错的状态码: 301 永久重定向 302 临时重定向 304 服务端 未改变 403 访问无权限 200 正常 404 路径
500 内部错误
四十一、协议以及默认的端口号
17
ftp 21 文件传输协议
Pop3 110 它是因特网
四十二、抽象类与接口的区别
1.一个类只能进行单继承,但可以实现多个接口。
2.有抽象方法的类一定是抽象类,但是抽象类里面不一定有抽象方法; 接口里面所有的方法的默认修饰符为public abstract,接口里的成员变 量默认的修饰符为 pulbic static final。
关系
接口和接口 继承
接口和抽象类 抽象类实现接口 类和抽象类 类继承抽象类 类和类 继承 四十三、修饰符的作用
修饰符的作用范围:
private default protected public
同一个类中 可以 可以 可以 可以 同一个包的类中 可以 可以 可以 不同包的子类中 可以 可以 不同包的类中 可以
四十四、onready和onload的区别 1.onready比onload先执行
2.onready是在页面解析完成之后执行,而onload是在页面所有元素加载后执行 3.onload只执行最后一个而onready可以执行多个。 参考:
1.执行时间 window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行。 $(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕。 2.编写个数不同 window.onload不能同时编写多个,如果有多个window.onload方法,只会执行一个 $(document).ready()可以同时编写多个,并且都可以得到执行 3.简化写法 window.onload没有简化写法 $(document).ready(function(){})可以简写成$(function(){});
18
另外,需要注意一点,由于在$(document).ready() 方法内注册的事件,只要DOM 就绪就会被执行,因此可能此时元素的关联文件未下载完。例如与图片有关的html 下载完毕,并且已经解析为DOM 树了,但很有可能图片还没有加载完毕,所以例如图片的高度和宽度这样的属性此时不一定有效。要解决这个问题,可以使用Jquery 中另一个关于页面加载的方法---load() 方法。Load() 方法会在元素的onload 事件中绑定一个处理函数。如果处理函数绑定给window 对象,则会在所有内容( 包括窗口、框架、对象和图像等) 加载完毕后触发,如果处理函数绑定在元素上,则会在元素的内容加载完毕后触发。 Jquery 代码如下: $(window).load(function (){ // 编写代码 });等价于JavaScript 中的以下代码 Window.onload = function (){ // 编写代码 } 四十五、switch默认接受的几种数据类型
Short, int, byte, char
四十六、request 跟session的区别 1.他们的生命周期不同, request对应的是一次请求, session对应的是一次会话
2.request占用资源比较少,相对来说缺乏持续性,
而session资源消耗比较大,所以通常使用request来保存信息 四十七、找到解决svn冲突方法
对于svn冲突,可以采用手工处理将冲突的部分进行整合, 之后备份最新整合后的文件,采用覆盖更新的方式处理完 冲突之后,再把最新整合后的文件进行提交。
19
四十八、反射的描述
通过字符串可以动态创建java对象,并且可以动态访问方法, 属性等。
我们在项目中的时候封装过数据库jdbc的持久层, 其中就利用反射这项 技术来达到通用 和灵活的目的。
框架篇
一、Struts1的运行原理
在启动时通过前端总控制器ActionServlet加载struts-config.xml并进行解析,当用户在jsp页面发送请求被struts1的核心控制器ActionServlet接收,ActionServlet在用户请求时将请求参数放到对应的ActionForm对象中的成员变量中,然后ActionServlet则会根据struts-config.xml中的映射关系找到相应的Action中的方法,将对应的ActionForm一并传给这个Action中的方法里,然后执行相应的业务逻辑操作,最后就根据ActionMapping的findforward方法返回一个ActionForward,之后在struts-config.xml中找到与之对应的forward标签,根据它的配置路径找到对应的jsp页面。 二、Struts2的运行原理
1、tomcat 启动的时候会加载 web.xml 、核心控制器 FilterDispatcher 会加载并解析 struts.xml
2、客户端会发送一个请求到 action 、FilterDispatcher 会根据后缀名进行拦截
3、FilterDispatcher根据 struts.xml 的配置文件信息 找到 某个action 对应的某个类里的指定方法
4、执行相关的业务逻辑最后返回 一个String 5、 里配置
三、struts2的体系结构
1、客户端向Servlet容器(例如Tomcat)发送一个请求; 2、这个请求经过一系列的过滤器(Filter);
3、接着FilterDispatcher被调用,FilterDispatcher询问ActionMapper来决定这个请求是否需要调用某个Action;
20
正在阅读:
于笑扬java综合知识点总结 必背12-01
高考专业选择:我出版学.doc04-07
翻译实践译文 - 图文05-12
15秋福师《国家税收》在线作业二 答案12-05
2014年上海公务员考试第三批拟录用名单07-01
校运动会广播稿50字01-07
30.文成公主进藏(完美版)07-26
印刷过程中基于ICC的色彩管理实施方法08-20
安慰人的话02-10
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 知识点
- 总结
- 综合
- 于笑扬
- java
- 2019届高考语文一轮复习专项提升训练:图文转换(徽标)
- SC-D228中文液晶一体化PLC使用手册
- 铣床分度头尾座设计说明书-草稿 - 图文
- 规范的议论性语段
- 山西省太原市高中数学竞赛解题策略-几何分册第23章角元形式的梅涅劳斯定理
- 新目标英语八年级上期末试卷
- excel典型试题操作步骤
- 碗扣式钢管支撑系统验收表
- 高考定积分练习题
- 2019届高考化学一轮复习 专题十四 原电池题组精练
- 超星尔雅2016个人理财规划作业考试全
- 浅论奥尔贡的人物形象
- 日语常用外来语分类整理
- 趣味数学校本教程(一年级下册)
- GC的1875 很全 - 图文
- 激励策略与有效英语教学
- “十三五”重点项目-西替利嗪盐酸盐项目可行性研究报告 - 图文
- 教育研究方法文献综述
- 口腔组织病理学(A1型题4)
- 九年级物理上册1.1分子动理论教案新版教科版