当前位置: 首页 > news >正文

安卓市场网站建设网站管理系统改不了的

安卓市场网站建设,网站管理系统改不了的,搜索引擎在网站建设中的重要性,工业设计网站设计上一篇#xff1a;开发者导航#xff1a;Struts2学习笔记第2天-CSDN博客 1 多个struts配置文件 多个struts配置文件的用途是为了模块开发和减少开发中的冲突 减少开发中的冲突 模块开发 只有一个struts.xml的配置 多个struts的文件开发 struts.xml struts-order.xml: 2 …上一篇开发者导航Struts2学习笔记第2天-CSDN博客 1 多个struts配置文件 多个struts配置文件的用途是为了模块开发和减少开发中的冲突 减少开发中的冲突 模块开发 只有一个struts.xml的配置 多个struts的文件开发 struts.xml struts-order.xml: 2 Action接收请求参数的方式 我们以一个简单的登录案例来讲解 2.1 通过以前的Servlet来获取 login.jsp UserAction Struts.xml 2.2 通过Action的属性的set方法注入 struts会通过表单字段的名称调用set方法比如username字段会调用setUsername UserAction 2.3 通过Action的属性的set模型的形式注入 User.java模型:提供属性的get/set方法 UserAction.java 把参数封装到一个User模型中然后Action提供模型的get/set方法 Index.jsp 补充讲解下面set/get方法打印顺序的原因 先获取user对象如果没有创建一User对象注入进去 2.4通Action模型驱动封装参数 index.jsp UserAction.java 2.5 参数注入的原理 参数会自动注入是因为有两个拦截器在工作查看struts-default.xml源码可以看到下面两个拦截器interceptor nameparams classcom.opensymphony.xwork2.interceptor.ParametersInterceptor/interceptor namemodelDriven classcom.opensymphony.xwork2.interceptor.ModelDrivenInterceptor/ 修改包下的拦截器 ModelDrivenInterceptor源码 2.6 静态参数注入【少用】 struts学可以通过在action中静态注入参数然后在Action提交属性注入这种是静态流入参数写死 3 用户注册案例 表现层web 第一步在mysql中添加一个struts2_day3数据库把db.sql的表创建下 注数据库需要utf-8编码的才可以存储中文 第二步将资料中db文件夹的jar导入到项目工程中 这里的数据源使用DBCPDataBase Connection Pool 是apache公司实现的一个开源的数据源。 第三步将资料中db文件夹的dbcpconfig.properties导入src项目下 第四步将DBCPUtil.java写好的导入在项目中 第五步写webcontent中写个注册页面 第六步写个UserAction使用模型驱动来接收参数 User.java UserAction.java 第七步配置struts.xml 持久层dao和Service层 UserDao实现类 UserService实现类 UserAction 的register方法修改 struts自定义参数类型转换 前面的多个爱好请求参数struts框架会自动进行字符串的拼接如拼接成【泡妞, 写代码, 买房子】是以逗号空格类型来拼接的 提交生日时是以2017-08-09的格式提交的struts也会把字符串转成Date类型这些都是struts做的类型转换 但是如果提交的08/09/2017,struts就会报错【错误的日期表达】 struts有很多类型转换器 struts的字符串类型转换是由com.opensymphony.xwork2.conversion.impl.StringConverter类来完成的 日期类型转换是由com.opensymphony.xwork2.conversion.impl.DateConverter来完成  源码分析得出如果要自己写一个类型转换 可以实现DefaultTypeConverter抽象类我们一般也可以用它的子类StrutsTypeConverter来实现 自定义日期类型转换步骤 第一步写一个类继承StrutsTypeConverter,并实现抽象方法 第二步实现两个抽象方法的逻辑 第三步配置局部类型转换器 在模型pojo的包下配置【模型名字-conversion.properties】的一个文件内容如下 第四步测试自定义日期是否生效 第五步配置全部类型转换器 在类的根路径配置一个xwork-conversion.properties文件key为数据类型全类名value为类型转换器的全类名 struts的错误回显 前提将前面用户注册案例的时间转化时抛出运行时异常 注册时将日期写错格式会得到下面的一个结果result input表示需要一个回显页面也就是发生异常时的显示页面 在struts.xmp中配置回显页面 在register.jsp中添加struts的标签 回显效果 struts的form表单标签 struts的from标签提供了和原始html表单几乎一至的属性 属性 Action    请求地址。直接写动作名称不用写contextPathmethod    请求方式默认的是post请求可以不用写enctype    静音编码的MIME类型 案例将前面的用户注册案例改成struts的表单标签来显示 register2.jsp代码 strtus的错误处理和中文显示 struts标签如果有字段错误会回显信息 设置回显信息为红色 添加个s:head标签即可 效果 设置回显信息中文化 在模型的包中添加一个模型properties配置key value key格式为下面的invalid.fieldvalue.字段名 效果  struts的表单数据验证方式 1 服务端Action验证 有两种方法如果图 效果 2 xml声明式验证 全局声明方式 在action包中声明UserAction-validation.xml文件这种方式配置是全局配置所有action的方法都会拦截验证如果其它方法不想验证可配置SkipValidation注解dtd约束可以在xwork-core的jar包中找 struts默认有很多种验证器类型声明在default.xml中 注意default.xml的位置 演示密码不能大于6的配置 局部声明方式 在action包中声明UserAction-register-validation.xml文件 声明方式 【Action类名-方法名-validation.xml】xml内容与上面的一样 3 验证器案例综合 Add.Jsp页面 student模型 public class Student {private String username;//不能为空去空字符串private int age;//18~100private String email;//正确邮箱格式private String password;//3~8private String repassword;//与密码一至private int score;//必须是自然数private String url;//必须是一个路径private String gender;//性别只有男和女 Action   Struts.xml   StudentAction-add-validation.xml validators!--1.  private String username;//不能为空去空字符串requiredstring 比 required 好一点会自动去除空格--validator typerequiredstringparam namefieldNameusername/parammessage用户名不能为空/message/validator!--2.private int age;//18~100 1.表单的类型会根据模型的属性类型去校验--validator typeintparam namefieldNameage/paramparam namemin18/paramparam namemax100/parammessage年龄必须在18~100/message/validator!-- 3.private String email;//正确邮箱格式--validator typerequiredstringparam namefieldNameemail/parammessage邮箱不能为空/message/validatorvalidator typeemailparam namefieldNameemail/parammessage邮箱格式不正确/message/validator!--4. private String password;//3~8 --validator typerequiredstringparam namefieldNamepassword/parammessage密码不能为空/message/validatorvalidator typestringlengthparam namefieldNamepassword/paramparam nameminLength3/paramparam namemaxLength8/parammessage密码长度为3~8/message/validator!-- 5.private String repassword;//与密码一至 --validator typeexpressionparam nameexpression![CDATA[ password repassword]]/parammessage密码不一至/message/validator!-- 6.private int score;//必须是自然数regex :正则--!-- validator typeregexparam namefieldNamescore/paramparam nameregexExpression\d/parammessage分数必须要数字/message/validator --!--     private String url;//必须是一个路径 http:// --validator typeurlparam namefieldNameurl/parammessageURL格式不合法以 http://开头/message/validator!--     private String gender;//性别必填只有男和女 --validator typerequiredparam namefieldNamegender/parammessage性别必选/message/validator /validators
http://www.hkea.cn/news/14373226/

