-
struts2接收前端数据需要注意:表单中需要传到后端的标签的name值要和后端PO中的属性保持一致,否则会出现nullPonintExecption异常。
查看全部 -
url后缀的定制:
在struts.xml的包外面配置常量<constant name="struts.action.extension" value="指定扩展名"></constant>
在struts.propertios文件中配置struts.action.extension=指定的扩展名1,指定扩展名2,。。。(可以配置多个)
在web.xml中配置strutsPreparedAndExecuteFilter时初始参数配置<init-param><param-name>struts.action.extension</param-name><param-value>指定扩展名</param-value></init-param>
查看全部 -
默认action:为了提升体验度和网站的正常运行配置默认action。当遇到突发状况时均有默认action来撑场面。
<default-action-ref name="name"></default-action-ref>
在名为name的action中配置后台action和前端展示
查看全部 -
动态方法调用:通常状况下,每个struts能够处理的url都对应一个action中的方法,为了人为的减少struts.xml文件的大小(减少重复代码的编写),采用动态方法的调用。
在配置action时指明method属性,此属性指向该action中的某个具体方法。
在struts.xml配置常量<constant name="struts.enable.DynamicMehtodInvocation" value="true"></contant>开启异步方法调用,后台action方法结束时返回指定视图名字符串,在配置时指定字符穿对应上指定视图,在访问该action时url后面加感叹后和指定方法名。
使用通配符(占位符)占位符指代的内容可以从访问的url中获取(需要前后端开发联系紧密)。
查看全部 -
struts2寻址:子包》》package配置的namespace指定包
查看全部 -
servlet API
HttpServletRequest
HttpServletResponse
ServletContent
JSP的内置对象:
1.request:javax.servlet.httpServletRequest类型,代表客户端的请求信息,用于接收通过htt协议传送到服务器 的的数据,作用域为一次请求。
2. respose:javax.servlet.httpServletResponse类型,代表服务器端的响应,用于将服务器端的响应信息传到客户端。作用域是当前jsp页面。
3. application:可将数据保存到服务器端,服务器不停,application中保存的数据都有效,作用域在整个应用程序中都有效(保存数据后不关服务器)。
4. session:服务器端自动创建的与客户请求数据相关的对象,服务器为每个用户创建一个session对象,用于保存该用户的基本信息和操作信息状态。通常session有默认的有效时长,session保存数据是以key-value形式保存,value可以是对象。
5. out:输出流,用于向浏览器输出+管理服务器上的输出缓冲区。
6. pageContext:由web容器创建和初始化,其他对象要通过操作此对象获得,在jsp中可以直接操作该对象。此对象可以获取页面操作需要的所有以存在的参数信息。
7. config:获取服务器的配置信息,该对象通过pageContext.getServletcConfig()方法获取,web容器在启动后,也是通过config对象将配置信息传递给servlet。
8. page:jsp本身,只有在jsp页面内有效,相当与java代码中的this
9. exception:显示异常信息,在当前jsp页面中要设置isErrorPage="true"才可以正常使用,正常异常可能出现的地方均有try{}catch(){}出现,若出现的异常没有被捕获,则页面会产生exception对象,并将这个异常对象传递到page指令设定的异常页面,有异常页面处理这个异常对象。
传统的MVC模式的web项目是由servlet(doGet().doPost(),参数是HttpServletRequest(携带请求参数),HttpServletResponse(携带服务器响应参数),访问周期是由servlet的声明周期决定的 )和前端的jsp实现的,
查看全部 -
struts.xml dtd约束使用理解(个人理解--仅供参考)
<include file="strutsn.xml"></include>:把较大的struts.xml配置文件切割成业务功能相近的struts.xml配置文件(注意在分割成的每个配置文中保证字符集的一致性)
<package name="unique"></package>在一个struts.xml文件中可以有多个package标签出现,但name一定是唯一的,package可以被继承(可以扩展),值得注意的是声明为抽象的package中不能声明action,namespace属性用于指定请求该package下url的一部分,package可以定义拦截器 aciton
<global-result name="">/shitu.jsp</global>全局结果,在此package的所有的action都可以使用,action通过返回global-result标签中name指定的字符串来调用该视图。
<param name="key">value</param>在该包下的action中可以通过get(“key”)来获取到配置文件中该key对应的value值。
查看全部 -
struts2的核心文件:
web.xml文件(只要是web项目使用框架和一些预处理,都需要在此文件中配置)
struts.xml 在actionProxy创建action实例时有ConfirurationManage读取调用(aciton的映射)action和url的对应 +(aciton对应result的配置)action和视图的对应+拦截器的配置。
struts.properties 自动加载,以key-value形式配置常用的参数,可以在struts.xml中通过<contrants></contrants>标签取代
查看全部 -
struts2的工作原理(个人理解--仅作参考)
web项目使用到框架都要在web.xml配置框架的核心入口(web项目启动时首先加载的是这个文件)
Struts2相当于一个控制器(通过过滤器实现,过滤器的执行和在代码中调用的顺序正相关,struts2在不断完善时考虑到各类需求和问题,针对其核心过滤器在不断完善 )用户发送请求(发送的请求要满足tcp/ip协议,请求通过自身携带的url需要服务器资源),Struts2利用url的个性来决定是否处理用户请求,满足struts2处理的请求url很多,但struts2实际处理的请求需要满足用户请求服务器资源的url对应有action来寻找指定的资源 。
请求url有对应的acion处理时的流程:struts2内部actionProxy(代理)使用配置文件管理来查看struts.xml文件,找到指定的action类的全路径,acitonProxy实例化一个aciton,此实例处理请求寻找服务器资源。
当action处理完请求时,返回一个变量(此变量对应视图),用户能够轻易看懂的需要的资源展示。此视图通过HttpServletRespons到达用户浏览器,浏览器解析后展示给用户。
查看全部 -
Struts2处理流程
查看全部 -
Action搜索顺序
查看全部 -
web.xml的作用
查看全部 -
struts2工作原理
查看全部 -
下载官网
查看全部
举报