韩顺平struts笔记_第1页
韩顺平struts笔记_第2页
韩顺平struts笔记_第3页
韩顺平struts笔记_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Struts视频笔记:Struts是一个开源的陀b框架,框架提高了程序的规范的同时也约束了程序员的自由为什么会有struts:因为我们队mvc理解的不同,可能造成不同公司写程序的时候规范不统一 这样不利于程序的维 护和扩展,所以我们有必要用一个统一的规范来开发项目(stmts)Struts的好处:程序更加规范化开发效率提高了,可读性增加了,程序的可维护性增加了运行原理:一个请求从浏览器发送给w c b服务器,web服务器首先解析主机 然后解析昶b应用的名称 在解析出资源名 转发给总司令ActionServlet(该类由struts框架提供给我们的无需编写,只 需配置)ActionServlet

2、有一个文件,该文件配置了表单actionForm(军火库)还配置了action, 以及他们之间的对应关系当ActionServlet到命令后它会查询文件去填充数据,把用户的数 据填充到表单里边.下个动作就是去调用指定的action (/h队长),action去从表单中读取数 据,调用某个model (士兵,如service)完成任务,完成任务把结果返回给ActionServlet总司 令(返回一个执行的结果)一总司令又去查询文件决定跳转到哪个jsp页面.返回一个执行 结果(形成静态html文件)直接返回给web服务器 服务器再把靜态页面以h ttp响应给浏览器,登录小项目过程步骤:新建w c

3、b工程 导入struts包 编写 编写actionForm和action 配置编写和配置测试中的中的scope指的是actionform的生命周期范围struts中的scope默认是 session配置过滤器public class MyFiIter extends HttpServlet implements FiIter Overridepublic void doFiIter(ServletRequest argO, ServletResponse argl, FilterChain arg2) throws IOException. ServletException Cgb2312j;

4、(ngb2312n);(argO, argl):配置MyFilter MyFi1ter/*上面这次比较浪费资源每次都要去实例化 但是下面这种过滤器不太彻底往数据库里插入数据 时还是会经常出现乱码public class MyFiIter extends HttpServlet implements FiIter private String encoding;public void doFiIter(ServletRequest argO, ServletResponse argl, FilterChain arg2) throws IOException, ServletException

5、ction写一个关于安全性的过滤器,用于过滤一些用户注册使用的关键字 private String keywords:public void doFiIter(ServletRequest argO, ServletResponse arglt Fi1 terChain arg2) throws IOException, ServletException String username=(nusernamen);this is safe filter !);if(username!-nu11) for (String key:keywords)if(username)(Merrw. usern

6、ame+u被第二个管理安全的过滤器拦截厂);(w/WEB-INF/forward(argO. argl);return ;)(argO, argl);public void init(FilterConfig argO) throws ServletException keywords=(nkeywords) split(w;);)然后在配置过滤器还有设置要过滤的关键字keywordsxiaomao;xi aoxiao每个action是单态的包括actionserver,对网站并发性有影响 若要证明的话在*中声明一个 靜态变量,每次访问自加什么是单态:单态是指在整个运行过程中,始终是一个对象;

7、默认放在WEB-INF目录下也可以放到其他地方只需要在中的?con f i g /WEB-INF/ 有多个只需用号隔开java中插入数据库的语句需要注意标点(rr insert into user (username f password) 问luesJ;jstl (jsp startand tag liblaiy) jsp标准标签库:可以提高开发速度代码简洁升级jsp 页面 !DOCTYPE HTML PUBLIC w-oString();escapeXml表不是否安装html样式显不默认是true:表不以文本显不如何输出request, session,application, pageC

8、ontext域对象的数据 %(hello, request你好!n):(hello, session你好!);(hello, application你好”);(hello.HpageContext你们百度);%这里有个优先级的问题,pageContextrequestsessionappl ication 如果是在同一个页面,那么这段代码输出pageContext你们好百度 | 相当于(User) (usern). getUsername();:移除之后中国北京将不再显示:catch var= Nerrc:if test=$2ok:,); %判断字符串:hello判断数值12 and age3

9、0 or age=22年龄大于12小于30 $age %)?rrayList al-new ArrayList():User ul=new User():C陈超”);(MtigerH);User u2=new User ():(system);(mH manager );(ul):(u2):)(Hluserjal);%$ 第一种迭代$i : ; 第二种迭代S i ; ; 用 于分 隔字符 :$temp什么时候用$符,什么时候不用$如果是从某个域对象中取出值取的是一个变量就要用$,取的是一个固定的值就不要$ 第一种:();这种方式比较慢第二种:应用名 /goMan

10、agerpageNow= ” +pageNowl H 前 一 页:当 前 页 :$i c: if test=1$pageNowpageCount 后一页:当前页$ pageNow /总页数 $ pageCount 跳转到0) (bytes,0t len);/读一点写一点return (loginok”); catch (FileNotFoundException e) 0; catch (IOException e) (0;Jfinallytry 0; catch (IOException e) 0;return (loginerr*);注意事项:如果文件名是中文怎么办做一个过滤器CUTF-8”);(UTF-8);(argO, argl):案例:保存到数据库中Create database userdb2;Use userdb2;Create table t_users(username varchar(30) unique not null, myphoto varchar (128) not nullt#保存新的文件名 myphoto2 varchar(128) n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论