相关文章:

  • 唐山建设厅官方网站python做网站 知乎
  • 涿州网站建设涿州wordpress 整合论坛
  • ip代理提取网站源码怎么做一个门户网站
  • 深圳网站公司制作建设建材网站的目的
  • 设计网站公司湖南岚鸿公司盘锦如何做百度的网站
  • 韩国网站后缀如何把本地网站
  • 长沙网站优化效果哪些网站是做包装的
  • 合肥哪家制作网站wordpress洛米主题
  • 最好的网站开发语言营销网站竞品分析报告
  • 电子商务网站开发主要有哪些上饶做网站哪家好哦
  • 为什么没人做物流网站峡江网站建设
  • 网站懒加载怎么做皇马logo做网站
  • 网站怎么做双语种wordpress 怎么登陆后台
  • 个人网站能做什么周口市网站建设
  • 论文网站建设方案电商网站seo怎么做
  • 网站模板破解下载做网站的好处在哪里
  • 做暧嗳xo小视频网站wordpress登录密码重置
  • 如何变更网站备案信息查询湖北网站建设怎样
  • 打开部分网站很慢微信开发 微网站开发的详细流程
  • 哪些公司做外贸网站好北京66中网站做的不怎么样呀
  • 自己怎么创建免费网站做网站和开发app有什么不同
  • 爱网站官网网站建设马鞍山
  • aspcms网站wordpress代言宝插件
  • 万网云服务器网站上线拼多多怎么查商品排名
  • 受欢迎的唐山网站建设h5游戏平台代理
  • 深圳网站设计公司怎么做wordpress 增加 推荐
  • 做个网站页面多钱音乐网站建立
  • 有没有专门做游戏人物的绅士视频网站免费网站正能量app应用大全
  • 软装设计素材网站武邑县网站建设
  • 兰州网站建设托管微盟集团是干什么的